Sayfa 135/350 İlkİlk ... 3585125133134135136137145185235 ... SonSon
Arama sonucu : 2796 madde; 1,073 - 1,080 arası.

Konu: Sistem Karşılaştırma 2

  1.  Alıntı Originally Posted by cashhflow Yazıyı Oku
    Bende de Sn. matador38'deki gibi sonuç verdi. İşlem sayısı artıyor, getiri azalıyor ve maxdd benzer seviyede kalıyor. Formül bana ağır geldiği için çok uyarlama imkanım henüz yok Çalışan bir örnek görsek daha iyi oturacak sanırım
    bende de işe yaramıyor. ama zaten her sistemde işe yaraması gerekmiyor
    sadece erhan beyin yaklaşımını örneklendirmek için paylaşıyorum bunu.
    daha fazla money management tartışmak lazım.

  2. Para yönetimi çok önemli bir husus.

    ve bence üzerinde en cok durumlası gerken şey.


    nasılkı sıstemlerımız endeks getirisinin üzerinde yaratabilioysak

    para yönetimiyle ilgili yazacagımız modeller getirilerimizi inanılmaz arttırıcı etkiler yaratacaktır sadece 1 kaldıraç değişiklik bile çok farklar açıyor.

    en basitinden longa farklı şorta farklı bır kaldıraç üzerinden ilerlemek.

    mesela şöyle birşey modellenebılırmı ideal üzerinde.

    bir adet ma koyalım grafiğe 200 300 luk yada 500 luk bu manın altında ıken açılan şortlar 2 lot üzerinde. longlar 1 lot uzerınden hesaplansın.

    üstündeykende longlara 2 şortlara 1 lot verelım.

    getirimiz ne çıkardı
    Senin almaya cesaret edemediğin riskleri alanlar, senin yaşamak istediğin hayatı yaşarlar..
    Sokrates twit @erhanacikgoz1

  3.  Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    Para yönetimi çok önemli bir husus.

    ve bence üzerinde en cok durumlası gerken şey.


    nasılkı sıstemlerımız endeks getirisinin üzerinde yaratabilioysak

    para yönetimiyle ilgili yazacagımız modeller getirilerimizi inanılmaz arttırıcı etkiler yaratacaktır sadece 1 kaldıraç değişiklik bile çok farklar açıyor.

    en basitinden longa farklı şorta farklı bır kaldıraç üzerinden ilerlemek.

    mesela şöyle birşey modellenebılırmı ideal üzerinde.

    bir adet ma koyalım grafiğe 200 300 luk yada 500 luk bu manın altında ıken açılan şortlar 2 lot üzerinde. longlar 1 lot uzerınden hesaplansın.

    üstündeykende longlara 2 şortlara 1 lot verelım.

    getirimiz ne çıkardı
    farklı yazılımlarda Performans kriterleri Long ve short bazında ayrı ayrı görülebiliyor. kodla yapmasıda kolay ama önce idealden performans ekranına eklemeler rica etmek daha iyi olurdu. aslında farklı çıkan değerler ya piyasanın yönelimi ile yada sizin o piyasa türünde iyi/kötü kodlamızla ilgili olacak. bundan dolayı short/longa göre kaldıraç yapmak yerine kodun hangisinde neden başarısız olduğunu irdelemek daha doğru olurdu.

  4.  Alıntı Originally Posted by Orhan AKDOĞAN Yazıyı Oku
    Düşen Kar Maskesi: KZ belirlenen dilimi aşağı keserse Flat, yukarı keserse sisteminizin sinyali.
    Detaylı kontrol edilmedi. Test etmelisiniz.

    Seviye yöntemine toma da eklendi.


    PHP Code:
    //Ayarlar
    bool MaskeVar true;        // false ise sizin sistem, true ise Düşen Kar Maskesi Aktif.
    var GrafikSistemAd"K2";  // Sisteminizin adını yazın.GetiriHesapla içermelidir.

    var MaskeYontem="S"//S veya T (S ise Seviye Kesişimi T ise TOMA.)
    int KzSeviyeMod=5;   //KZ al-sat çizgisi adımı. Sadece Seviye Yönteminde kullanılır.
    bool SeviCizgileriniGoster=false;
    var 
    TomaParam1=30;    //Sadece TOMA Yönteminde kullanılır.
    var TomaParam2=5;    //Sadece TOMA Yönteminde kullanılır.

    var KZDevirVar=false;  // true ise KZ değişmez ve Param9 a yazılan Devir Rakamına her yeni bar eklendiğinde
                           // kaybolan barın Kz si de eklenerek biriktirme yapılır.
                           // false ise KZ değişmez. lokal testlerde false serverda robot true kullanılabilir.
    var KarBiriktirenSembolPeriyot "VIP'VIP-X030"+"1"//Sistem başka sembollerde açıldığında robotun takip ettiği kar değerleri bozulmasın diye gerekli.

    bool MaskeliKZGoster=true;

    //Veriler
    var Sistem.GrafikVerileri;
    var 
    Sistem.GrafikFiyatSec("Açılış");

    //Sistem Getir
    var GrafikSistem Sistem.SistemGetir(GrafikSistemAdSistem.SembolSistem.Periyot); 
    var 
    Yonler GrafikSistem.Yon;
    var 
    Seviyeler GrafikSistem.Seviye;
    var 
    GetiriList GrafikSistem.GetiriKZ;  //var GetiriList =GrafikSistem.Cizgiler[5].Deger;

    //Değişkenler
    string SonYon="F";
    string GercekSonYon="";
    bool AksamFlatIslemde=false;
    float MaxKZ=0;
    double DevirKZ=0;

    //Devreden Kar Hesaplamaları
    var YeniGetiriList Sistem.Liste(0);
    if(
    KZDevirVar)
    {
    var 
    RefGetiri1000GetiriList[1000];
    var 
    RefGetiri999GetiriList[999];
    if(
    Sistem.Parametreler[8]==""//Kaydedilmiş İlk Bar Tarihi Boş ise
    {
    Sistem.Parametreler[9] = "0"//Devir KZ 0 kabul et. Elle değiştirebilir devir rakamı.
    Sistem.Parametreler[10] = RefGetiri1000.ToString("0.####"); //Referans Getiriyi Yaz

    if( 
    V[0].Date.ToString("dd.MM.yyyy HH:mm") != Sistem.Parametreler[10
        && (
    Sistem.Sembol Sistem.Periyot)==KarBiriktirenSembolPeriyot 
      
    )  //Robotun Sembolünde ise ve İlkBar Değişti ise 
    {
    Sistem.Parametreler[8] = V[0].Date.ToString("dd.MM.yyyy HH:mm");  //Yeni ilk barın Tarihini yaz.
    DevirKZ Convert.ToDouble(Sistem.Parametreler[9]) +   // DevirKZ
              
    +Convert.ToDoubleSistem.Parametreler[10] ) - RefGetiri999;
    Sistem.Parametreler[9] = DevirKZ.ToString("0.####"); 
    Sistem.Parametreler[10] = RefGetiri1000.ToString("0.####");  
    }
    }
    for (
    int i 0GetiriList.Counti++){YeniGetiriList[i] = (float)DevirKZ GetiriList[i];}


    //İndikatörler
    var TomaKZSistem.TOMA(YeniGetiriListTomaParam1TomaParam2);   
    if(
    MaskeVar && MaskeYontem.ToUpper()=="T" && SeviCizgileriniGoster)
    {
    Sistem.Cizgiler[2].Deger TomaKZ;
    Sistem.Cizgiler[2].Panel 2;  
    Sistem.Cizgiler[2].ActiveBool true;
    Sistem.Cizgiler[2].Aciklama="TomaKZ";
    Sistem.Cizgiler[2].Renk Color.Red
    }

    //Maske Listesi
    var MaskeList Sistem.Liste(0);
    var 
    Maske 1;
    for (
    int i 1V.Counti++)
    {

        var 
    SonGetiri=YeniGetiriList[i];
        var 
    OncekiGetiri=YeniGetiriList[i-1]; 
        
    MaxKZ Math.Max(MaxKZ,SonGetiri);

      if(
    MaskeYontem.ToUpper()=="S")
        for (
    int j 0Math.Round(SonGetiri /KzSeviyeMod)+3j++)
        {
            var 
    jSeviye=j*KzSeviyeMod
      
            if (
    OncekiGetiri jSeviye && SonGetiri <= jSeviye   )
            {
                
    Maske 0;
                break;
            }
            if (
    OncekiGetiri jSeviye  && SonGetiri >= jSeviye )
            {
                
    Maske 1;
                break;
            }
        }
      else {
                if (
    OncekiGetiri TomaKZ[i-1] && SonGetiri <= TomaKZ[i-1]) Maske 0;
           else if (
    OncekiGetiri TomaKZ[i-1] && SonGetiri >= TomaKZ[i-1]) Maske 1;
           }


        
    MaskeList[i] = Maske;
    }


    //Çizgiler
    Sistem.Cizgiler[0].Deger YeniGetiriList;
    Sistem.Cizgiler[0].Panel 2;  
    Sistem.Cizgiler[0].ActiveBool true;
    Sistem.Cizgiler[0].Aciklama="KZ";

    var 
    RenkListesi = new List<Color>();
    for (
    int i 0V.Counti++)   RenkListesi.Add(Color.Gray);
    for (
    int i 0V.Counti++)
    {
        if (
    MaskeList[i] == 0RenkListesi[i] = Color.Gray;
        else if (
    MaskeList[i] == 1RenkListesi[i] = Color.Cyan;
    }
    Sistem.Cizgiler[0].RenkListesi RenkListesi;

    //KZ Seviye Çizgileri(Sadece görsellik için, algoyu etkilemez, son Kz ye yakın 10 çizgi.)
    if(MaskeVar && MaskeYontem.ToUpper()=="S" && SeviCizgileriniGoster)
    {
    var 
    SeviyeCizgiCounter=10;
    for (var 
    =Math.Round(MaxKZ/KzSeviyeMod)+-10 Math.Round(MaxKZ/KzSeviyeMod)+i++)
    {
        
    SeviyeCizgiCounter+=1;
        
    Sistem.Cizgiler[SeviyeCizgiCounter].ActiveBool true;
        
    Sistem.Cizgiler[SeviyeCizgiCounter].Deger Sistem.Liste(i*KzSeviyeMod);
        
    Sistem.Cizgiler[SeviyeCizgiCounter].Panel 2;
        
    Sistem.Cizgiler[SeviyeCizgiCounter].Renk Color.IndianRed
        
    Sistem.Cizgiler[SeviyeCizgiCounter].Stil 2;
    }
    }


    //Yön Kalıbı
    for (int i Yonler.Counti++)
    {

    //Sistemde Yön var ise GercekSonYon'e ata.
    if( Yonler[i] != ""GercekSonYon=Yonler[i];
       
       
    //Maske Flat: Maske aktif ise ve bir KZ dilimini aşağı kesti ise
       
    if ( MaskeVar && MaskeList[i]==
       {  
         
    //Zaten Flat'da ise İşlem Yok.
         
    if(SonYon != "F")
         {
          
    SonYon "F";
          
    Sistem.Yon[i] = "F";
         }
       }
       
    //Gerçek Sinyal: SonYon ile GercekSonYon aynı değil ise
       
    else if( SonYon != GercekSonYon  )
       {
          
    SonYon GercekSonYon;
          
    Sistem.Yon[i] = GercekSonYon;
          if(
    Seviyeler[i]!=nullSistem.Seviye[i] = Seviyeler[i];
       }

    }  

    //Maskeli KZ Göster
    if(MaskeliKZGoster){
    var 
    MaskeliYeniGetiriList Sistem.Liste(0);
    Sistem.GetiriHesapla("01.01.2000"0); 
    for (
    int i 0Sistem.GetiriKZ.Counti++){MaskeliYeniGetiriList[i] = (float)DevirKZ Sistem.GetiriKZ[i];}

    Sistem.Cizgiler[1].Deger Sistem.GetiriKZ
    Sistem.Cizgiler[1].Panel 2;  
    Sistem.Cizgiler[1].Renk Color.Yellow
    Sistem.Cizgiler[1].ActiveBool true;
    Sistem.Cizgiler[1].Aciklama="Maskeli KZ";
    }

    //Test Kodu Bar Sayısını 1 eksilttiğinizde KZ değişmiyorsa olmuş demektir.
    //Sistem.Mesaj("SonKZ: "+ YeniGetiriList[YeniGetiriList.Count-1].ToString("0.####")); 
    Orhan Hocam; paylaşımlarınız için teşekkürler,sizden rica etsem Açıklama- Panel-Stil ve no kısımlarına düzgün yerleştiremedim sanırım hata verip açolmadı görüntü.Bu kısım ile ilgili doldurulmuş görsel paylaşırsanız sevinirim.Ya da diğer arkadaşlar Sn. Erhan Bey VE diğer arkadaşlarda yardımcı olabilirler.Sağolun şimdiden...

  5.  Alıntı Originally Posted by banqydamp Yazıyı Oku
    Orhan Hocam; paylaşımlarınız için teşekkürler,sizden rica etsem Açıklama- Panel-Stil ve no kısımlarına düzgün yerleştiremedim sanırım hata verip açolmadı görüntü.Bu kısım ile ilgili doldurulmuş görsel paylaşırsanız sevinirim.Ya da diğer arkadaşlar Sn. Erhan Bey VE diğer arkadaşlarda yardımcı olabilirler.Sağolun şimdiden...
    sifir bir sistem olarak kaydedip çalıştırdığınızda hata veriyorsa 2 nedeni olabilir sadece.
    1-ayarlar blokundaki sistem adı hatalı yazılmıştır.
    2- ayarlar blokundaki yazılan sistemin içerisinde getirihesapla kullanılmamıştır.

    çizgiler görünmüyorsa ilk 2 cizginin checkini işaretlemek yeterli olur.

  6.  Alıntı Originally Posted by Orhan AKDOĞAN Yazıyı Oku
    sifir bir sistem olarak kaydedip çalıştırdığınızda hata veriyorsa 2 nedeni olabilir sadece.
    1-ayarlar blokundaki sistem adı hatalı yazılmıştır.
    2- ayarlar blokundaki yazılan sistemin içerisinde getirihesapla kullanılmamıştır.

    çizgiler görünmüyorsa ilk 2 cizginin checkini işaretlemek yeterli olur.
    Teşekkür ederim,KZeğrisi hesaplama yöntemi farklıymış.Klasik tip yapınca oldu...

  7. Arkadaşlar, lot arttırmalı sistemden bahsetmişsiniz. Bunu sisteme göre performansını görebilir miyim ? elinde kodu olan var mı ?

  8. FxSnipper ile Trend Maskesi
    bununla güçlü trendlerde sistemlerin saçmalama oranını düşürmeyi amaçladık.
    işlem ve puanlarınızı ne derece etkileyecek bakalım.
    benzer bir yöntem ise sistemlerim de olmamasına rağmen bende işe yaramadı yine.
    özelden gelen talep üzerine yazılmıştır.

    denememi şuradaki sistem ile 1 dk için yaptım.
    http://www.directfn.com.tr/sistemler...MA_TRIX_SD.001

    1 dk kullanmıyorsanız uygun değerleri girmeli yada ikinci sistem ile optimize yapmayı denemelisiniz.
    PHP Code:
    //Ayarlar
    bool MaskeVar false// false ise sizin sistem, true ise Güçlü Trend Yönü
    var GrafikSistemAd="SYS_TOMA_TRIX_SD"// Sisteminizin adını yazın.

    //1 DK Ayarları
    var Periyot1 210;     // FXSnipper Periyodu.
    var Periyot2 20;      // FXSnipper Periyodu.
    var Fark40;           // FXSnipper > Değeri

    //Veriler
    var Sistem.GrafikVerileri;
    var 
    Sistem.GrafikFiyatSec("Açılış");

    //Sistem Getir
    var GrafikSistem Sistem.SistemGetir(GrafikSistemAdSistem.SembolSistem.Periyot);
    var 
    Yonler GrafikSistem.Yon;
    var 
    Seviyeler GrafikSistem.Seviye;

    //Değişkenler
    string SonYon="F";
    string GercekSonYon="";
    bool AksamFlatIslemde=false;
    var 
    MaskeList Sistem.Liste(0);
    var 
    Maske 0;
    var 
    MaskeYon "F";

    //Indikatörler
    var FX Sistem.FxSniper(Periyot1 Periyot2 );

    //Maske Listesi
    for (int i 1V.Counti++)
    {
                if ( 
    FX[i-1] >= Fark    Maske 1;   // Güçlü AL
           
    else if ( FX[i-1] <= Fark*-Maske = -1;  // Güçlü SAT
           
    else Maske 0
          
           
    MaskeList[i] = Maske ;
    }

    //Çizgiler
    Sistem.Cizgiler[0].Deger FX ;
    Sistem.Cizgiler[0].Panel 2;  
    Sistem.Cizgiler[0].ActiveBool true;
    Sistem.Cizgiler[0].Aciklama="FX";

    var 
    RenkListesi = new List<Color>();
    for (
    int i 0V.Counti++)   RenkListesi.Add(Color.Gray);
    for (
    int i 0V.Counti++)
    {
        if (
    MaskeList[i] == 0RenkListesi[i] = Color.Yellow;
        else if (
    MaskeList[i] == 1RenkListesi[i] = Color.Green;
        else if (
    MaskeList[i] == -1RenkListesi[i] = Color.Red;
    }
    Sistem.Cizgiler[0].RenkListesi RenkListesi;


    //Yön Kalıbı
    for (int i Yonler.Counti++)
    {

    if(
    MaskeVar MaskeYon = (MaskeList[i]=="F": (MaskeList[i]=="A":"S") );

    //Sistemde Yön var ise GercekSonYon'e ata.
    if( Yonler[i] != ""GercekSonYon=Yonler[i];
       
       
    //Maske aktif ise ve Flat saati içerisinde ise
       
    if ( MaskeVar && MaskeYon!="F" && MaskeYon != SonYon 
       {  
          
    SonYon MaskeYon;
          
    Sistem.Yon[i] = MaskeYon;
       }
       
    //Gerçek Sinyal: SonYon ile GercekSonYon aynı değil ise
       
    else if( MaskeYon=="F" && SonYon != GercekSonYon  )
       {
          
    SonYon GercekSonYon;
          
    Sistem.Yon[i] = GercekSonYon;
          if(
    Seviyeler[i]!=nullSistem.Seviye[i] = Seviyeler[i];
       }

    Aşağıdaki ise buna ait Optimizasyon Sistemidir.
    S menüsünden -> Optimizasyon ile açıp periyodunuzu seçerek
    kendi periyodunuz ve Sisteminize göre optimize edebilirsiniz.
    optimize değer aralıkalırınızı periyoda göre olası aralığa çekerseniz daha kısa sürecektir.

    PHP Code:
    //Ayarlar
    bool MaskeVar true// false ise sizin sistem, true ise Güçlü Trend Yönü
    var GrafikSistemAd="SYS_TOMA_TRIX_SD"// Sisteminizin adını yazın.

    //Veriler
    var Sistem.GrafikVerileri;
    var 
    Sistem.GrafikFiyatSec("Açılış");

    //Sistem Getir
    var GrafikSistem Sistem.SistemGetir(GrafikSistemAdSistem.SembolSistem.Periyot);
    var 
    Yonler GrafikSistem.Yon;
    var 
    Seviyeler GrafikSistem.Seviye;

    //Optimizasyon-----------------------------------------------------------------------------------------
    for (int  p1 600p1 1p1-=10) {
    for (
    int  p2 600p2 1p2-=10) {
    for (
    int  p3 50p3 1p3-=10) {
     
    //1 DK Ayarları
    var Periyot1 p1;     // FXSnipper Periyodu.
    var Periyot2 p2;     // FXSnipper Periyodu.
    var Farkp3;          // FXSnipper > Değeri

    //Optimizasyon-----------------------------------------------------------------------------------------

    //Değişkenler
    string SonYon="F";
    string GercekSonYon="";
    bool AksamFlatIslemde=false;
    var 
    MaskeList Sistem.Liste(0);
    var 
    Maske 0;
    var 
    MaskeYon "F";

    //Indikatörler
    var FX Sistem.FxSniper(Periyot1 Periyot2 );

    //Maske Listesi
    for (int i 1V.Counti++)
    {
                if ( 
    FX[i-1] >= Fark    Maske 1;   // Güçlü AL
           
    else if ( FX[i-1] <= Fark*-Maske = -1;  // Güçlü SAT
           
    else Maske 0
          
           
    MaskeList[i] = Maske ;
    }

    //Çizgiler
    Sistem.Cizgiler[0].Deger FX ;
    Sistem.Cizgiler[0].Panel 2;  
    Sistem.Cizgiler[0].ActiveBool true;
    Sistem.Cizgiler[0].Aciklama="FX";

    var 
    RenkListesi = new List<Color>();
    for (
    int i 0V.Counti++)   RenkListesi.Add(Color.Gray);
    for (
    int i 0V.Counti++)
    {
        if (
    MaskeList[i] == 0RenkListesi[i] = Color.Yellow;
        else if (
    MaskeList[i] == 1RenkListesi[i] = Color.Green;
        else if (
    MaskeList[i] == -1RenkListesi[i] = Color.Red;
    }
    Sistem.Cizgiler[0].RenkListesi RenkListesi;

    //Optimizasyon-----------------------------------------------------------------------------------------
    for (int i 0V.Counti++) Sistem.Yon[i] = "";
    //Optimizasyon-----------------------------------------------------------------------------------------

    //Yön Kalıbı
    for (int i Yonler.Counti++)
    {

    if(
    MaskeVar MaskeYon = (MaskeList[i]=="F": (MaskeList[i]=="A":"S") );

    //Sistemde Yön var ise GercekSonYon'e ata.
    if( Yonler[i] != ""GercekSonYon=Yonler[i];
       
       
    //Maske aktif ise ve Flat saati içerisinde ise
       
    if ( MaskeVar && MaskeYon!="F" && MaskeYon != SonYon 
       {  
          
    SonYon MaskeYon;
          
    Sistem.Yon[i] = MaskeYon;
       }
       
    //Gerçek Sinyal: SonYon ile GercekSonYon aynı değil ise
       
    else if( MaskeYon=="F" && SonYon != GercekSonYon  )
       {
          
    SonYon GercekSonYon;
          
    Sistem.Yon[i] = GercekSonYon;
          if(
    Seviyeler[i]!=nullSistem.Seviye[i] = Seviyeler[i];
       }
    }

    //Optimizasyon-----------------------------------------------------------------------------------------
      
    Sistem.Optimizasyon(p1,p2,p3);
      }  
      }  
      }
    //Optimizasyon----------------------------------------------------------------------------------------- 

Sayfa 135/350 İlkİlk ... 3585125133134135136137145185235 ... SonSon

Yer İmleri

Yer İmleri

Gönderi Kuralları

  • Yeni konu açamazsınız
  • Konulara cevap yazamazsınız
  • Yazılara ek gönderemezsiniz
  • Yazılarınızı değiştiremezsiniz
  •