Çarşamba, Mart 21, 2018

EMA VE MACD ILE OLUŞTURULMUŞ SISTEM ORNEGI

ema ortalama

Örnek sistemimizde  2 adet ema ortalama kullanulmıştır

fiyat 2 adet ema ortalamanın üzerindeyse veya altındaysa ve macd kesisim gerçekleştiyse

sinyal oluşturuyor Degerleri kendinize göre optumize edebilirsiniz




var V = Sistem.GrafikVerileri;
var C = Sistem.GrafikFiyatOku(V, "Kapanis");



var EMA = Sistem.MA(C, "Exp", 52);
var EMA2 = Sistem.MA(C, "Exp", 26);
var MACD = Sistem.MACD(12, 26);
var SIGNAL = Sistem.MA(MACD, "Exp", 26);
var HISTOGRAM = Sistem.Liste(0);
var EMA3 = Sistem.Volume();
for (var i = 1; i < V.Count; i++)
    HISTOGRAM[i] = MACD[i] - SIGNAL[i];

// strateji
var SonYon = "";
for (int i = 1; i < V.Count; i++)
{
      if (SonYon != "A" && EMA[i] > EMA[i - 1] && EMA2[i] > EMA2[i - 1] &&    MACD[i] > SIGNAL[i]) // Alış 
    {
        Sistem.Yon[i] = "A";
        SonYon = Sistem.Yon[i];
    }
      else if (SonYon != "S" && EMA[i] < EMA[i - 1] && EMA2[i] < EMA2[i - 1]   &&  MACD[i] < SIGNAL[i])  // Satış 
    {
        Sistem.Yon[i] = "S";
        SonYon = Sistem.Yon[i];
    }
}


Sistem.GetiriHesapla("02/01/2006", 0.00 );
var KarZarar = Sistem.GetiriKZ;


// çizdir
Sistem.Cizgiler[0].Deger = MACD;
Sistem.Cizgiler[1].Deger = SIGNAL;
Sistem.Cizgiler[2].Deger = HISTOGRAM;
Sistem.Cizgiler[3].Deger = EMA;
Sistem.Cizgiler[4].Deger = EMA2;
Sistem.Cizgiler[5].Deger = KarZarar;
Sistem.Cizgiler[6].Deger = EMA3;


Hiç yorum yok:

Yorum Gönder

Rast gele yazılar

karışık yazılar