AmpStrike = Param( "Ampiezza Strike",
0.5
,
0.01
,
1000
,
0.0001
);
AmpPidi = Param( "Ampiezza Fascia Pidi",
0.22
,
0.01
,
1000
,
0.0001
);
AmpFdD = Param( "Ampiezza Frontiera della Direzione",
0.22
,
0.01
,
1000
,
0.0001
);
PlotTerzoPivot = ParamToggle("Plotta terzo Pivot","Off|On");
TimeFrameSet( inDaily );
P = ( H + L + C ) /
3
;
R1 = ( P *
2
) - L;
S1 = ( P *
2
) - H;
R2
= P + ( R1 - S1 );
S2 = P - ( R1 - S1 );
R3 =
R2
+ ( H - L );
S3 = S2 - ( H - L ) ;
FdDUp = O + AmpFdD ;
FdDDown = O - AmpFdD ;
StrikeUP = ceil( O / AmpStrike ) * AmpStrike ;
StrikeDown = floor( O / AmpStrike ) * AmpStrike ;
SogliaPidiUp = IIf( O >
Ref
( P, -
1
) ,
IIf( StrikeUP <
Ref
( R1, -
1
) ,
Ref
( R1, -
1
) , IIf( StrikeUP <
Ref
(
R2
, -
1
), StrikeUP ,
Ref
(
R2
, -
1
) ) ),
IIf( StrikeUP <
Ref
( P, -
1
) ,
Ref
( P, -
1
), IIf( StrikeUP <
Ref
( R1, -
1
), StrikeUP ,
Ref
( R1, -
1
) ) ) );
SogliaPidiDown = IIf( O <
Ref
( P, -
1
) ,
IIf( StrikeDown >
Ref
( S1, -
1
) ,
Ref
( S1, -
1
) , IIf( StrikeDown >
Ref
( S2, -
1
), StrikeDown ,
Ref
( S2, -
1
) ) ),
IIf( StrikeDown >
Ref
( P, -
1
) ,
Ref
( P, -
1
), IIf( StrikeDown >
Ref
( S1, -
1
), StrikeDown ,
Ref
( S1, -
1
) ) ) );
TimeFrameRestore();
P = TimeFrameExpand( P, inDaily );
R1 = TimeFrameExpand( R1, inDaily );
S1 = TimeFrameExpand( S1, inDaily );
R2
= TimeFrameExpand(
R2
, inDaily );
S2 = TimeFrameExpand( S2, inDaily );
R3 = TimeFrameExpand( R3, inDaily );
S3 = TimeFrameExpand( S3, inDaily );
FdDUp = TimeFrameExpand( FdDUp , inDaily, expandFirst );
FdDDown = TimeFrameExpand( FdDDown , inDaily, expandFirst );
SogliaPidiUp = TimeFrameExpand( SogliaPidiUp, inDaily, expandFirst );
SogliaPidiDown = TimeFrameExpand( SogliaPidiDown , inDaily, expandFirst );
PNRUp = SogliaPidiUp + AmpPidi ;
PNRDown = SogliaPidiDown - AmpPidi ;
P = IIf( DateNum() ==
Ref
( DateNum(),
1
), P ,
Null
);
R1 = IIf( DateNum() ==
Ref
( DateNum(),
1
), R1 ,
Null
);
S1 = IIf( DateNum() ==
Ref
( DateNum(),
1
), S1 ,
Null
);
R2
= IIf( DateNum() ==
Ref
( DateNum(),
1
),
R2
,
Null
);
S2 = IIf( DateNum() ==
Ref
( DateNum(),
1
), S2 ,
Null
);
R3 = IIf( DateNum() ==
Ref
( DateNum(),
1
), R3 ,
Null
);
S3 = IIf( DateNum() ==
Ref
( DateNum(),
1
), S3 ,
Null
);
FdDUp = IIf( DateNum() ==
Ref
( DateNum(), -
1
), FdDUp ,
Null
);
FdDDown = IIf( DateNum() ==
Ref
( DateNum(), -
1
), FdDDown ,
Null
);
SogliaPidiUp = IIf( DateNum() ==
Ref
( DateNum(), -
1
), SogliaPidiUp ,
Null
);
SogliaPidiDown = IIf( DateNum() ==
Ref
( DateNum(), -
1
), SogliaPidiDown ,
Null
);
PNRUp = IIf( DateNum() ==
Ref
( DateNum(), -
1
), PNRUp ,
Null
);
PNRDown = IIf( DateNum() ==
Ref
( DateNum(), -
1
), PNRDown ,
Null
);
Plot( FdDUp , "FdDUp", colorRed, styleDashed );
Plot( FdDDown , "FdDDown ", colorRed, styleDashed );
Plot( SogliaPidiUp , "SogliaPidiUp", colorDarkGreen, styleLine );
Plot( SogliaPidiDown , "SogliaPidiDown ", colorDarkGreen, styleLine );
Plot( PNRUp , "PNRUp", colorDarkGreen, styleLine );
Plot( PNRDown , "PNRDown", colorDarkGreen, styleLine );
Plot( P, "P", colorBlack, styleDashed );
Plot( R1, "R1", colorGrey50, styleDashed );
Plot(
R2
, "
R2
", colorGrey50, styleDashed );
Plot( S1, "S1", colorGrey50, styleDashed );
Plot( S2, "S2", colorGrey50, styleDashed );
if
( PlotTerzoPivot )
{
Plot( R3, "R3", colorGrey50, styleDashed | styleNoRescale );
Plot( S3, "S3", colorGrey50, styleDashed | styleNoRescale);
}
PlotOHLC( PNRUp , PNRUp , SogliaPidiUp , SogliaPidiUp , "", colorPink, styleCloud,
Null
,
Null
,
Null
, -
1
);
PlotOHLC( SogliaPidiDown , SogliaPidiDown , PNRDown , PNRDown , "", colorPink, styleCloud,
Null
,
Null
,
Null
, -
1
);