Originally Posted by
seagunner
Sn ykoc,
Galiba baştan resim atmalıydım. Cevabınız için teşekkür ederim.
Mov ve atr Değerleri aynı Çizgiler Uymuyor birbirine.
buyrun
Not: Göreceğiniz gibi çizgi paternleri birebir aynı. Ama değerler birebir aynı değildir.
ATR indikatörünün foreks, metastock ve idealdeki değerleri birebir aynı iken, matrikste farklıdır.
Kod:
var V = Sistem.GrafikVerileri ;
var C = Sistem.GrafikFiyatOku(V, "Kapanis" ) ;
var H = Sistem.GrafikFiyatOku(V, "Yuksek" ) ;
var L = Sistem.GrafikFiyatOku(V, "Dusuk" ) ;
var O = Sistem.GrafikFiyatOku(V, "Acilis" ) ;
var y1 = Sistem.MA(C,"Weighted",10);
var atr = Sistem.AverageTrueRange(5);
var y2 = Sistem.Liste(0);
var y3 = Sistem.Liste(0);
var y4 = Sistem.Liste(0);
var y5 = Sistem.Liste(0);
var y6 = Sistem.Liste(0);
var y7 = Sistem.Liste(0);
var y8 = Sistem.Liste(0);
var y9 = Sistem.Liste(0);
for (int i = 10; i<V.Count; i++)
{
y2[i] = y1[i]-atr[i];
y3[i] = y1[i] + atr[i];
if ( y1[i] < y4[i-1])
y4[i] = y2[i];
else if (y2[i] > y4[i-1])
y4[i] = y2[i] ;
else
y4[i]= y4[i-1];
if ( y1[i] > y5[i-1])
y5[i] = y3[i];
else if (y3[i] < y5[i-1])
y5[i] = y3[i];
else
y5[i]= y5[i-1];
if (y1[i-1] < y5[i-2] && y1[i] > y5[i-1] )
y6[i] = 1;
else
y6[i] = 0;
if (y4[i-2] < y1[i-1] && y4[i-1] > y1[i] )
y7[i] = 1;
else
y7[i] = 0;
if(y6[i] > y7[i] )
y8[i] = -1;
else if (y6[i] < y7[i])
y8[i] = 0;
else
y8[i] = y8[i-1];
if(y8[i] == -1)
y9[i] = y4[i];
else
y9[i] = y5[i];
}
Sistem.Cizgiler[0].Deger = y9;
Sistem.Cizgiler[1].Deger = y1;