<< Geri

Sistem Adı
  • Sistemler_KarAl_ZararDurdur
Dosya Olarak İndirmek İçin Tklayınız
Sistem Açıklaması

%5 KAR görürse kar al, %2 zarar görürse zarar durdur örneğidir. AL ve SAT stratejisi iki hareketli ortalamanın kesişimidir. Hareketli ortalama çizgilerini de ekran görmek için, Panel üzerinden çizgiler 0 ve 1 aktif edilebilir.

Sistem Kodu

//%5 KAR görürse kar al, %2 zarar görürse zarar durdur örneğidir.
// kapanış fiyatlarını oku

var C = Sistem.GrafikFiyatSec("Kapanis"); 

// hareketli ortalamaları hesapla
var MA1 = Sistem.MA(C, "Exp", 50);
var MA2 = Sistem.MA(C, "Exp", 100);
 

// strateji
var SonYon = "";
double Fiyat = 0;
for (int i = 1; i<Sistem.BarSayisi; i++)
{
   if (MA1[i-1] < MA2[i-1] && MA1[i] >= MA2[i] && SonYon != "A") // AL
   {
      Sistem.Yon[i] = "A";  // alış
      SonYon = Sistem.Yon[i];
      Fiyat = C[i];
   }
   else if (MA1[i-1] > MA2[i-1] && MA1[i] <= MA2[i] && SonYon != "S") // SAT
   {
      Sistem.Yon[i] = "S";  // satış
      SonYon = Sistem.Yon[i];
      Fiyat = C[i];
   }
   else if (SonYon == "A" &&  C[i] > Fiyat * 1.10)   // % 5 kar realizasyonu
   {
      Sistem.Yon[i] = "F";  // flat
      SonYon = Sistem.Yon[i];
   }
   else if (SonYon == "A" &&  C[i] < Fiyat * 0.94)   // % 2 stop
   {
      Sistem.Yon[i] = "F";  // flat
      SonYon = Sistem.Yon[i];
   }
   else if (SonYon == "S" &&  C[i] < Fiyat * 0.90)   // % 5 kar realizasyonu
   {
      Sistem.Yon[i] = "F";  // flat
      SonYon = Sistem.Yon[i];
   }
   else if (SonYon == "S" &&  C[i] > Fiyat * 1.04)   // % 2 stop
   {
      Sistem.Yon[i] = "F";  // flat
      SonYon = Sistem.Yon[i];
   }
} 

// hesaplanan verileri çizgilere aktar ve açıklama ekle
Sistem.Cizgiler[0].Deger = MA1;
Sistem.Cizgiler[1].Deger = MA2;

Panel Seçenekleri

MA çizgilerini görmek isteyen kullanıcılar, Çizgiler0 ve Çizgiler1 işaretleyip aktif edebilir, istediği renk ve kalınlığı seçebilir.

Örnek Grafik Görünüm