<<Geri

Sistemlerinize KarZarar/Getiri Eğrisi ekleyin / Çok Detaylı Getiri Analizleri Yapın

Bir yatırımcı için sürekli elinin altında olması gereken, her an takip ettiği ve stratejisinin başarısını değerlendirdiği belki de tek kriter KARLILIK durumudur.

Bir sistemin başarısı çok değişik seçeneklerle, çok değişik soruların cevaplarıyla yorumlanabilir.

IDEAL Sistem Modülü, kullanıcılara akla gelebilecek her detayı birer basit fonksiyon ile sorgulatmakta, bu değerleri ekrana yazı olarak veya grafiğin altına çizgi olarak ekleyebilmesini sağlamaktadır.

En basit ve en sade ihtiyaç, sistemim ne kadar kazandırdı sorusunun cevabını görmek ve sisteme göre işlem yapılması durumunda bakiyenin geçmişten günümüze nasıl seyrettiğini görmektir.

Bunu yapmak için tek yapmanız gereken şey getiriyi (istediğiniz bir tarihten başlayarak) hesaplayan fonksiyonu sisteminizin en altına yazmak ve sonucu bir çizgiye atamaktır. (Yani kodunuza aşağıdaki gibi iki satırı eklemek)

Bu iki satır:

Sistem.GetiriHesapla("10/10/2010",0.000);
Sistem.Cizgiler[0].Deger = Sistem.GetiriKZ;  //Panel No= 2

 GetiriHesapla fonksiyonu hakkındaki tüm detaylara, kütüphanemizin Sistem Elemanları alt menüsünden ulaşabilirsiniz. Bu fonksiyon bir tarihten bugüne kadar, istenirse işlem başı komisyon oranını da hesaba katarak net getiriyi hesaplar. Yukarıdaki kodları eklediğimizde grafiğimizdeki görüntü aşağıdaki gibi gelir.

Sonuç:

Getiri Hesapla fonksiyonu, sistemin belirtilen tarihten itibaren (eğer girilmişse komisyon oranını da düşerek) net getiriyi hesaplar ve hesapladığı verileri çok fazla sayıda sonuçla kullanıcıya sunar.

Kullanıcının yapması gereken şey, bu fonksiyonla hesaplanmış olan sonuçlardan birini (birkaçını veya tamamını) kullanmaktır. İster formüllerin içinde hesaplamalarda kullanmak, ister grafik zeminine yazı olarak yazdırarak kullanmak, ister grafik altında birer çizgi olarak çizdirerek kullanmak…

Sistem.GetiriHesapla(“Tarih”, Komisyon”) satırını ekledikten sonra kullanabileceğiniz Tüm sonuçların listesi aşağıda listelenmiştir.

Sistem.GetiriMiktar
Sistem.GetiriPozisyon
Sistem.GetiriKZ
Sistem.GetiriKZPoz
Sistem.GetiriKZGun
Sistem.GetiriKZAy
Sistem.GetiriKZAyNet
Sistem.GetiriKZYil
Sistem.GetiriKZYilNet

Sistem.GetiriKarIslem
Sistem.GetiriKarIslemOran
Sistem.GetiriKarMiktar
Sistem.GetiriZararIslem
Sistem.GetiriZararMiktar
Sistem.GetiriNetKar 

Sistem.GetiriToplamIslem
Sistem.GetiriIslemSayisiAy
Sistem.GetiriIslemSayisiGun
Sistem.GetiriIslemSayisiPoz
Sistem.GetiriIslemSayisiYil

Bu değerlerin bazıları sayısal değerdir, bazıları ise listedir. Liste olanları ekrana çizgi olarak, sayısal değer olanları ekrana yazı/mesaj olarak almak şeklinde kullanımlar olabilir

AŞAĞIDA (Aynı sistem in altında yukarıdaki bazı bilgilerin ayrı ayrı eklenmesiyle elde edilen sonuçlar örneklenmiştir.)

