Skip to main content

Order vol free

_SECTION_BEGIN("Ord Volume");

ZigPercent = Param( "Percent of Change for Zig", 4.6, 0, 50, 0.1 );
ZigUpColor = ParamColor( "Up Color", colorDarkBlue );
ZigDownColor = ParamColor( "Down Color", colorViolet );
ZerRedVol = Param( "Zeros to Reduce from Volume", 3, 0, 8, 1 );
SwingXoffset = Param( "Swing X Position", 3, -10, 30, 1 );
SwingYoffset = Param( "Swing Y Position", 1, 0, 30, 0.2 );
Color_LVT = ParamColor( "Leg Volume Text Color", colorWhite );
Color_LPTS = ParamColor( "Leg % Text Color Simple", colorGrey50 );
Color_LPTH = ParamColor( "Leg % Text Color Highlighted", colorBlack );
Color_LPBH = ParamColor( "Leg % Background Highlighted", colorYellow );
LegYoffset = Param( "Leg Y Position", 1.5, 0, 10, 0.1 );

RedVol = IIf( ZerRedVol == 0, 1, 
IIf( ZerRedVol == 1, 10,
IIf( ZerRedVol == 2, 100,
IIf( ZerRedVol == 3, 1000,
IIf( ZerRedVol == 4, 10000,
IIf( ZerRedVol == 5, 100000,
IIf( ZerRedVol == 6, 1000000,
IIf( ZerRedVol == 7, 10000000,
IIf( ZerRedVol == 8, 100000000,
Null )))))))));

SimpleZigzag = Zig( C, ZigPercent );
HoL = IIf( SimpleZigzag > Ref(SimpleZigzag,-1), H, L );
bc = BarCount - 1 ;

MyZig = Zig( HoL, ZigPercent );
MyZig_Up = MyZig > Ref( MyZig, -1);
MyZig_Down = MyZig < Ref( MyZig, -1);
LastLegMid_Y_Point = IIf( MyZig_Down, Peak( HoL, ZigPercent ) - ( (Peak( HoL, ZigPercent ) - L) / 2 ) ,
H - ( (H - Trough( HoL, ZigPercent )) / 2 ) );

PeakDef = ( MyZig > Ref(MyZig,-1) ) AND ( MyZig > Ref(MyZig,1) );
Peak1Vol = ValueWhen( PeakDef, V,1 );
Peak2Vol = ValueWhen( PeakDef, V,2 );
PeaksVolPerc = ( 100 * ( Peak1Vol - Peak2Vol ) / Peak2Vol );

TrouDef = ( MyZig < Ref(MyZig,-1) ) AND ( MyZig < Ref(MyZig,1) );
Trou1Vol = ValueWhen( TrouDef, V, 1 );
Trou2Vol = ValueWhen( TrouDef, V, 2 );
TrousVolPerc = ( 100 * ( Trou1Vol - Trou2Vol ) / Trou2Vol ); 

LastBarVolPerc = IIf( MyZig_Up,
( 100 * ( V - Peak1Vol ) / Peak1Vol ),
( 100 * ( V - Trou1Vol ) / Trou1Vol ) );

P1 = PeakBars (HoL, ZigPercent, 1) ;
T1 = TroughBars (HoL, ZigPercent, 1) ;
P2 = PeakBars (HoL, ZigPercent, 2) ;
T2 = TroughBars (HoL, ZigPercent, 2) ;
P1m1 = PeakBars (HoL, ZigPercent, 1) +1 ;
T1m1 = TroughBars (HoL, ZigPercent, 1) +1 ;
P2m1 = PeakBars (HoL, ZigPercent, 2) +1 ;
T2m1 = TroughBars (HoL, ZigPercent, 2) +1 ;

/* Last Leg */
LastLegBars = IIf( MyZig_Down, P1m1 , T1m1 );
LastLegVolAccum = IIf( MyZig_Down, Sum( V, P1m1 ) , Sum( V, T1m1) );
LastLegVolAVE = LastLegVolAccum / LastLegBars ;

/* Previous Leg */
PrevLegBars = IIf( MyZig_Down, (T2m1) - P1 , (P2m1) - T1 );
PrevLegVolAccum = IIf( MyZig_Down, Sum( V, (T2m1)) - Sum( V, P1 ) , Sum( V, (P2m1)) - Sum( V, T1 ) );
PrevLegVolAVE = PrevLegVolAccum / PrevLegBars ;
VolAVEChange1 = (LastLegVolAVE - PrevLegVolAVE) / PrevLegVolAVE * 100 ;

PrevLegBarsInc = IIf( MyZig_Down, (T1m1) - P1 , (P1m1) - T1 );
PrevLegVolAccumInc = IIf( MyZig_Down, Sum( V, (T1m1)) - Sum( V, P1 ) , Sum( V, (P1m1)) - Sum( V, T1 ) );
PrevLegVolAVEInc = PrevLegVolAccumInc / PrevLegBarsInc ;
VolAVEChange1Inc = (LastLegVolAVE - PrevLegVolAVEInc) / PrevLegVolAVEInc * 100 ;

