Originally Posted by
alekss
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 B2 = Sistem.GrafikVerileriniOku(Sistem.Sembol, "5");
var C2 = Sistem.GrafikFiyatOku(B2,"Kapanis");
var adx5 = Sistem.ADX(B2, 8);
var adxx = Sistem.DonemCevir(V, B2, adx5);
var MA2 = Sistem.MA(C2, "Exp", 21);
var MA2D = Sistem.DonemCevir(V, B2, MA2);
var MA = Sistem.MA(21,"Exp","Kapanis");
var ADX = Sistem.ADX(8);
var a = Sistem.Liste(0);
var RenkListesi = new List<Color>(new Color[Sistem.BarSayisi]);
for (int i =1; i < Sistem.BarSayisi; i++)
{
if (ADX [i] >= 25)
{
a[i] = MA[i] ;
RenkListesi[i] = Color.Green;
}
else if (ADX [i] < 25 && ADX [i] >15 )
{
a[i] = MA[i] ;
RenkListesi[i] = Color.Red;
}
else if (ADX [i] < 15)
{
a[i] = MA[i] ;
RenkListesi[i] = Color.Yellow;
}
}
var b = Sistem.Liste(0);
//var RenkListesi = new List<Color>(new Color[Sistem.BarSayisi]);
for (int i = 1; i < B2.Count; i++)
{
if (adxx [i] >= 25)
{
b[i] = MA2D [i] ;
RenkListesi[i] = Color.Green;
}
else if (adxx [i] < 25 && adxx [i] >15 )
{
b[i] = MA2D [i] ;
RenkListesi[i] = Color.Red;
}
else if (adxx [i] < 15)
{
b[i] = MA2D [i] ;
RenkListesi[i] = Color.Yellow;
}
}
Sistem.Cizgiler[5].Deger = b;
Sistem.Cizgiler[0].Deger = a;
Sistem.Cizgiler[0].RenkListesi = RenkListesi;
Sistem.Cizgiler[5].RenkListesi = RenkListesi;
------------------------------
yukarıdaki formulde 1 dakikalık ma 21 in adx 25 in alktındayken renki görünmesini yapabiliyor
ancak
aynı grafikte 5 dk lık ma 21 inde 5 dakikalık adx 25 altındayken renkli görünmesini yapamadım
acaba nerede hata yapıyorum , yardımcı olabilecek arkadaşlara şimdiden teşekkürler
Aynı ceketi 2 farklı kişiye giydirmeye çalışıyorsun.. Bir tane RenkListesi tanımlamışsın.. Koddaki gereksiz yerleri de sildim bu arada, zaten tanımlamış olduğun hareketli ortalamaları yeniden a ve b ye doldurmana gerek yok.. Ayrıca 2 ma ayırt etmek için üst periyot olana artışta yeşil değil mavi tanımladım.
PHP Code:
var V =Sistem.GrafikVerileri ;
var C = Sistem.GrafikFiyatOku(V, "Kapanis") ;
var B2 = Sistem.GrafikVerileriniOku(Sistem.Sembol, "15");
var C2 = Sistem.GrafikFiyatOku(B2,"Kapanis");
var adx5 = Sistem.ADX(B2, 8);
var adxx = Sistem.DonemCevir(V, B2, adx5);
var MA2 = Sistem.MA(C2, "Exp", 21);
var MA2D = Sistem.DonemCevir(V, B2, MA2);
var MA = Sistem.MA(21,"Exp","Kapanis");
var ADX = Sistem.ADX(8);
var RenkListesi = new List<Color>(new Color[Sistem.BarSayisi]);
var RenkListesi2 = new List<Color>(new Color[Sistem.BarSayisi]);
for (int i =100; i < Sistem.BarSayisi; i++)
{
if (ADX [i] >= 25) RenkListesi[i] = Color.Green;
else if (ADX [i] < 25 && ADX [i] >15 ) RenkListesi[i] = Color.Red;
else if (ADX [i] < 15) RenkListesi[i] = Color.Yellow;
if (adxx [i] >= 25) RenkListesi2[i] = Color.Blue;
else if (adxx [i] < 25 && adxx [i] >15 ) RenkListesi2[i] = Color.Red;
else if (adxx [i] < 15) RenkListesi2[i] = Color.Yellow;
}
Sistem.Cizgiler[0].Deger = MA;
Sistem.Cizgiler[0].RenkListesi = RenkListesi;
Sistem.Cizgiler[1].Deger = MA2D;
Sistem.Cizgiler[1].RenkListesi = RenkListesi2;
Yer İmleri