PHP Code:
var v = Sistem.GrafikVerileri; var vk = Sistem.GrafikFiyatSec("Kapanis"); var vy = Sistem.GrafikFiyatSec("Yuksek"); var vd = Sistem.GrafikFiyatSec("Dusuk");
// Stratejiye girdi olarak gönderilecek olan verileri tanımlama bölümü ( indikatör tanımlama vb.)
var ma1 = Sistem.MA(vk, "Exp", 10); // GİRDİ ÖRNEĞİ
var ma2 = Sistem.MA(vk, "Exp", 21); // GİRDİ ÖRNEĞİ
var sinyal = ""; var sonyon = ""; var islemfiyati = 0f;
for (int i = 1; i<v.Count; i++)
{
// Girdileri kullanarak strateji üretim bölümü
if (ma1[i] > ma2[i]) sinyal = "A"; // STRATEJİ ÖRNEĞİ
if (ma1[i] < ma2[i]) sinyal = "F"; // STRATEJİ ÖRNEĞİ
// if (i < v.Count-1 && v[i].Date.Day != v[i+1].Date.Day) sinyal = "F"; // Gün Sonu Flat Satırı. ( Backtest için uygundur. i+1 barındıran bir satır, gerçek piyasada repaint yapar.)
if (sonyon != "A" && sinyal == "A") { Sistem.Yon[i] = "A"; sonyon = "A"; islemfiyati = v[i].Close; }
if (sonyon != "S" && sinyal == "S") { Sistem.Yon[i] = "S"; sonyon = "S"; islemfiyati = v[i].Close; }
if (sonyon != "F" && sinyal == "F") { Sistem.Yon[i] = "F"; sonyon = "F"; islemfiyati = v[i].Close; }
}
Sistem.GetiriHesapla("01/01/2007", 0);
// Getiri Çizgisi
var cizgi = 0; // Bu numaralı çizgiden başlat.
var panel = 2; // 2.Panelde Göster
var dolgu = 1; // 1: Açık. 0:Kapalı
var islemsayisi = 0; var kzyon = "";
for (int i=1; i<v.Count; i++)
{
if (Sistem.Yon[i] != "")
{
if (kzyon == "A" || kzyon == "S") islemsayisi ++;
if (Sistem.Yon[i] == "A" || Sistem.Yon[i] == "S") islemsayisi ++;
kzyon = Sistem.Yon[i];
}
}
Sistem.GradientYaziEkle( ((DateTime.Now-v[0].Date).TotalDays/30.4).ToString("0.0") + " Ay :" , panel, 10, 15, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.GradientYaziEkle( Sistem.GetiriKZ[v.Count-1].ToString("0.00") , panel, 150, 15, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.GradientYaziEkle("İşlem Sayısı :" , panel, 10, 35, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.GradientYaziEkle((islemsayisi/2).ToString() , panel, 150, 35, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.GradientYaziEkle("Ortalama :" , panel, 10, 55, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.GradientYaziEkle( ((islemsayisi/2)/((DateTime.Now-v[0].Date).TotalDays/30.4)).ToString("0") , panel, 150, 55, Color.Gold, Color.Gold, "Calibri", 15);
Sistem.Cizgiler[cizgi].Deger = Sistem.GetiriKZ; Sistem.Cizgiler[cizgi].Aciklama = "KZ"; Sistem.Cizgiler[cizgi].Renk = Color.White; Sistem.Cizgiler[cizgi].Panel = panel;
Sistem.Cizgiler[cizgi+1].Deger = Sistem.GetiriKZGunSonu; Sistem.Cizgiler[cizgi+1].Aciklama = "KZGunSonu"; Sistem.Cizgiler[cizgi+1].Renk = Color.White; Sistem.Cizgiler[cizgi+1].Panel = panel;
Sistem.Cizgiler[cizgi+2].Deger = Sistem.GetiriKZGun; Sistem.Cizgiler[cizgi+2].Aciklama = "KZGun"; Sistem.Cizgiler[cizgi+2].Renk = Color.White; Sistem.Cizgiler[cizgi+2].Panel = panel;
if (dolgu == 1) Sistem.DolguEkle(cizgi+1,cizgi+2, Color.FromArgb(120,0,255,0), Color.FromArgb(120,255,0,0));
Yer İmleri