Sayın uufuk,

Aşağıdaki indikatörü sistem haline getirdiğim de çok yanlış sonuçlar alıyorum, indikatör aslen 0 veya 1 üretiyor, son satırda alternatif olarak aşağıdakileri denedim ama sonuç aynı ve yanlış sinyaller geliyor

If(upw,1,If(dnw,0,PREV))=1
If(upw,1,If(dnw,0,PREV))>0.5
Cross(If(upw,1,If(dnw,0,PREV)),0.5)


Özetle indikatör builder da düzgün çalışan bu yapı, sistem tester da niçin çalışmaz, bu tarz problemlerle daha önce karşılaşmıştım matrikse sorduğumda malesef çözüm alamamıştım, belki siz yol gösterebilirsiniz. Indikatör halini de en sona yapıştırıyorum, çok teşekkürler



haOpen:=(Ref((O+H+L+C)/4,-1) + PREV)/2;
haC:=((O+H+L+C)/4+haOpen+Max(H,haOpen)+Min(L,haOpen))/4;
1ema1:=mov(haC,OPT1,e);2ema1:=mov(1ema1,OPT1,e);3e ma1:=mov(2ema1,OPT1,e);
TMA11:=3*1ema1-3*2ema1+3ema1;
1ema2:=mov(TMA11,OPT1,e);2ema2:=mov(1ema2,OPT1,e); 3ema2:=mov(2ema2,OPT1,e);
TMA21:=3*1ema2-3*2ema2+3ema2;
Diff1:= TMA11 - TMA21;
ZlHa1:= TMA11 + Diff1;
1ema3:=mov((H+L)/2,OPT1,e);2ema3:=mov(1ema3,OPT1,e);3ema3:=mov(2ema 3,OPT1,e);
TMA12:=3*1ema3-3*2ema3+3ema3;
1ema4:=mov(TMA12,OPT1,e);2ema4:=mov(1ema4,OPT1,e); 3ema4:=mov(2ema4,OPT1,e);
TMA22:=3*1ema4-3*2ema4+3ema4;
Diff2:= TMA12 - TMA22;
ZlCl1:= TMA12 + Diff2;
ZlDif1:=ZlCl1-ZlHa1;
keep11:=LLV(haC>=haOpen,2);
keep21:=ZlDif1>=0;
keeping1:=(keep11 OR keep21);
keepall1:=keeping1 OR (Ref(keeping1,-1) AND (C>=O) OR C>=Ref(C,-1));
keep31:=(Abs(C-O)<(H-L)*.35 AND H>=Ref(L,-1));
utr:=keepall1 OR (Ref(keepall1,-1) AND keep31);
1ema5:=mov(haC,OPT1,e);2ema5:=mov(1ema5,OPT1,e);3e ma5:=mov(2ema5,OPT1,e);
TMA13:=3*1ema5-3*2ema5+3ema5;
1ema6:=mov(TMA13,OPT1,e);2ema6:=mov(1ema6,OPT1,e); 3ema6:=mov(2ema6,OPT1,e);
TMA23:=3*1ema6-3*2ema6+3ema6;
Diff3:= TMA13 - TMA23;
ZlHa2:= TMA13 + Diff3;
1ema7:=mov((H+L)/2,OPT1,e);2ema7:=mov(1ema7,OPT1,e);3ema7:=mov(2ema 7,OPT1,e);
TMA14:=3*1ema7-3*2ema7+3ema7;
1ema8:=mov(TMA14,OPT1,e);2ema8:=mov(1ema8,OPT1,e); 3ema8:=mov(2ema8,OPT1,e);
TMA24:=3*1ema8-3*2ema8+3ema8;
Diff4:= TMA14 - TMA24;
ZlCl2:= TMA14 + Diff4;
ZlDif2:=ZlCl2-ZlHa2;
keep12:=LLV(haC<haOpen,2);
keep22:=ZlDif2<0;
keep32:=Abs(C-O)<(H-L)*.35 AND L<=Ref(H,-1);
keeping2:=keep12 OR keep22;
keepall2:=keeping2 OR (Ref(keeping2,-1) AND (C<O) OR C<Ref(C,-1));
dtr:=If(keepall2 OR (Ref(keepall2,-1) AND keep32)=1,1,0);
upw:=dtr=0 AND Ref(dtr,-1) AND utr;
dnw:=utr=0 AND Ref(utr,-1) AND dtr;
If(upw,1,If(dnw,0,PREV))=1





aşağıdaki indikatör hali

haOpen:=(Ref((O+H+L+C)/4,-1) + PREV)/2;
haC:=((O+H+L+C)/4+haOpen+Max(H,haOpen)+Min(L,haOpen))/4;
1ema1:=mov(haC,34,e);2ema1:=mov(1ema1,34,e);3ema1: =mov(2ema1,34,e);
TMA11:=3*1ema1-3*2ema1+3ema1;
1ema2:=mov(TMA11,34,e);2ema2:=mov(1ema2,34,e);3ema 2:=mov(2ema2,34,e);
TMA21:=3*1ema2-3*2ema2+3ema2;
Diff1:= TMA11 - TMA21;
ZlHa1:= TMA11 + Diff1;
1ema3:=mov((H+L)/2,34,e);2ema3:=mov(1ema3,34,e);3ema3:=mov(2ema3,34 ,e);
TMA12:=3*1ema3-3*2ema3+3ema3;
1ema4:=mov(TMA12,34,e);2ema4:=mov(1ema4,34,e);3ema 4:=mov(2ema4,34,e);
TMA22:=3*1ema4-3*2ema4+3ema4;
Diff2:= TMA12 - TMA22;
ZlCl1:= TMA12 + Diff2;
ZlDif1:=ZlCl1-ZlHa1;
keep11:=LLV(haC>=haOpen,2);
keep21:=ZlDif1>=0;
keeping1:=(keep11 OR keep21);
keepall1:=keeping1 OR (Ref(keeping1,-1) AND (C>=O) OR C>=Ref(C,-1));
keep31:=(Abs(C-O)<(H-L)*.35 AND H>=Ref(L,-1));
utr:=keepall1 OR (Ref(keepall1,-1) AND keep31);
1ema5:=mov(haC,34,e);2ema5:=mov(1ema5,34,e);3ema5: =mov(2ema5,34,e);
TMA13:=3*1ema5-3*2ema5+3ema5;
1ema6:=mov(TMA13,34,e);2ema6:=mov(1ema6,34,e);3ema 6:=mov(2ema6,34,e);
TMA23:=3*1ema6-3*2ema6+3ema6;
Diff3:= TMA13 - TMA23;
ZlHa2:= TMA13 + Diff3;
1ema7:=mov((H+L)/2,34,e);2ema7:=mov(1ema7,34,e);3ema7:=mov(2ema7,34 ,e);
TMA14:=3*1ema7-3*2ema7+3ema7;
1ema8:=mov(TMA14,34,e);2ema8:=mov(1ema8,34,e);3ema 8:=mov(2ema8,34,e);
TMA24:=3*1ema8-3*2ema8+3ema8;
Diff4:= TMA14 - TMA24;
ZlCl2:= TMA14 + Diff4;
ZlDif2:=ZlCl2-ZlHa2;
keep12:=LLV(haC<haOpen,2);
keep22:=ZlDif2<0;
keep32:=Abs(C-O)<(H-L)*.35 AND L<=Ref(H,-1);
keeping2:=keep12 OR keep22;
keepall2:=keeping2 OR (Ref(keeping2,-1) AND (C<O) OR C<Ref(C,-1));
dtr:=If(keepall2 OR (Ref(keepall2,-1) AND keep32)=1,1,0);
upw:=dtr=0 AND Ref(dtr,-1) AND utr;
dnw:=utr=0 AND Ref(utr,-1) AND dtr;
If(upw,1,If(dnw,0,PREV))