Originally Posted by xxx
günaydın Sayın Uufuk abim, nasılsın?
müsaaden olursa, yardımına ihtiyacım var:
sistemin şunu yapmasını istiyorum:
diyelim ki a gerçekleşti long olduk.
satım sinyali gelmeden eğer pozisyon yz (yüzdezarar) kadar terse giderse pozisyon değişsin.
şimdi short olduk. ya bir sonraki a gerçekleşince ya da, şu anki pozisyon yine yz kadar
terse giderse pozisyon tekrar değişsin.
kısacası birer tane al sat kriterimiz var, fakat terse de gitmeleri de sayarsak aslında
3 tane al, 3 tane sat ihtimalini takip etmeli diye düşünerek şöyle yazmaya çalıştım:
bunu daha önce sorduğumda bana şöyle demiştin: bu birbirini destekleyen satırlarla yazılır, yazmaya başla arkası gelir...
birbirini destekleyen satırlar nasıl yazılır bilmiyorum, uğraş uğraş aşağıdaki gibi bir şeyler
yapabildim. (tabii ki senin overall sisteminden bir şeyler kopyaladım)
al:
a:=cross(x,y) ; s:=cross(y,x) ;
a2:=cross(c,cross(valuewhen(1,a=1,c)*(1-yz/100),c)*(1+yz/100));
a3:=cross(c,valuewhen(1,s=1,c)*(1+yz/100));
s2:=cross(cross(c,valuewhen(1,s=1,c)*(1+yz/100))*(1-yz/100),c);
s3:=cross(valuewhen(1,a=1,c)*(1-yz/100),c);
al:=if(a or af or sa,1,0);sat:=if(s or sf or ss,1,0);
z:=valuewhen(1,al-sat,al-sat);
cross(z,0)
sat:
a:=cross(x,y) ; s:=cross(y,x) ;
a2:=cross(c,cross(valuewhen(1,a=1,c)*(1-yz/100),c)*(1+yz/100));
a3:=cross(c,valuewhen(1,s=1,c)*(1+yz/100));
s2:=cross(cross(c,valuewhen(1,s=1,c)*(1+yz/100))*(1-yz/100),c);
s3:=cross(valuewhen(1,a=1,c)*(1-yz/100),c);
al:=if(a or af or sa,1,0);sat:=if(s or sf or ss,1,0);
z:=valuewhen(1,al-sat,al-sat);
cross(0,z)
bir başka yöntem daha denedim. o da şöyle:
al:
a:=cross(x,y) ; s:=cross(y,x) ;
af:=cross(valuewhen(1,a=1,c)*(1-yz/100),c);
b1:=barssince(af=1); b2:=barssince(s=1);
sa:=if(b1>b2,valuewhen(1,s=1,c),valuewhen(1,af=1,c ));
sf:=cross(c,valuewhen(1,s=1,c)*(1+yz/100));
a1:=barssince(sf=1); a2:=barssince(a=1);
ss:=if(a1>a2,valuewhen(1,a=1,c),valuewhen(1,sf=1,c ));
a=1 or cross(c,sa*(1+yz/100))
sat:
a:=cross(x,y) ; s:=cross(y,x) ;
af:=cross(valuewhen(1,a=1,c)*(1-yz/100),c);
b1:=barssince(af=1); b2:=barssince(s=1);
sa:=if(b1>b2,valuewhen(1,s=1,c),valuewhen(1,af=1,c ));
sf:=cross(c,valuewhen(1,s=1,c)*(1+yz/100));
a1:=barssince(sf=1); a2:=barssince(a=1);
ss:=if(a1>a2,valuewhen(1,a=1,c),valuewhen(1,sf=1,c ));
s=1 or cross(ss*(1-yz/100),c)
yukardaki yazım şeklinde olan sistemi indikatör olarak grafiğe açtığımda,
bazı alım satım noktaları sistemin hesapladığı ve indikatör halinin hesapladığı farklı çıkabiliyor.
buna bir anlam veremedim.
a ve s koşullarını farklı sistemlerde deniyorum. burası çok kalabalık olmaması için yazmadım,
istersen onları da gönderebilirim. birinin formülünde mov(c,10,zl) şeklinde zerolag yöntemini
kullanıyorum, sistem hesabıyla gerçekleşen alım satımların, indikatör halinde grafiğe koyduğumda
farklı olmasının nedeni bu olabilir mi?
her türlü yardımın için teşekkür eder, bu vesileyle Hayırlı Cumalar dilerim.