Sayfa 437/595 İlkİlk ... 337387427435436437438439447487537 ... SonSon
Arama sonucu : 4754 madde; 3,489 - 3,496 arası.

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

  1.  Alıntı Originally Posted by sonli Yazıyı Oku
    m büyük ihtimalle hareketli ortalama değişkeni. Ama kodun bütününü görmek lazım, bu sadece kod parçacığı..

    Geldik, gidiyoruz..
    Kod:
    study("Pseudo Polynomial Channel",overlay=true)
    length = input(14),morph = input(0.9,minval=0,maxval=1),mult = input(1.),flatten = input(1.)
    //----
    x = n
    y = close
    m(a,b) =>
        p = morph * a + (1-morph) * b
    k = nz(m(k[length],y),y) + (x-x[length])/(x[length*2]-x[length]) * (nz(m(k[length*2],y),y) - nz(m(k[length],y),y))/flatten
    k1 = sma(k,length)
    er = cum(abs(y-k1))/n * mult
    //----
    a = k1 + er
    b = k1 - er
    //----
    A = plot(a,color=#2196f3,linewidth=2,transp=0)
    plot(k1,color=#e65100,linewidth=2,transp=0)
    B = plot(b,color=#ff1100,linewidth=2,transp=0)
    fill(A,B,#2196f3,transp=95)

  2. idealde super trend ve matriks de ki ott indikatörünün kodu olan var mı ğaylaşırsa makbule geçer

  3.  Alıntı Originally Posted by anonimm Yazıyı Oku
    Kod:
    study("Pseudo Polynomial Channel",overlay=true)
    length = input(14),morph = input(0.9,minval=0,maxval=1),mult = input(1.),flatten = input(1.)
    //----
    x = n
    y = close
    m(a,b) =>
        p = morph * a + (1-morph) * b
    k = nz(m(k[length],y),y) + (x-x[length])/(x[length*2]-x[length]) * (nz(m(k[length*2],y),y) - nz(m(k[length],y),y))/flatten
    k1 = sma(k,length)
    er = cum(abs(y-k1))/n * mult
    //----
    a = k1 + er
    b = k1 - er
    //----
    A = plot(a,color=#2196f3,linewidth=2,transp=0)
    plot(k1,color=#e65100,linewidth=2,transp=0)
    B = plot(b,color=#ff1100,linewidth=2,transp=0)
    fill(A,B,#2196f3,transp=95)
    Uğraştım biraz ama beceremedim, sıkıntı m değil, onunla fonksiyon tanımlıyor gibi birşey.. x ile neyi ifade ettiğini tam anlayamadım..
    m(a,b) yapısına şunu uygula diyor: morph * a + (1-morph) * b
    x ve y(kapanış normalde) rastgele tanımlayıp çizsin gerisine sonra bakarım dedim ama yemedi
    m çiziyor ama m1 olamadı..


    var C = Sistem.GrafikFiyatSec("Kapanis");
    int i=Sistem.BarSayisi-1;
    int length=14;
    float morph=0.9f;
    int mult=1;
    int flatten=1;
    var x=Sistem.GrafikFiyatSec("Yuksek"); //muhtemelen anlık fiyat ya da bar no
    var y=Sistem.Ref(C,-1);

    var k=Sistem.Liste(0);

    for (int j = 100; j < Sistem.BarSayisi; j++)
    {
    var m = morph*k[j-length] + (1-morph)*y[j] ;
    if(m==0) m=y[j];
    var m2 = morph*k[j-length*2] + (1-morph)*y[j] ;
    if(m2==0) m2=y[j];

    var m1= (x[j]-x[j-length])/( x[j-length*2]-x[j-length])*(m2-m)/flatten ;

    //k = nz(m(k[length],y),y) + (x-x[length])/(x[length*2]-x[length]) * (nz(m(k[length*2],y),y) - nz(m(k[length],y),y))/flatten


    k[j] = m + m1;

    }

    Sistem.Cizgiler[0].Deger = k;
    Biçare gönüller! Ne giden son gemidir bu!
    Hicranlı hayatın ne de son matemidir bu.

  4. İyi bayramlar,

    Periyodları farklı olan 2 sistemi nasıl birleştiririz? Aynı yönde ise işlem olacak, yönler farklı ise pozisyonda iken bile flat olacak ve aynı yönde sinyale kadar bekleyecek.

    Kütüphanede hazır olan sistem birleştir ile repaint oluyor. Daha önce deneyen var mı?
    Bir an önce görülsün diye Akdeniz, Toroslar'da ağaçlar hep çocuk kalır...

  5.  Alıntı Originally Posted by sonli Yazıyı Oku
    Uğraştım biraz ama beceremedim, sıkıntı m değil, onunla fonksiyon tanımlıyor gibi birşey.. x ile neyi ifade ettiğini tam anlayamadım..
    m(a,b) yapısına şunu uygula diyor: morph * a + (1-morph) * b
    x ve y(kapanış normalde) rastgele tanımlayıp çizsin gerisine sonra bakarım dedim ama yemedi
    m çiziyor ama m1 olamadı..


    var C = Sistem.GrafikFiyatSec("Kapanis");
    int i=Sistem.BarSayisi-1;
    int length=14;
    float morph=0.9f;
    int mult=1;
    int flatten=1;
    var x=Sistem.GrafikFiyatSec("Yuksek"); //muhtemelen anlık fiyat ya da bar no
    var y=Sistem.Ref(C,-1);

    var k=Sistem.Liste(0);

    for (int j = 100; j < Sistem.BarSayisi; j++)
    {
    var m = morph*k[j-length] + (1-morph)*y[j] ;
    if(m==0) m=y[j];
    var m2 = morph*k[j-length*2] + (1-morph)*y[j] ;
    if(m2==0) m2=y[j];

    var m1= (x[j]-x[j-length])/( x[j-length*2]-x[j-length])*(m2-m)/flatten ;

    //k = nz(m(k[length],y),y) + (x-x[length])/(x[length*2]-x[length]) * (nz(m(k[length*2],y),y) - nz(m(k[length],y),y))/flatten


    k[j] = m + m1;

    }

    Sistem.Cizgiler[0].Deger = k;
    Şöyle birşey olabilir

    Kod:
     // Pseudo Polynomial Channel
    
    var length = 14 ; //
    var lengthh = 2 * length ; 
    var morph = 0.9f ; 
    var mult = 1.0f ;
    var flatten = 1.0f ;
    
    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 x = Sistem.BarSayisi ;
    
    var xx =  -1 *  ( x - x + length )/( x - lengthh - x + length )  ;
    
     
    //var xx =  -1 * ( x -  length )/( x - lengthh - x + length )  ;
    
    var k= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    
    k[i] = 
    
    morph * k[i-length]+ (1-morph) * C[i]  + 
    
    xx * (  morph * k[i-lengthh]+ (1-morph) * C[i] )  -  
    
     ( morph * k[i-length]+ (1-morph) * C[i] ) / flatten  ;
    
    
     
     
    
    
    
    
    
     
    
    var k1 = Sistem.MA(k, "Simple", length )  ;
    
    
    
    
    var k2= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
    k2[i] = Math.Abs(C[i] - k1[i] ) ;
    
     
    
    }
    
    
    
    
    var er = Sistem.Sum(k2) / x * mult ;
    
     
    var a = Sistem.Liste(0);
    
    var b = Sistem.Liste(0);
    
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
     
    
    a[i] = k1[i] + er  ;
    b[i] = k1[i] - er ;
     
    
    }
    
     
    
    
    Sistem.Cizgiler[0].Deger= a  ; //panel1
    Sistem.Cizgiler[1].Deger= b  ; //panel1

  6.  Alıntı Originally Posted by venseremos Yazıyı Oku
    İyi bayramlar,

    Periyodları farklı olan 2 sistemi nasıl birleştiririz? Aynı yönde ise işlem olacak, yönler farklı ise pozisyonda iken bile flat olacak ve aynı yönde sinyale kadar bekleyecek.

    Kütüphanede hazır olan sistem birleştir ile repaint oluyor. Daha önce deneyen var mı?
    s1 ve s2 sistemlerinin yönlerini, bitmiş bar üzerinden dönem çevir ile 1 dk grafik üzerine aktarıp deneyebilirsiniz.

  7.  Alıntı Originally Posted by anonimm Yazıyı Oku
    Şöyle birşey olabilir

    Kod:
     // Pseudo Polynomial Channel
    
    var length = 14 ; //
    var lengthh = 2 * length ; 
    var morph = 0.9f ; 
    var mult = 1.0f ;
    var flatten = 1.0f ;
    
    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 x = Sistem.BarSayisi ;
    
    var xx =  -1 *  ( x - x + length )/( x - lengthh - x + length )  ;
    
     
    //var xx =  -1 * ( x -  length )/( x - lengthh - x + length )  ;
    
    var k= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    
    k[i] = 
    
    morph * k[i-length]+ (1-morph) * C[i]  + 
    
    xx * (  morph * k[i-lengthh]+ (1-morph) * C[i] )  -  
    
     ( morph * k[i-length]+ (1-morph) * C[i] ) / flatten  ;
    
    
     
     
    
    
    
    
    
     
    
    var k1 = Sistem.MA(k, "Simple", length )  ;
    
    
    
    
    var k2= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
    k2[i] = Math.Abs(C[i] - k1[i] ) ;
    
     
    
    }
    
    
    
    
    var er = Sistem.Sum(k2) / x * mult ;
    
     
    var a = Sistem.Liste(0);
    
    var b = Sistem.Liste(0);
    
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
     
    
    a[i] = k1[i] + er  ;
    b[i] = k1[i] - er ;
     
    
    }
    
     
    
    
    Sistem.Cizgiler[0].Deger= a  ; //panel1
    Sistem.Cizgiler[1].Deger= b  ; //panel1
    Savitzky-Golay kullanarak yumuşatmış eleman ama sizinki sanki sert olmuş gibi.
    şöyle olursa en azından mid sapmaz gibi. sanırım sum olduğundan up ve down çizgileri farklı periyotlarda bar sayısı ve duyarlılık gibi nedenlerle farklılaşabilir. paramla ayarlanır gerçi onlarda.

    bence framanın TTI ını alıp kanal yapmaktan daha iyi gibi, hemde bedava

    PHP Code:
    /* https://www.tradingview.com/script/qusoEeMf-Pseudo-Polynomial-Channel/ */

    var Sistem.GrafikVerileri ;
    var 
    Sistem.GrafikFiyatOku(V"Kapanis");

    var    
    length  14;
    var    
    morph   0.9f;  
    float  mult    1f;
    var    
    flatten 1f;

    var 
    Up Sistem.Liste(0);
    var 
    Down Sistem.Liste(0);
    var 
    Sistem.Liste(0);
    var 
    kcum=0f;

    for (
    int i length*C.Counti++)
    {
       
    k[i] =    (morph k[i-length] + (1-morph) * C[i] )
               + (
    - (i+length) )
               / ( (
    i+length*2f)  - (i+length)  )
               * (
                    (
    morph k[i-length*2] + (1f-morph) * C[i] )
                  - (
    morph k[i-length]   + (1f-morph) * C[i] )
                 )
               / 
    flatten;
    }

    var 
    k1 Sistem.MA(k"Simple"length  );

    for (
    int i length*C.Counti++)
    {
      
    kcum += Math.Abs(C[i] - k1[i] );  
      
    float er kcum mult
      
    Up[i]    = ( k1[i] + er);
      
    Down[i]  = ( k1[i] - er);
    }

    Sistem.Cizgiler[0].Deger Up;
    Sistem.Cizgiler[1].Deger k1;
    Sistem.Cizgiler[2].Deger Down

  8.  Alıntı Originally Posted by anonimm Yazıyı Oku
    Şöyle birşey olabilir

    Kod:
     // Pseudo Polynomial Channel
    
    var length = 14 ; //
    var lengthh = 2 * length ; 
    var morph = 0.9f ; 
    var mult = 1.0f ;
    var flatten = 1.0f ;
    
    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 x = Sistem.BarSayisi ;
    
    var xx =  -1 *  ( x - x + length )/( x - lengthh - x + length )  ;
    
     
    //var xx =  -1 * ( x -  length )/( x - lengthh - x + length )  ;
    
    var k= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    
    k[i] = 
    
    morph * k[i-length]+ (1-morph) * C[i]  + 
    
    xx * (  morph * k[i-lengthh]+ (1-morph) * C[i] )  -  
    
     ( morph * k[i-length]+ (1-morph) * C[i] ) / flatten  ;
    
    
     
     
    
    
    
    
    
     
    
    var k1 = Sistem.MA(k, "Simple", length )  ;
    
    
    
    
    var k2= Sistem.Liste(0);
     
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
    k2[i] = Math.Abs(C[i] - k1[i] ) ;
    
     
    
    }
    
    
    
    
    var er = Sistem.Sum(k2) / x * mult ;
    
     
    var a = Sistem.Liste(0);
    
    var b = Sistem.Liste(0);
    
    
    
    for (int i = 50; i < V.Count; i++)
    {
    
     
    
    a[i] = k1[i] + er  ;
    b[i] = k1[i] - er ;
     
    
    }
    
     
    
    
    Sistem.Cizgiler[0].Deger= a  ; //panel1
    Sistem.Cizgiler[1].Deger= b  ; //panel1
    Hocam x i böyle tanımlarsak x ve length ler sadeleşip geriye xx=1/length kalıyor. Adam böyle kodlamazdı herhalde, o sebeple bar sayısı değil diye düşünmüştüm..

    var xx = -1 * ( x - x + length )/( x - lengthh - x + length ) ;
    Biçare gönüller! Ne giden son gemidir bu!
    Hicranlı hayatın ne de son matemidir bu.

Sayfa 437/595 İlkİlk ... 337387427435436437438439447487537 ... 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
  •