Fark hesabı, örnekler. - sayfa 10

 
Alexey Panfilov :

Dinamikleri görmek için.

М15'te aynı uzman.



Bu sitede "yeniden çizilmiş" küfürlü kelimelere dikkat etmeyin. Yeniden çizilen göstergelerin en azından bir miktar tahmin yeteneği vardır, ancak genellikle hiçbir tahmin yeteneği olmayanlar. Ve tahmin yeteneği genellikle burada tartışılmaz. Göstergeleriniz, geleceği tahmin etmek (ekstrapolasyon yapmak) için doğası gereği keskinleştirilmiştir ve bu keskinleştirmeden bir şeyler çıkarılabilir.Yeniden çizilip çizilmemeleri önemli değil.


Resimlerden, bence değerli bir şey

Bir önceki yeşil resmi çok beğendim. Düz yeşil üçgen, gelecekte değiştirilirse Uzman Danışmanınızın performansını etkilemeyecek olan parametrelere karşılık gelen oldukça geniş bir plato olduğunu gösterir. Burada ikinci resim, danışmanın bu kadar değerli bir özelliğinden bahsetmiyor.

 

М5'te de aynı uzman. Hikaye yaklaşık yarısı kadar uzun.


Dosyalar:
2018_02_05.zip  219 kb
 
San Sanych Fomenko :

Bu sitede "yeniden çizilmiş" küfürlü kelimelere dikkat etmeyin. Yeniden çizilen göstergelerin en azından bir miktar tahmin yeteneği vardır, ancak genellikle hiçbir tahmin yeteneği olmayanlar. Ve tahmin yeteneği genellikle burada tartışılmaz. Göstergeleriniz, geleceği tahmin etmek (ekstrapolasyon yapmak) için doğası gereği keskinleştirilmiştir ve bu keskinleştirmeden bir şeyler çıkarılabilir.Yeniden çizilip çizilmemeleri önemli değil.


Resimlerden, bence değerli bir şey

Bir önceki yeşil resmi çok beğendim. Düz yeşil üçgen, gelecekte değiştirilirse Uzman Danışmanınızın performansını etkilemeyecek olan parametrelere karşılık gelen oldukça geniş bir plato olduğunu gösterir. Burada ikinci resim, danışmanın bu kadar değerli bir özelliğinden bahsetmiyor.

Teşekkür ederim.

Size katılıyorum. Görünüşe göre M30'da ve şimdi M5'te gösterge, fiyat davranışıyla daha iyi senkronize oluyor.

Ve elbette, bu tahmini, çok "kaba" bir yaklaşım olsa da.

 

Ekteki göstergelerde sarı ile vurgulanan kaynak tasarrufu koşulunun sıfıra ayarlandığı ve böylece yeniden çizilmeyen çizginin tüm grafikte görüntülendiği gerçeğine dikkatinizi çekmek isterim.

      a1_Buffer[i]=((open[i] - Znach)    + 5061600 *a1_Buffer[i+ 1 ]- 7489800     *a1_Buffer[i+ 2 ]+ 4926624 *a1_Buffer[i+ 3 ]- 1215450 *a1_Buffer[i+ 4 ])/ 1282975 ;
      a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i>= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   4 *a5_Buffer[i+ 1 +z]  -   6 *a5_Buffer[i+ 2 +z]  +   4 *a5_Buffer[i+ 3 +z]  - 1 *a5_Buffer[i+ 4 +z];  }}
      a2_Buffer[i+ 92 -leverage]=a5_Buffer[i+ 92 -leverage]; 

Test ederken, anladığım kadarıyla, sıfır çubuğu, test cihazı tarafından en son çizilen çubuktur. Ardından, optimize ederken, tam olarak hesaplanan çubukların sayısını yalnızca sonuncuyla sınırlamak mantıklıdır.

      a1_Buffer[i]=((open[i] - Znach)    + 5061600 *a1_Buffer[i+ 1 ]- 7489800     *a1_Buffer[i+ 2 ]+ 4926624 *a1_Buffer[i+ 3 ]- 1215450 *a1_Buffer[i+ 4 ])/ 1282975 ;
      a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i<= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   4 *a5_Buffer[i+ 1 +z]  -   6 *a5_Buffer[i+ 2 +z]  +   4 *a5_Buffer[i+ 3 +z]  - 1 *a5_Buffer[i+ 4 +z];  }}
      a2_Buffer[i+ 92 -leverage]=a5_Buffer[i+ 92 -leverage]; 

Veya ikincisinin belirli bir sayısı.

      a1_Buffer[i]=((open[i] - Znach)    + 5061600 *a1_Buffer[i+ 1 ]- 7489800     *a1_Buffer[i+ 2 ]+ 4926624 *a1_Buffer[i+ 3 ]- 1215450 *a1_Buffer[i+ 4 ])/ 1282975 ;
      a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i<=1000 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   4 *a5_Buffer[i+ 1 +z]  -   6 *a5_Buffer[i+ 2 +z]  +   4 *a5_Buffer[i+ 3 +z]  - 1 *a5_Buffer[i+ 4 +z];  }}
      a2_Buffer[i+ 92 -leverage]=a5_Buffer[i+ 92 -leverage]; 