/* Previous Previous Leg */
PrPrLegBars = IIf( MyZig_Down, (P2m1) - T2 , (T2m1) - P2 );
PrPrLegVolAccum = IIf( MyZig_Down, Sum( V, (P2m1)) - Sum( V, T2 ) , Sum( V, (T2m1)) - Sum( V, P2 ) );
PrPrLegVolAVE = PrPrLegVolAccum / PrPrLegBars ;
VolAVEChange2 = (LastLegVolAVE - PrPrLegVolAVE) / PrPrLegVolAVE * 100 ;

PrPrLegBarsInc = IIf( MyZig_Down, (P2m1) - T1 , (T2m1) - P1 );
PrPrLegVolAccumInc = IIf( MyZig_Down, Sum( V, (P2m1)) - Sum( V, T1 ) , Sum( V, (T2m1)) - Sum( V, P1 ) );
PrPrLegVolAVEInc = PrPrLegVolAccumInc / PrPrLegBarsInc ;
VolAVEChange2Inc = (LastLegVolAVE - PrPrLegVolAVEInc) / PrPrLegVolAVEInc * 100 ;

IIf( BarCount == LastValue( BarCount ), /////////// Incomplete Leg ---------=======
PlotText( "" + NumToStr( LastLegVolAVE[bc]/RedVol, 1.0), 
BarCount - (LastLegBars[bc]/2) , 
LastLegMid_Y_Point[bc], 
colorYellow ),
Null );
IIf( BarCount == LastValue( BarCount ), 
PlotText( "" + NumToStr( VolAVEChange1Inc[bc], 1.0) + "%", 
BarCount - (LastLegBars[bc]/2) , 
LastLegMid_Y_Point[bc] * ( 1 - (LegYoffset/100) ),
IIf( VolAVEChange1Inc[bc] <= -40, Color_LPTH, Color_LPTS ),
IIf( VolAVEChange1Inc[bc] <= -40, Color_LPBH, Null ) ),
Null );
IIf( BarCount == LastValue( BarCount ), 
PlotText( "" + NumToStr( VolAVEChange2Inc[bc], 1.0) + "%", 
BarCount - (LastLegBars[bc]/2) , 
LastLegMid_Y_Point[bc] * ( 1 - (2*LegYoffset/100) ),
IIf( VolAVEChange2Inc[bc] <= -40, Color_LPTH, Color_LPTS ),
IIf( VolAVEChange2Inc[bc] <= -40, Color_LPBH, Null ) ),
Null );
IIf( BarCount == LastValue( BarCount ), 
PlotText( NumToStr( LastBarVolPerc[bc], 1.0 ) + "%",
BarCount, 
IIf( MyZig_Up[bc], H[bc]*(1+(SwingYoffset/100)), 
L[bc]*(1-(SwingYoffset/100)) ),
IIf( LastBarVolPerc[bc] <= -8, colorWhite, colorGrey50 ),
IIf( LastBarVolPerc[bc] <= -8, colorRed, Null ) ),
Null );

for( i = 0; i < BarCount; i++ ) /////////// Legs ---------=================
{
if( PeakDef[i] OR TrouDef[i] )
PlotText( "" + NumToStr( LastLegVolAVE[i]/RedVol, 1.0) + " ",
i - (LastLegBars[i]/2),
LastLegMid_Y_Point[i],
Color_LVT
);
if( PeakDef[i] OR TrouDef[i] )
PlotText( "" + NumToStr( VolAVEChange1[i], 1.0) + "%",
i - (LastLegBars[i]/2),
LastLegMid_Y_Point[i] * ( 1 - (LegYoffset/100) ),
IIf( VolAVEChange1[i] <= -40, Color_LPTH, Color_LPTS ),
IIf( VolAVEChange1[i] <= -40, Color_LPBH, Null ) 
);
if( PeakDef[i] OR TrouDef[i] )
PlotText( "" + NumToStr( VolAVEChange2[i], 1.0) + "%",
i - (LastLegBars[i]/2),
LastLegMid_Y_Point[i] * ( 1 - (2*LegYoffset/100) ),
IIf( VolAVEChange2[i] <= -40, Color_LPTH, Color_LPTS ),
IIf( VolAVEChange2[i] <= -40, Color_LPBH, Null ) 
);
}

for( i = 0; i < BarCount; i++ ) /////////// Swings ---------=================
{
if( PeakDef[i] ) PlotText( NumToStr( PeaksVolPerc[i], 1.0 ) + " %",
/*NumToStr((V[i]/RedVol),1.0) + " " + */
i-SwingXoffset, 
H[i]*(1+(SwingYoffset/100)), 
IIf( PeaksVolPerc[i] <= -8, colorWhite, colorTeal ), 
IIf( PeaksVolPerc[i] <= -8, colorRed, Null ) 
); 
if( TrouDef[i] ) PlotText( NumToStr( TrousVolPerc[i], 1.0 ) + " %",
/*NumToStr((V[i]/RedVol),1.0) + " " + */
i-SwingXoffset, 
L[i]*(1-(SwingYoffset/100)), 
IIf( TrousVolPerc[i] <= -8, colorWhite, colorRed ), 
IIf( TrousVolPerc[i] <= -8, colorDarkOliveGreen, Null ) 
); 
}

