Sayfa 303/593 İlkİlk ... 203253293301302303304305313353403 ... SonSon
Arama sonucu : 4738 madde; 2,417 - 2,424 arası.

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

  1.  Alıntı Originally Posted by sercanaksu Yazıyı Oku
    değerli forum üyeleri,

    bir konuda desteğinize ihtiyacım var;
    matriksteki bir indicatörü ideal platformunda kullanabilecek duruma çevirmeme yardımcı olabilir misiniz?

    Saygılarımla
    y1:=mov(w,22,e);
    y2:=y1-atr(5);
    y3:=y1+atr(5);
    y4:=ıf(y1<prev,y2,ıf(y2>prev,y2,prev));
    y5:=ıf(y1>prev,y3,ıf(y3<prev,y3,prev));
    y6:=cross(y1,ref(y5,-1));
    y7:=cross(ref(y4,-1),y1);
    y8:=barssınce(y6)<barssınce(y7);
    y9:=ıf(y8=-1,y4,y5);
    y9

  2.  Alıntı Originally Posted by saruhan Yazıyı Oku
    İdeal sistemde bulunan EhlersFilter() in açık kodu paylaşabilir misiniz ?
    tabi TOMA gibi açık kod paylaşılamaz durumda değilse...
    Kod:
     public void CalculateEhlersFilter(List<cxBar> bars)
            {
                try
                {
                    if (bars.Count <= 0) return;
    
                    int ti = 15;
                    var price = bars.Select(x => (x.Open + x.High + x.Low + x.Close) / 4).ToList();
                    var coef = new List<float>(new float[bars.Count]);
                    var ehler = new List<float>(new float[bars.Count]);
    
                    for (int i = 5; i < bars.Count; i++)
                        coef[i] = Math.Abs(price[i] - price[i - 5]);
    
                    for (int i = ti; i < bars.Count; i++)
                    {
                        float deger1 = 0;
                        float deger2 = 0;
                        for (int k = 0; k < 15; k++)
                        {
                            var m = i - k;
                            deger1 += coef[m] * price[m];
                            deger2 += coef[m];
                        }
                        if (deger2 != 0)
                            ehler[i] = deger1 / deger2;
                    }
                }
                catch { }
            }
    vahap beyaz, ahmet çakar ....

  3.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Kod:
     public void CalculateEhlersFilter(List<cxBar> bars)
            {
                try
                {
                    if (bars.Count <= 0) return;
    
                    int ti = 15;
                    var price = bars.Select(x => (x.Open + x.High + x.Low + x.Close) / 4).ToList();
                    var coef = new List<float>(new float[bars.Count]);
                    var ehler = new List<float>(new float[bars.Count]);
    
                    for (int i = 5; i < bars.Count; i++)
                        coef[i] = Math.Abs(price[i] - price[i - 5]);
    
                    for (int i = ti; i < bars.Count; i++)
                    {
                        float deger1 = 0;
                        float deger2 = 0;
                        for (int k = 0; k < 15; k++)
                        {
                            var m = i - k;
                            deger1 += coef[m] * price[m];
                            deger2 += coef[m];
                        }
                        if (deger2 != 0)
                            ehler[i] = deger1 / deger2;
                    }
                }
                catch { }
            }
    Sn Tiberius çok teşekkür ederim...

  4.  Alıntı Originally Posted by karazepin Yazıyı Oku
    mavilim ve T3 kodlarıyla bir algo oluşturmak istiyorum,
    fiyat mavilimin üstünde olsun,
    fiyat t3'i yukarı kırınca al,buraya kadar tamam ama şu kısım nasıl yapılabilinir? t3'ün yönü aşağı dönünce sat .


    var close = Sistem.GrafikFiyatSec("Kapanis");
    var M1 = Sistem.MA(close, "Weighted", 3);
    var M2 = Sistem.MA(M1, "Weighted", 5);
    var M3 = Sistem.MA(M2, "Weighted", 8);
    var M4 = Sistem.MA(M3, "Weighted", 13);
    var M5 = Sistem.MA(M4, "Weighted", 21);
    var MAVW = Sistem.MA(M5, "Weighted", 34);

    Sistem.Cizgiler[34].Deger = MAVW;

    var period = 5;
    float a = 0.70f;

    var C = Sistem.GrafikFiyatSec("Kapanis");
    var H = Sistem.GrafikFiyatSec("Yuksek");
    var L = Sistem.GrafikFiyatSec("Dusuk");

    var x = Sistem.Liste(0);
    for (int i=1; i < Sistem.BarSayisi; i++)
    x[i] = (H[i]+L[i]+2*C[i])/4;

    var e1 = Sistem.MA(x, "variable", period);
    var e2 = Sistem.MA(e1, "variable", period);
    var e3 = Sistem.MA(e2, "variable", period);
    var e4 = Sistem.MA(e3, "variable", period);
    var e5 = Sistem.MA(e4, "variable", period);
    var e6 = Sistem.MA(e5, "variable", period);

    var c1 = -a * a * a;
    var c2 = 3 * a * a + 3 * a * a * a;
    var c3 = -6 * a * a - 3 * a -3 * a * a * a;
    var c4 = 1 + 3 * a + a * a * a + 3 * a * a;

    var T3 = Sistem.Liste(Sistem.BarSayisi, 0);
    for (int i = 1; i<Sistem.BarSayisi; i++)
    T3[i] = c1 * e6[i] + c2 * e5[i] +c3 * e4[i] + c4 * e3[i];

    Sistem.Cizgiler[0].Deger = T3;
    Sistem.Cizgiler[0].Aciklama = "T3";
    vahap beyaz, ahmet çakar ....

  5.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Kod:
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var Yon = Sistem.Yon;
    
    var MAVW = Sistem.MAM(C, "Weighted", 3, 5, 8, 12, 21, 34);
    var T3 = Sistem.TillsonT3(5, 0.7);
    
    // strateji
    var SonYon = "";
    var Sinyal = "";
    
    for (int i = 10; i < V.Count; i++)
    {
        Sinyal = "";
    
        if (C[i - 1] < MAVW[i] && C[i] >= MAVW[i]) Sinyal = "A";
        else if (C[i - 1] > MAVW[i] && C[i] <= MAVW[i]) Sinyal = "S";
    
        else if (SonYon == "A" && T3[i] <= T3[i - 1] && T3[i - 1] > T3[i - 2]) Sinyal = "F";
        else if (SonYon == "S" && T3[i] >= T3[i - 1] && T3[i - 1] < T3[i - 2]) Sinyal = "F";
    
        // Yön Kalıbı
        if (Sinyal == "A" && SonYon != "A")
        {
            Yon[i] = "A";
            SonYon = Yon[i];
        }
        if (Sinyal == "S" && SonYon != "S")
        {
            Yon[i] = "S";
            SonYon = Yon[i];
        }
        if (Sinyal == "F" && SonYon != "F")
        {
            Yon[i] = "F";
            SonYon = Yon[i];
        }
    }
    
    
    
    Sistem.GetiriHesapla("01/01/2000", 0.0);
    
    Sistem.Cizgiler[0].Deger = MAVW;
    Sistem.Cizgiler[1].Deger = T3;
    Sistem.Cizgiler[1].Deger = Sistem.GetiriKZ;
    vahap beyaz, ahmet çakar ....

  6.  Alıntı Originally Posted by Tiberius Yazıyı Oku
    Kod:
    var V = Sistem.GrafikVerileri;
    var C = Sistem.GrafikFiyatSec("Kapanis");
    var Yon = Sistem.Yon;
    
    var MAVW = Sistem.MAM(C, "Weighted", 3, 5, 8, 12, 21, 34);
    var T3 = Sistem.TillsonT3(5, 0.7);
    
    // strateji
    var SonYon = "";
    var Sinyal = "";
    
    for (int i = 10; i < V.Count; i++)
    {
        Sinyal = "";
    
        if (C[i - 1] < MAVW[i] && C[i] >= MAVW[i]) Sinyal = "A";
        else if (C[i - 1] > MAVW[i] && C[i] <= MAVW[i]) Sinyal = "S";
    
        else if (SonYon == "A" && T3[i] <= T3[i - 1] && T3[i - 1] > T3[i - 2]) Sinyal = "F";
        else if (SonYon == "S" && T3[i] >= T3[i - 1] && T3[i - 1] < T3[i - 2]) Sinyal = "F";
    
        // Yön Kalıbı
        if (Sinyal == "A" && SonYon != "A")
        {
            Yon[i] = "A";
            SonYon = Yon[i];
        }
        if (Sinyal == "S" && SonYon != "S")
        {
            Yon[i] = "S";
            SonYon = Yon[i];
        }
        if (Sinyal == "F" && SonYon != "F")
        {
            Yon[i] = "F";
            SonYon = Yon[i];
        }
    }
    
    
    
    Sistem.GetiriHesapla("01/01/2000", 0.0);
    
    Sistem.Cizgiler[0].Deger = MAVW;
    Sistem.Cizgiler[1].Deger = T3;
    Sistem.Cizgiler[1].Deger = Sistem.GetiriKZ;
    çok teşekkür ederim sayın Tiberius,elinize sağlık.

  7.  Alıntı Originally Posted by sercanaksu Yazıyı Oku
    y1:=mov(w,22,e);
    y2:=y1-atr(5);
    y3:=y1+atr(5);
    y4:=ıf(y1<prev,y2,ıf(y2>prev,y2,prev));
    y5:=ıf(y1>prev,y3,ıf(y3<prev,y3,prev));
    y6:=cross(y1,ref(y5,-1));
    y7:=cross(ref(y4,-1),y1);
    y8:=barssınce(y6)<barssınce(y7);
    y9:=ıf(y8=-1,y4,y5);
    y9
    Kod:
    var V = Sistem.GrafikVerileri ;
    var C = Sistem.GrafikFiyatOku(V, "Kapanis" ) ;
    var H = Sistem.GrafikFiyatOku(V, "Yuksek" ) ;
    var L = Sistem.GrafikFiyatOku(V, "Dusuk" ) ;
    var O = Sistem.GrafikFiyatOku(V,"Acilis") ;
    
    
    var y1=Sistem.MA(22,"Exp","Ortalama");
    var atr5=Sistem.AverageTrueRange(5);
    var y2=Sistem.ListeFark(y1,atr5);
    var y3=Sistem.ListeTopla(y1,atr5);
    var y4=Sistem.Liste(0);
    var y5=Sistem.Liste(0);
    var y9=Sistem.Liste(0);
    var y8=Sistem.Liste(0);
    
    
    
    
    
    for (int i = 20; i<Sistem.BarSayisi; i++)
    
    {
    if ( y1[i]<y1[i-1] )
    y4[i]=y2[i];
    
    else if ( y2[i]>y2[i-1] ) 
    y4[i]=y2[i];
    else
    y4[i]=y4[i-1];
    
    if ( y1[i]>y1[i-1] )
    y5[i]=y3[i];
    else if ( y3[i]<y3[i-1] )
    y5[i]=y3[i];
    else
    y5[i]=y5[i-1];
    
    }
    
    int y6=0;
    int y7=0;
    
    
    for (int i = 20; i<Sistem.BarSayisi; i++)
    
    {
    
    if ( y1[i]>y5[i-1] && y1[i-1]<=y5[i-2] )
    y6=i;
    if ( y4[i-1]>y1[i] && y4[i-2]<=y1[i-1] )
    y7=i;
    
    if (Sistem.Periyot=="G" || Sistem.Periyot=="H" || Sistem.Periyot=="A")
    {
    if (y6<y7)
    y9[i]=y5[i];
    
    else if ( y6>=y7)
    y9[i]=y4[i];
    }
    
    else
    {
    if (y6<y7)
    y9[i]=y5[i]/100;
    
    else if ( y6>=y7)
    y9[i]=y4[i]/100;
    }
    
    }
    
    
    Sistem.Cizgiler[0].Deger=y9;
    Kontrol ediniz.

  8.  Alıntı Originally Posted by umit_ykoc Yazıyı Oku
    Kod:
    var V = Sistem.GrafikVerileri ;
    var C = Sistem.GrafikFiyatOku(V, "Kapanis" ) ;
    var H = Sistem.GrafikFiyatOku(V, "Yuksek" ) ;
    var L = Sistem.GrafikFiyatOku(V, "Dusuk" ) ;
    var O = Sistem.GrafikFiyatOku(V,"Acilis") ;
    
    
    var y1=Sistem.MA(22,"Exp","Ortalama");
    var atr5=Sistem.AverageTrueRange(5);
    var y2=Sistem.ListeFark(y1,atr5);
    var y3=Sistem.ListeTopla(y1,atr5);
    var y4=Sistem.Liste(0);
    var y5=Sistem.Liste(0);
    var y9=Sistem.Liste(0);
    var y8=Sistem.Liste(0);
    
    
    
    
    
    for (int i = 20; i<Sistem.BarSayisi; i++)
    
    {
    if ( y1[i]<y1[i-1] )
    y4[i]=y2[i];
    
    else if ( y2[i]>y2[i-1] ) 
    y4[i]=y2[i];
    else
    y4[i]=y4[i-1];
    
    if ( y1[i]>y1[i-1] )
    y5[i]=y3[i];
    else if ( y3[i]<y3[i-1] )
    y5[i]=y3[i];
    else
    y5[i]=y5[i-1];
    
    }
    
    int y6=0;
    int y7=0;
    
    
    for (int i = 20; i<Sistem.BarSayisi; i++)
    
    {
    
    if ( y1[i]>y5[i-1] && y1[i-1]<=y5[i-2] )
    y6=i;
    if ( y4[i-1]>y1[i] && y4[i-2]<=y1[i-1] )
    y7=i;
    
    if (Sistem.Periyot=="G" || Sistem.Periyot=="H" || Sistem.Periyot=="A")
    {
    if (y6<y7)
    y9[i]=y5[i];
    
    else if ( y6>=y7)
    y9[i]=y4[i];
    }
    
    else
    {
    if (y6<y7)
    y9[i]=y5[i]/100;
    
    else if ( y6>=y7)
    y9[i]=y4[i]/100;
    }
    
    }
    
    
    Sistem.Cizgiler[0].Deger=y9;
    Kontrol ediniz.
    Çok teşekkür ederim. Sanırım beceremedim. Bunu sistem tanımlarına değil de inditor bölümüne ekliyoruyz değl mi?

Sayfa 303/593 İlkİlk ... 203253293301302303304305313353403 ... 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
  •