ÖRNEK-1: Aylık Net Getiri Görmek için Sistemin altına eklenmiş satırlar: (dolgu ekle fonksiyonu ile görsel estetik hedeflendi.)

Sistem.GetiriHesapla("10/10/2010",0.000);
Sistem.Cizgiler[0].Deger = Sistem.GetiriKZAyNet;
Sistem.DolguEkle(1,0,Renk1,Renk2);

Sonuç:

ÖRNEK-2: Pozisyon bazında kar/zarar görmek için Sistemin altına eklenmiş satırlar: (Sistem bir pozisyona girdiği zaman, kapatılmış olan bir önceki pozisyonda ne kadar kar yada zarar edildiği gösterilir)

Sistem.GetiriHesapla("10/10/2010",0.000);
Sistem.Cizgiler[0].Deger = Sistem.GetiriKZPoz;

Sonuç:

ÖRNEK-3: Sisteminiz işlem yaptıkça, pozisyonunuz ne (kaç lot) olmuş, her sinyalde kaç adet/lot işlem yapılmış ve getiriniz nasıl seyretmiş bilgilerini görmek için Sistemin altına eklenmiş satırlar:

Sistem.GetiriHesapla("10/10/2010",0.000);
Sistem.Cizgiler[0].Deger = Sistem.GetiriKZ;
Sistem.Cizgiler[1].Deger = Sistem.GetiriPozisyon;
Sistem.Cizgiler[2].Deger = Sistem.GetiriMiktar;

Sonuç:

ÖRNEK4: Sisteminiz pozisyon başına kar/zararı alt kısma çizmek, grafik zemini üzerine de performans analizi sonuçlarından elde edilen verileri yazmak için aşağıdaki kodları ekleyebilirsiniz.

NOT: Çizgi renkleri, dolguda kullanılan renkler ve yazıların grafik üzerindeki x/y koordinatları sizin tercihinize ve ayarlarınıza göre değişen bilgilerdir.

Sistem.GetiriHesapla("01/01/2010",0.000);
Sistem.GetiriMaxDDHesapla("01/10/2015","01/01/2020");
var MaxDD = Sistem.GetiriMaxDD.ToString();
var MaxDDTarihi = Sistem.GetiriMaxDDTarih.ToString("dd/MM/yyyy");
Sistem.ZeminYazisiEkle("Max DD = "+ MaxDD + "(Tarih =" + MaxDDTarihi + ")" ,1,80,350,Color.Gold,"Tahoma",20); 

Sistem.ZeminYazisiEkle("Toplam İşlem Sayısı = " +" " +Sistem.GetiriToplamIslem.ToString("0"), 1, 170, 20, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Kazandıran İşlem Sayısı = " +" " + Sistem.GetiriKarIslem.ToString("0"), 1, 170, 35, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Kaybettiren İşlem Sayısı = " + " " + Sistem.GetiriZararIslem.ToString("0"),1, 170, 50, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Karlı İşlem Miktarı = " + " " + Sistem.GetiriKarMiktar.ToString("0.000"), 1, 220, 85, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Zararlı İşlem Miktarı = " + " " + Sistem.GetiriZararMiktar.ToString("0.000"),1, 220, 100, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Karlı İşlem Oranı = " + "% " + Sistem.GetiriKarIslemOran.ToString("0.00"), 1, 220, 115, Renk1, "Tahoma", 10);
Sistem.ZeminYazisiEkle("Profit Factor = " + " " + Sistem.ProfitFactor.ToString("0.00"),1, 440, 40, Renk3, "Tahoma", 12);
Sistem.ZeminYazisiEkle("Net Kar = " + " " + Sistem.GetiriNetKar.ToString("0.000"),1, 440, 20, Renk2, "Tahoma", 15); 

Sistem.Cizgiler[0].Deger = Sistem.GetiriKZPoz;
Sistem.Cizgiler[1].Deger = Sistem.Liste(0);

Sonuç: