Sayfa 134/350 İlkİlk ... 3484124132133134135136144184234 ... SonSon
Arama sonucu : 2796 madde; 1,065 - 1,072 arası.

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

  1.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Faydası olmaz üstat, zaman kaybı olur.

    Lisansda
    Sinyaller ve Sistemler (Signals & Systems)
    Olasılık (Probability & Random Variables)
    Kontrol (Control Theory)

    Lisansüstünde
    Bilgi (Information Theory)
    Aktif Filtreler (Active Filters)
    Tespit Etme, Belirleme (Detection, Estimation, Modulation Theory)

    gibi dersler almış biri olarak bana faydası olmamış, sana nasıl olsun


    Internette surf edip filtre formulleri bulup onları denemek zamanı daha anlamlı kullanmak olur.
    Metatrader sayfasında sonsuz sistem var, onları bizim yerli piyasaya uyarlamak da iyi bir çalışma olur.

    Metatrader sayfasında her katagoride sistemler var.
    Hepsinden bir kaç taneye sahip olsan riskini de azaltmış olursun
    vahap beyaz, ahmet çakar ....

  2. mesela bir örnek

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

  3. #1067
    Duhul
    Feb 2017
    İkamet
    afyonkarahisar
    Gönderi
    791
     Alıntı Originally Posted by erhanacikgoz1 Yazıyı Oku
    mesela bir örnek

    erhan bey mahsuru yoksa paylaşmak isterseniz kodunu paylaşabilirmisiniz lütfen

  4.  Alıntı Originally Posted by alekss Yazıyı Oku
    erhan bey mahsuru yoksa paylaşmak isterseniz kodunu paylaşabilirmisiniz lütfen
    Çok iyi olur tabi mahsuru yok ise +1...
    Yazdıklarım yatırım danışmanlığı kapsamında olmayıp doğacak kar veya zarardan sorumlu değilim...

  5.  Alıntı Originally Posted by Zülfü Aşkın Yazıyı Oku
    Çok iyi olur tabi mahsuru yok ise +1...
    idealin kod örneği.

    bu örnek sadece bu sayede birşeyler elde edemeyebilirsiniz. Geliştirmeniz lazım.

    Kod:
    var SistemAdi = "sistemmmmmmmadı";
    
    var Seviyeler = new List<float>();
    Seviyeler.Add(65);
    Seviyeler.Add(60);	
    Seviyeler.Add(55);	
    Seviyeler.Add(50);	
    Seviyeler.Add(45);	
    Seviyeler.Add(40);	
    Seviyeler.Add(35);	
    Seviyeler.Add(30);	
    Seviyeler.Add(25);	
    Seviyeler.Add(20);	
    Seviyeler.Add(15);	
    Seviyeler.Add(10);	
    Seviyeler.Add(05);	
    	
    
    
    
    
    
    
    var V = Sistem.GrafikVerileri;
    var OrjinalSistem = Sistem.SistemGetir(SistemAdi, Sistem.Sembol, Sistem.Periyot);
    var GetiriList = OrjinalSistem.GetiriKZ;
    Sistem.Cizgiler[0].Deger = GetiriList;
    
    for (int i = 0; i < Seviyeler.Count; i++)
    {
        Sistem.Cizgiler[i + 10].ActiveBool = true;
        Sistem.Cizgiler[i + 10].Deger = Sistem.Liste(Seviyeler[i]);
        Sistem.Cizgiler[i + 10].Panel = 2;
        Sistem.Cizgiler[i + 10].Renk = Color.IndianRed;
        Sistem.Cizgiler[i + 10].Stil = 2;
    }
    
    var StatuListesi = Sistem.Liste(0);
    var SonStatu = 0;
    for (int i = 1; i < V.Count; i++)
    {
        for (int j = 0; j < Seviyeler.Count; j++)
        {
            if (GetiriList[i - 1] > Seviyeler[j] && GetiriList[i] <= Seviyeler[j])
            {
                SonStatu = 0;
                break;
            }
            if (GetiriList[i - 1] < Seviyeler[j] && GetiriList[i] >= Seviyeler[j])
            {
                SonStatu = 1;
                break;
            }
        }
        StatuListesi[i] = SonStatu;
    }
    
    var RenkListesi = new List<Color>();
    for (int i = 0; i < Sistem.BarSayisi; i++)
        RenkListesi.Add(Color.Gray);
    for (int i = 1; i < V.Count; i++)
    {
        if (StatuListesi[i] == 0)
            RenkListesi[i] = Color.Gray;
        else if (StatuListesi[i] == 1)
            RenkListesi[i] = Color.Cyan;
    }
    Sistem.Cizgiler[0].RenkListesi = RenkListesi;
    
    var OrjinalPozisyonList = Sistem.Liste(0);
    var Yon = "";
    for (int i = 0; i < V.Count; i++)
    {
        if (OrjinalSistem.Yon[i] == "A")
            Yon = "A";
        else if (OrjinalSistem.Yon[i] == "S")
            Yon = "S";
        else if (OrjinalSistem.Yon[i] == "F")
            Yon = "F";
    
        if (Yon == "A")
            OrjinalPozisyonList[i] = 1;
        else if (Yon == "S")
            OrjinalPozisyonList[i] = -1;
        else if (Yon == "F")
            OrjinalPozisyonList[i] = 0;
    }
    var YeniPozisyonList = Sistem.Liste(0);
    var SonYon = "";
    for (int i = 0; i < V.Count; i++)
    {
        if (StatuListesi[i] == 0)
        {
            if (SonYon != "F")
            {
                Sistem.Yon[i] = "F";
                SonYon = Sistem.Yon[i];
            }
        }
        else
        {
            if (SonYon != "A" && OrjinalPozisyonList[i] == 1)
            {
                Sistem.Yon[i] = "A";
                SonYon = Sistem.Yon[i];
            }
            if (SonYon != "S" && OrjinalPozisyonList[i] == -1)
            {
                Sistem.Yon[i] = "S";
                SonYon = Sistem.Yon[i];
            }
            if (SonYon != "F" && OrjinalPozisyonList[i] == 0)
            {
                Sistem.Yon[i] = "F";
                SonYon = Sistem.Yon[i];
            }
        }
    }
    
    
    Sistem.GetiriHesapla("01/01/2007", 0.0);
    Sistem.Cizgiler[7].Deger = Sistem.GetiriKZ;
    Senin almaya cesaret edemediğin riskleri alanlar, senin yaşamak istediğin hayatı yaşarlar..
    Sokrates twit @erhanacikgoz1

  6. 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.####")); 

  7.  Alıntı Originally Posted by matador38 Yazıyı Oku
    Orhan bey elinize sağlık.
    KZ eğrisi flat olduğunda renksiz(gri) işlemde açık mavi.
    KZ eğrisinde açık mavi kısımları birleştiren yeni bir KZ eğrisi çizgisi oluşturulabilirmi?
    yani bu filtrenin yaptığı yeni KZ ı net görebilsek. örneğin sistem KZ eğrisi 90bini aşağı kırınca flat olmuş, 80bini yeniden yukarı kırınca sistem pozuna geçmiş. aradaki 10bin kazancı eski getirinin üzerine ekleyerek giden bir eğri. mümkünmü?
    rica ederim, yeni KZ eğrisi çizgisi de eklendi.

  8.  Alıntı Originally Posted by şef Yazıyı Oku
    sn orhan bey, kz değişmesin diye verdiğiniz 2. sistemde yatay çizgiler etkin değil , çalışmıyor. emeğinize teşekkür ederim.
    kz eğrisi ile ilgili sistemi sn anonim daha önceki senelerde, belki önceki forumda vermişti. bende kazanınca kumar masasından kalkan sistem adıyla bir sistem önerisinde bulunmuştum. o zaman kimsenin pek dikkatini çekmemişti. lakin elimizde sn ümit in elindeki sistemler olmadığından bir şekilde zarardan kaçınmamız gerekiyordu. buna karşın forumdada değinildi, nedenini bilmediğim bir nedenle(kz eğrisi ile ilgili) robot zaman zaman al-sat yada sat- al yapıyordu. bu nedenle tam kullanamadım. manuel olarak olabildiğince uygulamaya çalıştım, devamlı ekran başında da olmadığından tam uyamadım.
    bu nedenle değişmeyen kz eğrisi önemli.
    yatay çizgiler etkin görünüyor ama belki farklı değerlerde hata oluşuyor olabilir, çıkmayan bir örnek atabilirseniz incelerim.

Sayfa 134/350 İlkİlk ... 3484124132133134135136144184234 ... 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
  •