Ancak aynı zamanda, görselleştirme sırasındaki gösterge, tüm çizelgede hesaplanana karşılık gelmeyecektir.

 

Göstergeye ekstrapolasyon derecesini seçme yeteneği eklendi:

      a1_Buffer[i]=((open[i] - Znach)    + 5061600 *a1_Buffer[i+ 1 ]- 7489800     *a1_Buffer[i+ 2 ]+ 4926624 *a1_Buffer[i+ 3 ]- 1215450 *a1_Buffer[i+ 4 ])/ 1282975 ;

       if (line_power == 1 )    {    a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i>= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   2 *a5_Buffer[i+ 1 +z]  -   1 *a5_Buffer[i+ 2 +z];  }}}
       if (line_power == 2 )    {    a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i>= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   3 *a5_Buffer[i+ 1 +z]  -   3 *a5_Buffer[i+ 2 +z]  +   1 *a5_Buffer[i+ 3 +z];  }}}
       if (line_power == 3 )    {    a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i>= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   4 *a5_Buffer[i+ 1 +z]  -   6 *a5_Buffer[i+ 2 +z]  +   4 *a5_Buffer[i+ 3 +z]  - 1 *a5_Buffer[i+ 4 +z];  }}}
       if (line_power == 4 )    {    a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i>= 0 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   5 *a5_Buffer[i+ 1 +z]  - 10 *a5_Buffer[i+ 2 +z]  +   10 *a5_Buffer[i+ 3 +z] - 5 *a5_Buffer[i+ 4 +z]  +   1 *a5_Buffer[i+ 5 +z];  }}}

      a2_Buffer[i+ 92 -leverage]=a5_Buffer[i+ 92 -leverage]; 
 

Ve buna göre uzman.

 ma_1= iCustom ( NULL , 0 , "2018_02_08_EMA_Polynom_s4_s1_4_p72_v.2" , line_1_power, leverage_1, 300 , 3 , 0 );
 ma_2= iCustom ( NULL , 0 , "2018_02_08_EMA_Polynom_s4_s1_4_p72_v.2" , line_2_power, leverage_2, 300 , 3 , 0 );
 ma_1_P= iCustom ( NULL , 0 , "2018_02_08_EMA_Polynom_s4_s1_4_p72_v.2" , line_1_power, leverage_1, 300 , 3 , 1 );
 ma_2_P= iCustom ( NULL , 0 , "2018_02_08_EMA_Polynom_s4_s1_4_p72_v.2" , line_2_power, leverage_2, 300 , 3 , 1 );
 

Dördüncü derecenin polinomu tarafından tahmin edilen çizgiyi geçmek için optimizasyon (ekstrapolasyon omzu 72 ile, bu çubuk açılış fiyatıdır), üçüncü derecenin polinomu tarafından tahmin edilen çizgi.


Dosyalar:
2018_02_08_2.zip  211 kb
 

Konuya bakıyordum ve 64 mesajındaki yorumun ölmeyi hak etmediğini fark ettim. ))

Sayın moderatörler, uygun bağlamda orijinal yerine geri yüklenebilir mi? Ya da düzenleme için bana açık mısınız? (aşağıda, yorumun kendisi)

Aleksey Panfilov 2018.01.30 21:41 TR
Alexey Panfilov :

Evet.

Newton'un iki terimlisiyle doğrudan ilişkilidir. Ve Pascal üçgeni. 01/30/2018 tarihinde eklendi

Eşit uzaklıktaki noktalar için doğrudur:

1 *Y1- 2 *Y2+ 1 *Y3=0 - bir doğrunun fark denklemi.

1 *Y1- 3 *Y2+ 3 *Y3- 1 *Y4 =0 - ikinci dereceden parabolün fark denklemi.

1 *Y1- 4 *Y2+ 6 *Y3- 4 *Y4 + 1 *Y5 =0 - üçüncü dereceden parabolün fark denklemi.

Ayrıca temalarla kesişir:

https://www.mql5.com/ru/forum/61389/page48#comment_5633264

https://www.mql5.com/en/forum/211220/page2#comment_5632736 .

1 *Y1- 5 *Y2+ 10 *Y3- 10 *Y4 + 5 *Y5 - 1 *Y6=0 - dördüncü dereceden parabolün fark denklemi.

1 *Y1- 6 *Y2+ 15 *Y3- 20 *Y4 + 15 *Y5 - 6 *Y6 + 1 *Y7=0 - beşinci derece parabolün fark denklemi.

1 *Y1- 7 *Y2+ 21 *Y3- 35 *Y4 + 35 *Y5 - 21 *Y6 + 7 *Y7 - 1 *Y8=0 - altıncı derece parabolün fark denklemi.


