Sayfa 228/593 İlkİlk ... 128178218226227228229230238278328 ... SonSon
Arama sonucu : 4741 madde; 1,817 - 1,824 arası.

Konu: İDEAL veri terminalinde /Sistem/İndikatör/Robot

  1.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Saatlik
    Şu iş görebilir, test etmek lazım

    Kod:
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var TOMA = Sistem.TOMA(30, 0.5);
    var EMA = Sistem.MA(C, "Exp", 30);
    
    var SaatBaslangicList = Sistem.Liste(0);
    for (int i = 1; i < Sistem.BarSayisi; i++)
        SaatBaslangicList[i] = (V[i].Date.Hour != V[i - 1].Date.Hour) ? V[i].Open : SaatBaslangicList[i - 1];
    
    
    var SonYon = "";
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (C[i] > SaatBaslangicList[i] && EMA[i] > TOMA[i] && SonYon != "A")
        {
            SonYon = "A";
            Sistem.Yon[i] = "A";
        }
        if (C[i] < SaatBaslangicList[i] && EMA[i] < TOMA[i] && SonYon != "S")
        {
            SonYon = "S";
            Sistem.Yon[i] = "S";
        }
    }
    
    Sistem.Cizgiler[0].Deger = TOMA;
    Sistem.Cizgiler[1].Deger = EMA;
    Sistem.Cizgiler[2].Deger = SaatBaslangicList;

    Gün Açılış (test edin)
    Kod:
    
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var TOMA = Sistem.TOMA(30, 0.5);
    var EMA = Sistem.MA(C, "Exp", 30);
    
    var GunBaslangicList = Sistem.Liste(0);
    for (int i = 1; i < Sistem.BarSayisi; i++)
        GunBaslangicList[i] = (V[i].Date.Day != V[i - 1].Date.Day) ? V[i].Open : GunBaslangicList[i - 1];
    
    
    var SonYon = "";
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (C[i] > GunBaslangicList[i] && EMA[i] > TOMA[i] && SonYon != "A")
        {
            SonYon = "A";
            Sistem.Yon[i] = "A";
        }
        if (C[i] < GunBaslangicList[i] && EMA[i] < TOMA[i] && SonYon != "S")
        {
            SonYon = "S";
            Sistem.Yon[i] = "S";
        }
    }
    
    Sistem.Cizgiler[0].Deger = TOMA;
    Sistem.Cizgiler[1].Deger = EMA;
    Sistem.Cizgiler[2].Deger = GunBaslangicList;
    vahap beyaz, ahmet çakar ....

  2. Teşekkür ederim. Test edicem. Kolay gelsin.

     Alıntı Originally Posted by Tiberius Yazıyı Oku
    Gün Açılış (test edin)
    Kod:
    
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var TOMA = Sistem.TOMA(30, 0.5);
    var EMA = Sistem.MA(C, "Exp", 30);
    
    var GunBaslangicList = Sistem.Liste(0);
    for (int i = 1; i < Sistem.BarSayisi; i++)
        GunBaslangicList[i] = (V[i].Date.Day != V[i - 1].Date.Day) ? V[i].Open : GunBaslangicList[i - 1];
    
    
    var SonYon = "";
    for (int i = 1; i < Sistem.BarSayisi; i++)
    {
        if (C[i] > GunBaslangicList[i] && EMA[i] > TOMA[i] && SonYon != "A")
        {
            SonYon = "A";
            Sistem.Yon[i] = "A";
        }
        if (C[i] < GunBaslangicList[i] && EMA[i] < TOMA[i] && SonYon != "S")
        {
            SonYon = "S";
            Sistem.Yon[i] = "S";
        }
    }
    
    Sistem.Cizgiler[0].Deger = TOMA;
    Sistem.Cizgiler[1].Deger = EMA;
    Sistem.Cizgiler[2].Deger = GunBaslangicList;

  3. merhabalar bu kodu idealde nasıl yazabiliriz ,bir şeyler denedim ama olmadı. eski bir kod vardı ondan yararlanmaya çalıştım.
    LEN:=Input("LENGTH",2,100,10);
    MA1PERIOD:=Input("FAST MA LENGTH",2,100,5);
    MA2PERIOD:=Input("SLOW MA LENGTH",2,100,22);
    MAXH:=HHV(HIGH,LEN);
    MINT:=LLV(LOW,LEN);
    VALUE:=0.33*2*((C-minl)/(MAXH-minl)-0.5)+0,67*PREV;
    FISH:=0.5*LOG((1+VALUE)/(1-VALUE))+0.5*PREV;
    MA1:=MOV(FISH,MA1PERIOD,S);
    MA2:=MOV(MA1,MA2PERIOD,W);
    FISH;FISH*-(FISH>0);FISH*-(FISH<0);MA1;MA2;0
    yararlandığım kod aşagıdaki kod

    var len = 10;
    var H = Sistem.GrafikFiyatSec("Yuksek");
    var L = Sistem.GrafikFiyatSec("Dusuk");


    var pr = Sistem.Liste(0);
    var val1 = Sistem.Liste(0);
    var value1 = Sistem.Liste(0);
    var fish = Sistem.Liste(0);

    for (int i=1; i < Sistem.BarSayisi; i++)
    {
    pr[i] = (H[i] + L[i] )/2;
    }
    var maxh = Sistem.HHV(len,pr);
    var minl = Sistem.LLV(len,pr);

    for (int i=2; i < Sistem.BarSayisi; i++)
    {
    if((maxh[i] - minl[i]) != 0)
    val1[i] =0.33f * 2 * ((pr[i]-minl[i]) / (maxh[i]-minl[i])-0.5f) + 0.67f * val1[i-1];

    if(val1[i] > 0.99f)
    value1[i] = 0.999f;
    else if(val1[i] < -0.99f)
    value1[i] =-0.999f;
    else
    value1[i] = val1[i];

    if((1 - value1[i]) != 0)
    fish[i] = 0.5f * (float)Math.Log((1 + value1[i]) / (1 - value1[i])) + 0.5f * fish[i-1];
    }
    Sistem.Cizgiler[0].Deger = fish;
    Sistem.Cizgiler[1].Deger = Sistem.Liste(0);

  4. #1820
    sistem sinyal ürettikten sonra diyelim ki 100 bar önce al sinyali verdi, şimdi sat sinyali verdiğinde önceki al sinyalini siliyor ve bir önceki sat sinyaliyle birleştiriyor, grafik üzerinde bakınca sistem çok mükemmel görünüyor ama sanal testte çuvallıyor, bunun sebebi ne olabilir, geçmiş sinyallerin silinmemesi için ne yapmam gerekiyor

  5.  Alıntı Originally Posted by luca Yazıyı Oku
    sistem sinyal ürettikten sonra diyelim ki 100 bar önce al sinyali verdi, şimdi sat sinyali verdiğinde önceki al sinyalini siliyor ve bir önceki sat sinyaliyle birleştiriyor, grafik üzerinde bakınca sistem çok mükemmel görünüyor ama sanal testte çuvallıyor, bunun sebebi ne olabilir, geçmiş sinyallerin silinmemesi için ne yapmam gerekiyor
    sisteminiz repaint yapiordur. dolayisiyla test ekrannda ucuk puanlar cikabilir. stratejinizi revize etmeniz gerekir. bazi barlarda ayni anda hem al hem sat a geciren sartlar vardir.
    bang bang you shot me down..

  6.  Alıntı Originally Posted by ozgeer Yazıyı Oku
    merhabalar bu kodu idealde nasıl yazabiliriz ,bir şeyler denedim ama olmadı. eski bir kod vardı ondan yararlanmaya çalıştım.
    LEN:=Input("LENGTH",2,100,10);
    MA1PERIOD:=Input("FAST MA LENGTH",2,100,5);
    MA2PERIOD:=Input("SLOW MA LENGTH",2,100,22);
    MAXH:=HHV(HIGH,LEN);
    MINT:=LLV(LOW,LEN);
    VALUE:=0.33*2*((C-minl)/(MAXH-minl)-0.5)+0,67*PREV;
    FISH:=0.5*LOG((1+VALUE)/(1-VALUE))+0.5*PREV;
    MA1:=MOV(FISH,MA1PERIOD,S);
    MA2:=MOV(MA1,MA2PERIOD,W);
    FISH;FISH*-(FISH>0);FISH*-(FISH<0);MA1;MA2;0
    yararlandığım kod aşagıdaki kod

    var len = 10;
    var H = Sistem.GrafikFiyatSec("Yuksek");
    var L = Sistem.GrafikFiyatSec("Dusuk");


    var pr = Sistem.Liste(0);
    var val1 = Sistem.Liste(0);
    var value1 = Sistem.Liste(0);
    var fish = Sistem.Liste(0);

    for (int i=1; i < Sistem.BarSayisi; i++)
    {
    pr[i] = (H[i] + L[i] )/2;
    }
    var maxh = Sistem.HHV(len,pr);
    var minl = Sistem.LLV(len,pr);

    for (int i=2; i < Sistem.BarSayisi; i++)
    {
    if((maxh[i] - minl[i]) != 0)
    val1[i] =0.33f * 2 * ((pr[i]-minl[i]) / (maxh[i]-minl[i])-0.5f) + 0.67f * val1[i-1];

    if(val1[i] > 0.99f)
    value1[i] = 0.999f;
    else if(val1[i] < -0.99f)
    value1[i] =-0.999f;
    else
    value1[i] = val1[i];

    if((1 - value1[i]) != 0)
    fish[i] = 0.5f * (float)Math.Log((1 + value1[i]) / (1 - value1[i])) + 0.5f * fish[i-1];
    }
    Sistem.Cizgiler[0].Deger = fish;
    Sistem.Cizgiler[1].Deger = Sistem.Liste(0);
    metastockdan anlamam ama ideal kodu,fisher transforma benziyor. eski forumda paylasilmisti diye hatirliyorum. macd da idealde kolaylikla yazilabilir. bunlarla ilgili strateji kurulmussa ustte ikisinin ve veya sartlariyla birlestirilebilir.
    bang bang you shot me down..

  7. #1823
     Alıntı Originally Posted by stradivarius Yazıyı Oku
    sisteminiz repaint yapiordur. dolayisiyla test ekrannda ucuk puanlar cikabilir. stratejinizi revize etmeniz gerekir. bazi barlarda ayni anda hem al hem sat a geciren sartlar vardir.
    for (int i=2; i < Sistem.BarSayisi; i++)
    {
    if ((Z[i] > Z[i-1] && Z[i-1] < Z[i-2] ) || ( Z[i] < Z[i-1] && Z[i-1] > Z[i-2]))
    last[i] = Z[i-1];

    else
    last[i] = last[i-1];
    }

    var SonYon = "";
    for (int i=2; i < Sistem.BarSayisi; i++)
    {

    if ((SonYon != "A" && C[i-1] > last[i]) ) // alış


    {
    Sistem.Yon[i] = "A";
    SonYon = "A";
    }
    else if ((SonYon != "S" && C[i-1] < last[i]) ) // satış

    {
    Sistem.Yon[i] = "S";
    SonYon = "S";
    }
    }


    hocam burada ki yanlışlık ne olabilir ??

  8. İDEAL veri terminalinde /Sistem/İndikatör/Robot

     Alıntı Originally Posted by luca Yazıyı Oku
    sistem sinyal ürettikten sonra diyelim ki 100 bar önce al sinyali verdi, şimdi sat sinyali verdiğinde önceki al sinyalini siliyor ve bir önceki sat sinyaliyle birleştiriyor, grafik üzerinde bakınca sistem çok mükemmel görünüyor ama sanal testte çuvallıyor, bunun sebebi ne olabilir, geçmiş sinyallerin silinmemesi için ne yapmam gerekiyor
    Zig zag ve türevlerinden medet ummayi birakip bu piyasada tutunabilmenin cok zor ve ciddi emek isteyen bir iş olduğunu bilmeniz gerekiyor. Gerisi zaten gelir en önemli husus bu.

Sayfa 228/593 İlkİlk ... 128178218226227228229230238278328 ... 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
  •