_SECTION_BEGIN("Chart Settings");
SetChartOptions(0,chartShowArrows|chartShowDates);
SetChartBkColor(ParamColor("Outer Panel",colorPaleBlue));
SetChartBkGradientFill(ParamColor("Upper Chart",colorBlack),ParamColor("Lower Chart",colorBlack));
_SECTION_END();
Plot(C,"P&F Chart Close",IIf( C > O, colorAqua, colorRed ),styleCandle|styleThick+styleNoLabel+stylePointAndFigure);
xx = Cum(1);
nbar = Param("nbar",5,2,50,1);
PHigh = H > Ref(HHV(H,nbar),-1) AND Ref(HHV(H,nbar),nbar) <= H;
PHighPrice = ValueWhen(PHigh,H);
PLow = L < Ref(LLV(L,nbar),-1) AND Ref(LLV(L,nbar),nbar) >= L;
PLowPrice = ValueWhen(PLow,L);
startval_L = ValueWhen(PLow,L,1);
endval_L = ValueWhen(PLow,L,0);
startbar_L = ValueWhen(PLow,xx,1);
endbar_L = ValueWhen(PLow,xx,0);
aa_L = (endval_L-startval_L)/(endbar_L-startbar_L);
bb_L = startval_L;
trendline_L = aa_L * (xx - startbar_L) + bb_L;
dtrendline_L = trendline_L - Ref(trendline_L,-1);
startval_L_extend = ValueWhen(PLow,L,2);
endval_L_extend = ValueWhen(PLow,L,1);
startbar_L_extend = ValueWhen(PLow,xx,2);
endbar_L_extend = ValueWhen(PLow,xx,1);
aa_L_extend = (endval_L_extend-startval_L_extend)/(endbar_L_extend-startbar_L_extend);
bb_L_extend = startval_L;
trendline_L_extend = aa_L_extend * (xx - startbar_L) + endval_L_extend;
dtrendline_L_extend = trendline_L_extend - Ref(trendline_L_extend,-1);
dtrendline_L_extend = IIf(PLow,Ref(dtrendline_L,-1),dtrendline_L_extend);
startval_L_extend2 = ValueWhen(PLow,L,3);
endval_L_extend2 = ValueWhen(PLow,L,2);
startbar_L_extend2 = ValueWhen(PLow,xx,3);
endbar_L_extend2 = ValueWhen(PLow,xx,2);
aa_L_extend2 = (endval_L_extend2-startval_L_extend2)/(endbar_L_extend2-startbar_L_extend2);
bb_L_extend2 = endval_L_extend2;
trendline_L_extend2 = aa_L_extend2 * (xx - endbar_L_extend2) + endval_L_extend2;
dtrendline_L_extend2 = trendline_L_extend2 - Ref(trendline_L_extend2,-1);
dtrendline_L_extend2 = IIf(PLow,Ref(dtrendline_L_extend,-1),dtrendline_L_extend2);
startval_H = ValueWhen(PHigh,H,1);
endval_H = ValueWhen(PHigh,H,0);
startbar_H = ValueWhen(PHigh,xx,1);
endbar_H = ValueWhen(PHigh,xx,0);
aa_H = (endval_H-startval_H)/(endbar_H-startbar_H);
bb_H = startval_H;
trendline_H = aa_H * (xx - startbar_H) + bb_H;
dtrendline_H = trendline_H - Ref(trendline_H,-1);
startval_H_extend = ValueWhen(PHigh,H,2);
endval_H_extend = ValueWhen(PHigh,H,1);
startbar_H_extend = ValueWhen(PHigh,xx,2);
endbar_H_extend = ValueWhen(PHigh,xx,1);
aa_H_extend = (endval_H_extend-startval_H_extend)/(endbar_H_extend-startbar_H_extend);
bb_H_extend = startval_H;
trendline_H_extend = aa_H_extend * (xx - startbar_H) + endval_H_extend;
dtrendline_H_extend = trendline_H_extend - Ref(trendline_H_extend,-1);
dtrendline_H_extend = IIf(PHigh,Ref(dtrendline_H,-1),dtrendline_H_extend);
startval_H_extend2 = ValueWhen(PHigh,H,3);
endval_H_extend2 = ValueWhen(PHigh,H,2);
startbar_H_extend2 = ValueWhen(PHigh,xx,3);
endbar_H_extend2 = ValueWhen(PHigh,xx,2);
aa_H_extend2 = (endval_H_extend2-startval_H_extend2)/(endbar_H_extend2-startbar_H_extend2);
bb_H_extend2 = endval_H_extend2;
trendline_H_extend2 = aa_H_extend2 * (xx - endbar_H_extend2) + endval_H_extend2;
dtrendline_H_extend2 = trendline_H_extend2 - Ref(trendline_H_extend2,-1);
dtrendline_H_extend2 = IIf(PHigh,Ref(dtrendline_H_extend,-1),dtrendline_H_extend2);
tld = ParamToggle("All trendlines","show|hide",1);
if (tld)
{
trendline_L = IIf(dtrendline_L > 0,trendline_L,Null);
trendline_L_extend = IIf(dtrendline_L_extend > 0,trendline_L_extend,Null);
trendline_L_extend2 = IIf(dtrendline_L_extend2 > 0,trendline_L_extend2,Null);
trendline_H = IIf(dtrendline_H < 0,trendline_H,Null);
trendline_H_extend = IIf(dtrendline_H_extend < 0,trendline_H_extend,Null);
trendline_H_extend2 = IIf(dtrendline_H_extend2 < 0,trendline_H_extend2,Null);
}
trendline_L_extend2 = IIf(BarsSince(Plow) <= nbar,trendline_L_extend2,Null);
trendline_H_extend2 = IIf(BarsSince(PHigh) <= nbar,trendline_H_extend2,Null);
GraphXSpace = 5;
SetChartOptions(0, chartShowDates);
PlotShapes(shapeUpArrow*PLow,colorYellow,0,L,-30);
PlotShapes(shapeDownArrow*PHigh,colorWhite,0,H,-30);
Plot(trendline_L, "", colorLime,styleLine|styleThick);
Plot(IIf(BarsSince(Plow) <= nbar,trendline_L_extend,Null), "", colorLightGrey, styleLine | styleThick);
Plot(IIf(BarsSince(Plow) > nbar,trendline_L_extend,Null), "",colorBrightGreen, styleLine | styleThick);
Plot(IIf(BarsSince(Plow) <= nbar,trendline_L_extend2,Null), "",colorDarkGreen, styleLine| styleThick);
Plot(trendline_H, "", colorRed,styleLine|styleThick);
Plot(IIf(BarsSince(PHigh) <= nbar,trendline_H_extend,Null), "", colorLightGrey, styleLine | styleThick);
Plot(IIf(BarsSince(PHigh) > nbar,trendline_H_extend,Null), "",colorOrange, styleLine | styleThick);
Plot(IIf(BarsSince(PHigh) <= nbar,trendline_H_extend2,Null), "",colorOrange, styleLine | styleThick);
signalFlag = ParamToggle("Possible Signals","show|hide",1);
if (signalFlag)
{
Buy = (!IsEmpty(trendline_H_extend) AND Cross(C,trendline_H_extend) AND BarsSince(PHigh) > nbar) OR
(!IsEmpty(trendline_H_extend2) AND Cross(C,trendline_H_extend2) AND !PHigh) OR
(PHigh AND C > trendline_H_extend2 AND Ref(C,-1) < Ref(trendline_H_extend,-1) AND !IsEmpty(trendline_H_extend) AND !IsEmpty(trendline_H_extend2) );
BuyPrice = C;
Short = (!IsEmpty(trendline_L_extend) AND Cross(trendline_L_extend,C) AND BarsSince(PLow) > nbar) OR
(!IsEmpty(trendline_L_extend2) AND Cross(trendline_L_extend2,C) AND !PLow) OR
(PLow AND C < trendline_L_extend2 AND Ref(C,-1) > Ref(trendline_L_extend,-1) AND !IsEmpty(trendline_L_extend) AND !IsEmpty(trendline_L_extend2));
ShortPrice = C;
Sell = 0;
Cover = 0;
_SECTION_BEGIN(" EXPLORE");
AL=(!IsEmpty(trendline_H_extend) AND Cross(C,trendline_H_extend) AND BarsSince(PHigh) > nbar) OR
(!IsEmpty(trendline_H_extend2) AND Cross(C,trendline_H_extend2) AND !PHigh) OR
(PHigh AND C > trendline_H_extend2 AND Ref(C,-1) < Ref(trendline_H_extend,-1) AND !IsEmpty(trendline_H_extend) AND !IsEmpty(trendline_H_extend2) );
BuyPrice = C;
SAT=(!IsEmpty(trendline_L_extend) AND Cross(trendline_L_extend,C) AND BarsSince(PLow) > nbar) OR
(!IsEmpty(trendline_L_extend2) AND Cross(trendline_L_extend2,C) AND !PLow) OR
(PLow AND C < trendline_L_extend2 AND Ref(C,-1) > Ref(trendline_L_extend,-1) AND !IsEmpty(trendline_L_extend) AND !IsEmpty(trendline_L_extend2));
ShortPrice = C;
AL_status=WriteIf(AL,"Alis Yap"," ");
SAT_status=WriteIf(SAT,"Satis Yap"," ");
AL_col=IIf(AL, colorDarkGreen , colorWhite);
SAT_col=IIf(SAT, colorRed,colorWhite);
Filter= AL OR SAT;
AddColumn(C, "KAPANIS", 1.2, IIf(C > Ref(C,-1),colorBlue, colorRed));
AddTextColumn(AL_status, "ALIS", 1.2, colorWhite, Al_col);
AddTextColumn(SAT_status, "SATIS", 1.2, colorWhite, SAT_col);
}
_SECTION_END();
function ALFilter( price, FP2, FP1, gain )
{
FP2 = 100/(200-FP2);
FP1 = 0.80+FP1/500;
result = price;
L0 = L1 = L2 = L3 = price;
coef = 0.5;
HH = 0.1;
LL = 0;
for ( i = 2; i < BarCount; i++ )
{
error = abs( price[i] - result[i-1] );
if ( error > HH )
{ HH = error; }
else
{ HH *= FP2; }
if ( error < LL )
{ LL = error; }
else
{ LL *= FP2; }
if ( HH != LL )
{ coef[i] = FP1*Coef[i-1]+(1-FP1)*((error - LL) / (HH - LL)); }
alpha = coef[i]*gain[i];
L0[i] = alpha*price[i] + (1 - alpha)*L0[i-1];
L1[i] = -(1 - alpha)*L0[i] + L0[i-1] + (1 - alpha)*L1[i-1];
L2[i] = -(1 - alpha)*L1[i] + L1[i-1] + (1 - alpha)*L2[i-1];
L3[i] = -(1 - alpha)*L2[i] + L2[i-1] + (1 - alpha)*L3[i-1];
result[i] = (L0[i] + 2*L1[i] + 2*L2[i] + L3[i]) / 6;
}
return result;
}
price = ParamField("Price field", 3);
FP2 = Param( "Filter Parameter 2", 99, 0, 99, 1 );
FP1 = Param( "Filter Parameter 1", 0, 0, 99, 1 );
gain = Param( "Gain Parameter", 1.0, 0.1, 2.5, 0.1 );
Plot( ALFilter(price, FP2, FP1, gain), "www.facebook.com/groups/traderszone/",colorYellow,styleLine+styleDots|styleThick );
//Here is RMO code & Exploration i'm using successfully for last few
//months on 5Min. bars for single stock futures of indian NSE.
_SECTION_BEGIN( "RMO");
SwingTrd1 = 100 * (Close - ((MA(C,2)+
MA(MA(C,2),2) +
MA(MA(MA(C,2) ,2),2) +
MA(MA(MA(MA( C,2),2),2) ,2) +
MA(MA(MA(MA( MA(C,2),2) ,2),2),2) +
MA(MA(MA(MA( MA(MA(C,2) ,2),2),2) ,2),2) +
MA(MA(MA(MA( MA(MA(MA( C,2),2),2) ,2),2),2) ,2)+
MA(MA(MA(MA( MA(MA(MA( MA(C,2),2) ,2),2),2) ,2),2),2) +
MA(MA(MA(MA( MA(MA(MA( MA(MA(C,2) ,2),2),2) ,2),2),2) , 2),2)+
MA(MA(MA(MA( MA(MA(MA( MA(MA(MA( C,2),2),2) ,2),2),2) , 2),2),2),2))
/10))/(HHV(C, 10)-LLV(C, 10));
SwingTrd2=
EMA(SwingTrd1, 30);
SwingTrd3=
EMA(SwingTrd2, 30);
RMO= EMA(SwingTrd1, 81);
Buy=Cross(SwingTrd2 ,SwingTrd3) ;
Sell=Cross(SwingTrd3,SwingTrd2) ;
Bull_Trend=EMA( SwingTrd1, 81)>0;
Bear_Trend=EMA( SwingTrd1, 81)<0;
Ribbon_kol=IIf( Bull_Trend, colorGreen, IIf(Bear_Trend, colorRed,
colorBlack)) ;
Plot(4, "ribbon", Ribbon_kol, styleOwnScale| styleArea| styleNoLabel,
-0.5,100);
Impulse_UP= EMA(SwingTrd1, 30) > 0;
Impulse_Down= EMA(SwingTrd1, 81) < 0;
bar_kol=IIf( impulse_UP, colorBlue, IIf(impulse_Down,
colorRed,IIf( Bull_Trend, colorRed, colorBlue))) ;
Plot(Close," Close",bar_kol,styleBar | styleThick );
shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
PlotShapes( shape, IIf( Buy, colorBlue, colorRed ),0, IIf( Buy, Low,
High ) );
_SECTION_END( );
//RMO EXPLORATIONS - INTRADAY
_SECTION_BEGIN( "RMO");
range = Param("Periods", 14, 2, 200, 1 );
//Plot( ADX(range), _DEFAULT_NAME(), ParamColor( "ADX color", colorBlue ), ParamStyle("ADX style", styleThick ) );
//Plot( PDI(range), "+DI", ParamColor( "+DI color", colorGreen ), ParamStyle("+DI style") );
//Plot( MDI(range), "-DI", ParamColor( "-DI color", colorRed ), ParamStyle("-DI style") );
WR_VALUE = -100 * ( HHV( H, range) - C )/( HHV( H, range ) - LLV( L, range ) );
ADX_VALUE=ADX(range);
PDI_VALUE = PDI(range);
MDI_VALUE=MDI(range);
New_Bullish = IIf(RMO > 0 AND Ref(RMO, -1) <= 0,1,0);
New_Bearish = IIf(RMO < 0 AND Ref(RMO, -1) >= 0,1,0);
New_Buy_Arrow = IIf(Cross(SwingTrd2 ,SwingTrd3) ,1,0) AND RMO >0;
New_Sell_Arrow = IIf(Cross(SwingTrd3 ,SwingTrd2) ,1,0) AND RMO <0;
New_Blue_Bar = IIf(Cross(SwingTrd2 ,0),1,0) AND RMO >0;
New_Red_Bar = IIf(Cross(0, SwingTrd2) ,1,0) AND RMO <0;
Old_Bullish = IIf(RMO > 0 AND Ref(RMO, -1) > 0,1,0);
Old_Bearish = IIf(RMO < 0 AND Ref(RMO, -1) < 0,1,0);
New_Buy_Bar = IIf(Ref(New_Buy_Arrow, -1) AND C > Ref(H,-1), 1, 0);
New_Sell_Bar = IIf(Ref(New_Sell_Arrow, -1) AND C < Ref(L,-1), 1, 0);
P_Buy = (Ref(RMO,-1) > 0) AND (Ref(New_Blue_Bar,-1) > 0);
P_Sell= (Ref(RMO,-1) < 0) AND (Ref(New_Red_Bar,-1) > 0);
CBR = RMO;
CBS2= SwingTrd2;
CBS3= SwingTrd3;
PBR = Ref(RMO,-1);
PBS2= Ref(SwingTrd2, -1);
PBS3= Ref(SwingTrd3, -1);
New3CBuy = ((CBR > 0) AND (CBS2 >0) AND (CBS2 > CBS3) AND ((PBR <= 0)
AND (PBS2 <=0) AND (PBS2 <= PBS3)));
New3CSell= ((CBR < 0) AND (CBS2 <0) AND (CBS2 < CBS3) AND ((PBR >= 0)
AND (PBS2 >=0) AND (PBS2 >= PBS3)));
New_Arrow_New_Bar_Buy = ((CBR > 0) AND (CBS2 >0) AND (CBS2 > CBS3) AND
((PBS2 <=0) AND (PBS2 <= PBS3)));
New_Arrow_New_Bar_Sell= ((CBR < 0) AND (CBS2 <0) AND (CBS2 < CBS3) AND
((PBS2 >=0) AND (PBS2 >= PBS3)));
B1=New_Buy_Bar;
S1=New_Sell_Bar;
B2=New3CBuy;
S2=New3CSell;
B3=New_Buy_Arrow;
S3=New_Sell_Arrow;
B4=New_Buy_Arrow;
S4=New_Sell_Arrow;
B5=New_Blue_Bar;
S5=New_Red_Bar;
B6=New_Bullish;
S6=New_Bearish;
Buy= (B1 OR B2 OR B3 OR B4 OR B5 OR B6) ;
Sell= (S1 OR S2 OR S3 OR S4 OR S5 OR S6);
Filter=Buy OR Sell;
SetOption("NoDefaultColumns" , True );
AddTextColumn( Name(),"Security ",1.2, colorDefault, colorDefault, 90);
AddColumn( DateTime(), "Date", formatDateTime,colorDefault, colorDefault, 100);
AddColumn(IIf( B1,66,IIf( S1,83,32) ),"New Trade Bar", formatChar, colorWhite, bkcolor =IIf(B1, colorGreen,IIf( S1,colorRed, colorDefault) ));
AddColumn(IIf( B2,66,IIf( S2,83,32) ),"New3C" , formatChar, colorWhite,bkcolor =IIf(B2, colorGreen,IIf( S2,colorRed, colorDefault) ));
AddColumn(IIf( B3,66,IIf( S3,83,32) ),"New Arrow+Bar", formatChar,colorWhite, bkcolor =IIf(B3, colorGreen,IIf( S3,colorRed, colorDefault) ));
AddColumn(IIf( B4,66,IIf( S4,83,32) ),"New Arrow", formatChar,colorWhite, bkcolor =IIf(B4, colorGreen,IIf( S4,colorRed, colorDefault) ));
AddColumn(IIf( B5,66,IIf( S5,83,32) ),"New Bar", formatChar, colorWhite,bkcolor =IIf(B5, colorGreen,IIf( S5,colorRed, colorDefault) ));
AddColumn(IIf( B6,66,IIf( S6,83,32) ),"New RMO", formatChar, colorWhite,bkcolor =IIf(B6, colorGreen,IIf( S6,colorRed, colorDefault) ));
AddColumn(ADX_VALUE,"ADX");
AddColumn(WR_VALUE,"Williams");
//bkcolor =IIf(B6, colorGreen,IIf( S6,colorRed, colorDefault) ));
//AlertIf( Buy, "SOUND C:\\Windows\ \Media\\chimes. wav", "Audio alert", 1, 1+8 );
//AlertIf( Sell, "SOUND C:\\Windows\ \Media\\ding. wav", "Audio alert", 2,1+8 );
_SECTION_END( );
_SECTION_BEGIN("Chart Settings");
SetChartOptions(0,chartShowArrows|chartShowDates);
SetChartBkColor(ParamColor("Outer Panel",colorPaleBlue));
SetChartBkGradientFill(ParamColor("Upper Chart",colorBlack),ParamColor("Lower Chart",colorBlack));
_SECTION_END();
Plot(C,"P&F Chart Close",IIf( C > O, colorAqua, colorRed ),styleCandle|styleThick+styleNoLabel+stylePointAndFigure);
xx = Cum(1);
nbar = Param("nbar",5,2,50,1);
PHigh = H > Ref(HHV(H,nbar),-1) AND Ref(HHV(H,nbar),nbar) <= H;
PHighPrice = ValueWhen(PHigh,H);
PLow = L < Ref(LLV(L,nbar),-1) AND Ref(LLV(L,nbar),nbar) >= L;
PLowPrice = ValueWhen(PLow,L);
startval_L = ValueWhen(PLow,L,1);
endval_L = ValueWhen(PLow,L,0);
startbar_L = ValueWhen(PLow,xx,1);
endbar_L = ValueWhen(PLow,xx,0);
aa_L = (endval_L-startval_L)/(endbar_L-startbar_L);
bb_L = startval_L;
trendline_L = aa_L * (xx - startbar_L) + bb_L;
dtrendline_L = trendline_L - Ref(trendline_L,-1);
startval_L_extend = ValueWhen(PLow,L,2);
endval_L_extend = ValueWhen(PLow,L,1);
startbar_L_extend = ValueWhen(PLow,xx,2);
endbar_L_extend = ValueWhen(PLow,xx,1);
aa_L_extend = (endval_L_extend-startval_L_extend)/(endbar_L_extend-startbar_L_extend);
bb_L_extend = startval_L;
trendline_L_extend = aa_L_extend * (xx - startbar_L) + endval_L_extend;
dtrendline_L_extend = trendline_L_extend - Ref(trendline_L_extend,-1);
dtrendline_L_extend = IIf(PLow,Ref(dtrendline_L,-1),dtrendline_L_extend);
startval_L_extend2 = ValueWhen(PLow,L,3);
endval_L_extend2 = ValueWhen(PLow,L,2);
startbar_L_extend2 = ValueWhen(PLow,xx,3);
endbar_L_extend2 = ValueWhen(PLow,xx,2);
aa_L_extend2 = (endval_L_extend2-startval_L_extend2)/(endbar_L_extend2-startbar_L_extend2);
bb_L_extend2 = endval_L_extend2;
trendline_L_extend2 = aa_L_extend2 * (xx - endbar_L_extend2) + endval_L_extend2;
dtrendline_L_extend2 = trendline_L_extend2 - Ref(trendline_L_extend2,-1);
dtrendline_L_extend2 = IIf(PLow,Ref(dtrendline_L_extend,-1),dtrendline_L_extend2);
startval_H = ValueWhen(PHigh,H,1);
endval_H = ValueWhen(PHigh,H,0);
startbar_H = ValueWhen(PHigh,xx,1);
endbar_H = ValueWhen(PHigh,xx,0);
aa_H = (endval_H-startval_H)/(endbar_H-startbar_H);
bb_H = startval_H;
trendline_H = aa_H * (xx - startbar_H) + bb_H;
dtrendline_H = trendline_H - Ref(trendline_H,-1);
startval_H_extend = ValueWhen(PHigh,H,2);
endval_H_extend = ValueWhen(PHigh,H,1);
startbar_H_extend = ValueWhen(PHigh,xx,2);
endbar_H_extend = ValueWhen(PHigh,xx,1);
aa_H_extend = (endval_H_extend-startval_H_extend)/(endbar_H_extend-startbar_H_extend);
bb_H_extend = startval_H;
trendline_H_extend = aa_H_extend * (xx - startbar_H) + endval_H_extend;
dtrendline_H_extend = trendline_H_extend - Ref(trendline_H_extend,-1);
dtrendline_H_extend = IIf(PHigh,Ref(dtrendline_H,-1),dtrendline_H_extend);
startval_H_extend2 = ValueWhen(PHigh,H,3);
endval_H_extend2 = ValueWhen(PHigh,H,2);
startbar_H_extend2 = ValueWhen(PHigh,xx,3);
endbar_H_extend2 = ValueWhen(PHigh,xx,2);
aa_H_extend2 = (endval_H_extend2-startval_H_extend2)/(endbar_H_extend2-startbar_H_extend2);
bb_H_extend2 = endval_H_extend2;
trendline_H_extend2 = aa_H_extend2 * (xx - endbar_H_extend2) + endval_H_extend2;
dtrendline_H_extend2 = trendline_H_extend2 - Ref(trendline_H_extend2,-1);
dtrendline_H_extend2 = IIf(PHigh,Ref(dtrendline_H_extend,-1),dtrendline_H_extend2);
tld = ParamToggle("All trendlines","show|hide",1);
if (tld)
{
trendline_L = IIf(dtrendline_L > 0,trendline_L,Null);
trendline_L_extend = IIf(dtrendline_L_extend > 0,trendline_L_extend,Null);
trendline_L_extend2 = IIf(dtrendline_L_extend2 > 0,trendline_L_extend2,Null);
trendline_H = IIf(dtrendline_H < 0,trendline_H,Null);
trendline_H_extend = IIf(dtrendline_H_extend < 0,trendline_H_extend,Null);
trendline_H_extend2 = IIf(dtrendline_H_extend2 < 0,trendline_H_extend2,Null);
}
trendline_L_extend2 = IIf(BarsSince(Plow) <= nbar,trendline_L_extend2,Null);
trendline_H_extend2 = IIf(BarsSince(PHigh) <= nbar,trendline_H_extend2,Null);
GraphXSpace = 5;
SetChartOptions(0, chartShowDates);
PlotShapes(shapeUpArrow*PLow,colorYellow,0,L,-30);
PlotShapes(shapeDownArrow*PHigh,colorWhite,0,H,-30);
Plot(trendline_L, "", colorLime,styleLine|styleThick);
Plot(IIf(BarsSince(Plow) <= nbar,trendline_L_extend,Null), "", colorLightGrey, styleLine | styleThick);
Plot(IIf(BarsSince(Plow) > nbar,trendline_L_extend,Null), "",colorBrightGreen, styleLine | styleThick);
Plot(IIf(BarsSince(Plow) <= nbar,trendline_L_extend2,Null), "",colorDarkGreen, styleLine| styleThick);
Plot(trendline_H, "", colorRed,styleLine|styleThick);
Plot(IIf(BarsSince(PHigh) <= nbar,trendline_H_extend,Null), "", colorLightGrey, styleLine | styleThick);
Plot(IIf(BarsSince(PHigh) > nbar,trendline_H_extend,Null), "",colorOrange, styleLine | styleThick);
Plot(IIf(BarsSince(PHigh) <= nbar,trendline_H_extend2,Null), "",colorOrange, styleLine | styleThick);
signalFlag = ParamToggle("Possible Signals","show|hide",1);
if (signalFlag)
{
Buy = (!IsEmpty(trendline_H_extend) AND Cross(C,trendline_H_extend) AND BarsSince(PHigh) > nbar) OR
(!IsEmpty(trendline_H_extend2) AND Cross(C,trendline_H_extend2) AND !PHigh) OR
(PHigh AND C > trendline_H_extend2 AND Ref(C,-1) < Ref(trendline_H_extend,-1) AND !IsEmpty(trendline_H_extend) AND !IsEmpty(trendline_H_extend2) );
BuyPrice = C;
Short = (!IsEmpty(trendline_L_extend) AND Cross(trendline_L_extend,C) AND BarsSince(PLow) > nbar) OR
(!IsEmpty(trendline_L_extend2) AND Cross(trendline_L_extend2,C) AND !PLow) OR
(PLow AND C < trendline_L_extend2 AND Ref(C,-1) > Ref(trendline_L_extend,-1) AND !IsEmpty(trendline_L_extend) AND !IsEmpty(trendline_L_extend2));
ShortPrice = C;
Sell = 0;
Cover = 0;
_SECTION_BEGIN(" EXPLORE");
AL=(!IsEmpty(trendline_H_extend) AND Cross(C,trendline_H_extend) AND BarsSince(PHigh) > nbar) OR
(!IsEmpty(trendline_H_extend2) AND Cross(C,trendline_H_extend2) AND !PHigh) OR
(PHigh AND C > trendline_H_extend2 AND Ref(C,-1) < Ref(trendline_H_extend,-1) AND !IsEmpty(trendline_H_extend) AND !IsEmpty(trendline_H_extend2) );
BuyPrice = C;
SAT=(!IsEmpty(trendline_L_extend) AND Cross(trendline_L_extend,C) AND BarsSince(PLow) > nbar) OR
(!IsEmpty(trendline_L_extend2) AND Cross(trendline_L_extend2,C) AND !PLow) OR
(PLow AND C < trendline_L_extend2 AND Ref(C,-1) > Ref(trendline_L_extend,-1) AND !IsEmpty(trendline_L_extend) AND !IsEmpty(trendline_L_extend2));
ShortPrice = C;
AL_status=WriteIf(AL,"Alis Yap"," ");
SAT_status=WriteIf(SAT,"Satis Yap"," ");
AL_col=IIf(AL, colorDarkGreen , colorWhite);
SAT_col=IIf(SAT, colorRed,colorWhite);
Filter= AL OR SAT;
AddColumn(C, "KAPANIS", 1.2, IIf(C > Ref(C,-1),colorBlue, colorRed));
AddTextColumn(AL_status, "ALIS", 1.2, colorWhite, Al_col);
AddTextColumn(SAT_status, "SATIS", 1.2, colorWhite, SAT_col);
}
_SECTION_END();
function ALFilter( price, FP2, FP1, gain )
{
FP2 = 100/(200-FP2);
FP1 = 0.80+FP1/500;
result = price;
L0 = L1 = L2 = L3 = price;
coef = 0.5;
HH = 0.1;
LL = 0;
for ( i = 2; i < BarCount; i++ )
{
error = abs( price[i] - result[i-1] );
if ( error > HH )
{ HH = error; }
else
{ HH *= FP2; }
if ( error < LL )
{ LL = error; }
else
{ LL *= FP2; }
if ( HH != LL )
{ coef[i] = FP1*Coef[i-1]+(1-FP1)*((error - LL) / (HH - LL)); }
alpha = coef[i]*gain[i];
L0[i] = alpha*price[i] + (1 - alpha)*L0[i-1];
L1[i] = -(1 - alpha)*L0[i] + L0[i-1] + (1 - alpha)*L1[i-1];
L2[i] = -(1 - alpha)*L1[i] + L1[i-1] + (1 - alpha)*L2[i-1];
L3[i] = -(1 - alpha)*L2[i] + L2[i-1] + (1 - alpha)*L3[i-1];
result[i] = (L0[i] + 2*L1[i] + 2*L2[i] + L3[i]) / 6;
}
return result;
}
price = ParamField("Price field", 3);
FP2 = Param( "Filter Parameter 2", 99, 0, 99, 1 );
FP1 = Param( "Filter Parameter 1", 0, 0, 99, 1 );
gain = Param( "Gain Parameter", 1.0, 0.1, 2.5, 0.1 );
Plot( ALFilter(price, FP2, FP1, gain), "www.facebook.com/groups/traderszone/",colorYellow,styleLine+styleDots|styleThick );
Thread starter | Similar threads | Forum | Replies | Date |
---|---|---|---|---|
My visual effect afl collection. | AmiBroker | 185 | ||
AFL Collection by Tamil Trader | AmiBroker | 10 | ||
P | AFL Collection without formula references FUTURE quotes | AmiBroker | 1 | |
My amibroker afl collections | AmiBroker | 18 | ||
The Grand AFL Collection Thread | AmiBroker | 20 |