LastBarVolPerc = IIf( MyZig_Up,
( 100 * ( V - Peak1Vol ) / Peak1Vol ),
( 100 * ( V - Trou1Vol ) / Trou1Vol ) );
SwingBreakUp = H > Peak( HoL, ZigPercent );
SwingBreakDn = L < Trough( HoL, ZigPercent );

/////////////////////////////////////////////////////

Plot( MyZig, "%Change("+NumToStr(ZigPercent,1.1)+"%)", IIf( MyZig_Up, ZigUpColor, ZigDownColor ) );
Plot( Close, "Close", colorWhite, styleCandle );
Plot( MyZig + ( MyZig * 0.05 ), "", colorRed, styleNoDraw); 
Plot( MyZig - ( MyZig * 0.05), "", colorRed, styleNoDraw);
_SECTION_END();

Comments

Popular posts from this blog

ST GAP BUY SELL

 _SECTION_BEGIN("st gap buy sell"); Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() ); SetBarsRequired(sbrAll,sbrAll); xx=BarIndex();x=xx;Lx=LastValue(x); rightStrength=Optimize("R_S",Param("R_S",3,1,50,1) ,1,50,1); leftStrength=Optimize("L_S",Param("L_S",3,1,50,1), 1,50,1); function pkID(rightStrength,leftStrength) { pk=H>Ref(HHV(H,leftStrength),-1) AND H>=Ref(HHV(H,rightStrength),rightStrength); return pk; } function trID(rightStrength,leftStrength) { tr=L<Ref(LLV(L,leftStrength),-1) AND L<=Ref(LLV(L,rightStrength),rightStrength); return tr; } pk=pkID(rightStrength,leftStrength); tr=trID(rightStrength,leftStrength); SetChartBkColor(ColorRGB(0,0,0));SetChartOptions(0 ,chartShowDates); SetBarFillColor(IIf(C>O,colorGreen,IIf(C<=O,colorRed,colorLightGrey))); pkHigh1=Ref(ValueWhen(pk,H,1),-(rightStreng...

TB 100.1.1 tsf tema linear

_SECTION_BEGIN("Magnified Market Price"); //by Vidyasagar, vkunisetty@yahoo.com// SetChartOptions(0,chartShowArrows|chartShowDates); FS=Param("Font Size",30,11,100,1); GfxSelectFont("Times New Roman", FS, 700, True ); GfxSetBkMode( colorWhite ); GfxSetTextColor( ParamColor("Color",colorWhite) ); Hor=Param("Horizontal Position",750,1,1200,1); Ver=Param("Vertical Position",7,1,830,1); GfxTextOut(""+C , Hor , Ver ); YC=TimeFrameGetPrice("C",inDaily,-1); DD=Prec(C-YC,2); xx=Prec((DD/YC)*100,2); GfxSelectFont("Times New Roman", 11, 700, True ); GfxSetBkMode( colorWhite ); GfxSetTextColor(ParamColor("Color",colorWhite) ); //GfxTextOut("Open - "+O+" High - "+H+" Low - "+L+" Close - "+C, Horr , Verr-14 ); //GraphXSpace = Param("Graph Space",500,-10,500,1); _SECTION_END(); _SECTION_BEGIN("Trend Blaster V1.2"); SetChartBkColor(...

QQE LINE

function QQELine( indiValue, deltaRSIValue, smoothPeriod ) { local prevVal, prevIndi, qqeValue, indi_sum; local indi_diff, higherCond, lowerCond, result; prevVal = prevIndi = 0; qqeValue = Null; indi_sum = indiValue + deltaRSIValue; indi_diff = indiValue - deltaRSIValue; for ( i = 1; i < BarCount; i++ ) { prevVal = qqeValue[i - 1]; prevIndi = indiValue[i - 1]; higherCond = prevIndi > prevVal AND indiValue[i] > prevVal; lowerCond = prevIndi < prevVal AND indiValue[i] < prevVal; qqeValue[i] = Iif( indiValue[i] == prevVal, prevVal, Iif( lowerCond, Min( prevVal, indi_sum[i] ), Iif( higherCond, Max( prevVal, indi_diff[i] ), Iif( indiValue[i] > prevVal, indi_diff[i], indi_sum[i] ) ) ) ); } result = EMA( qqeValue, smoothPeriod );// EL XAverage is EMA return result; } // Modified Exponential Moving Average function MEMA( Price, Period ) { local smoothing, result; smoothing = 1 / Max( 1, Period ); result = AMA( Pric...