1 aralıklı bir omuza sahip enterpolasyon formülleri, doğrudan eşit uzaklık noktaları için denklemlerden takip edilir.

  3 *Y2 = 1 *Y1+ 3 *Y3- 1 *Y4 - ikinci derece parabol enterpolasyonu.

4 *Y2 = 1 *Y1+ 6 *Y3- 4 *Y4 + 1 *Y5 - üçüncü derece parabol enterpolasyonu.

5 *Y2= 1 *Y1+ 10 *Y3- 10 *Y4 + 5 *Y5 - 1 *Y6 - dördüncü derece parabol enterpolasyonu.

6 *Y2= 1 *Y1+ 15 *Y3- 20 *Y4 + 15 *Y5 - 6 *Y6 + 1 *Y7 - beşinci derece parabol enterpolasyonu.

7 *Y2= 1 *Y1+ 21 *Y3- 35 *Y4 + 35 *Y5 - 21 *Y6 + 7 *Y7 - 1 *Y8 - altıncı derece parabol enterpolasyonu.

Kod biçiminde:

 
      a1_Buffer[i]=(open[i]   + 3 *a1_Buffer[i+ 1 ]   - 1 *a1_Buffer[i+ 2 ]  )/ 3 ;
      a2_Buffer[i]=(open[i]   + 6 *a2_Buffer[i+ 1 ]   - 4 *a2_Buffer[i+ 2 ]   + 1 *a2_Buffer[i+ 3 ]  )/ 4 ;
      a3_Buffer[i]=(open[i]   + 10 *a3_Buffer[i+ 1 ]  - 10 *a3_Buffer[i+ 2 ]  + 5 *a3_Buffer[i+ 3 ]  - 1 *a3_Buffer[i+ 4 ])/ 5 ;
      a4_Buffer[i]=(open[i]   + 15 *a4_Buffer[i+ 1 ]  - 20 *a4_Buffer[i+ 2 ]  + 15 *a4_Buffer[i+ 3 ]  - 6 *a4_Buffer[i+ 4 ]  + 1 *a4_Buffer[i+ 5 ])/ 6 ;
      a5_Buffer[i]=(open[i]   + 21 *a5_Buffer[i+ 1 ]  - 35 *a5_Buffer[i+ 2 ]  + 35 *a5_Buffer[i+ 3 ]  - 21 *a5_Buffer[i+ 4 ]  + 7 *a5_Buffer[i+ 5 ]  - 1 *a5_Buffer[i+ 6 ])/ 7 ;

Şekil grafiğin başlangıcını göstermektedir.

Ve 2-4 derecelik (gri, mavi, yeşil) polinomların oluşturduğu doğruların güvenle grafiğin yakınında kaldığı açıkça görülüyor.

Ve 5.6 derecelik (kırmızı, sarı) polinomlar tarafından oluşturulan çizgiler, rezonansa veya kendi kendine salınımlara benzer bir şeye düşer ve kademeli olarak genlik biriktirir. 5 veya daha fazla dereceli polinomlar için omzu artırmak durumu değiştirmez.


Belirli periyotların sinüzoidlerinin toplamından oluşan bir fonksiyonun fark denklemi ile enterpolasyon, "bir polinomun derecesi gibi" örneğin 12 dereceye kadar (sabite yakın 6 sinüzoid gibi) artırmanıza izin verir.

Ve aynı zamanda, bir sinüzoidin fonksiyonunu belirli bir omuz ve periyot kombinasyonu ile bir sabit (ikinci dereceden bir polinoma benzer) etrafında enterpolasyon yaparak da benzer bir durumla ( rezonans ) karşılaşılabilir.

Polinomlarla analoji, gerekli minimum noktaların sayısına dayanmaktadır.

Dosyalar:
 

Bu konunun 57. mesajından Nikolai Semko Banzai.mq4 göstergesinin optimizasyonu.

Expert Advisor aynıdır, optimize edilmiş parametre sağa doğru satır kaymasıdır.

 ma_1= iCustom ( NULL , 0 , "Banzai" ,leverage_1, 0 , leverage_1 );
 ma_2= iCustom ( NULL , 0 , "Banzai" ,leverage_2, 0 , leverage_2 );
 ma_1_P= iCustom ( NULL , 0 , "Banzai" ,leverage_1, 0 , leverage_1+ 1 );
 ma_2_P= iCustom ( NULL , 0 , "Banzai" ,leverage_2, 0 , leverage_2+ 1 );

Sonuçlar:


Dosyalar:
2018_02_09.zip  245 kb
 

Nikolai Semko gösterge optimizasyonu   Bu konunun 57. mesajındaki Banzai.mq4 .

M15'te aynı:


Dosyalar:
2018_02_09_2.zip  212 kb
 

Çoğu optimizasyon grafiğinde, sinyalin (kırmızı çizgi) "ters çevrilmesinin" sınırı açıkça görülebilir ve buna göre sonuçların belirli bir "aynası" (bir örnek sarı bir çizgiyle vurgulanmıştır).