Fark hesabı, örnekler. - sayfa 5

 
Alexey Panfilov :

Fourier ile ilgili olarak, konu zengindir. İlgi olursa belli aralıklarla dokunacağız.

Büyük olasılıkla, sorunun formülasyonu ile ana sorular ortaya çıkacaktır (farklı bir yöntem nedeniyle). Şimdi, anladığım kadarıyla, gösterge Fourier spektrumundan en genlik frekanslarını seçiyor.

Fourier göstergesini polinomun zaten ortalaması alınan çizgiye sabitlemek için bir fikrim vardı. Tahmini okumalarının daha yavaş değişeceğine dair bir şüphe var.


Genel olarak doğru yönde düşünün.

Polinom ve Fourier yöntemleriyle yapılan ekstrapolasyonlar kesinlikle farklı bir yapıya sahiptir. Fourier ekstrapolasyonu, periyodik doğası nedeniyle yalnızca düz bir piyasada uygulanabilir (bu çizgi, farklı frekans, faz ve genliklerdeki sinüzoidlerin toplamıdır) ve her zaman geri gelecektir.

Aksine, polinom ekstrapolasyonu bir eğilim için iyidir, çünkü güç yasası doğası gereği her zaman aşağı veya yukarı "uçmaya" çalışır.
Bu nedenle, bu iki yöntemi birleştirmek için çok büyük bir çıkar vardır. Tabii ki, burada basit bir özetleme ile kurtulamazsınız. Ancak bunları birbirleriyle en iyi nasıl birleştireceğime dair net bir fikrim var ve bu, görüntü tanıma kullanılarak yapılmalı. Ve zaten bu konuda ciddi gelişmeler var. Hatta uzun zaman önce ilk tanıma algoritmamı açık kaynak olarak yayınladım. Bu algoritma, tüm TF'lerde doğrusal (1. derece polinom) kanalları bulur. Benimki en ilkel ve yavaş olmasına rağmen, şimdiye kadar piyasada tanışmamış olmam daha iyi (övünen) ).

Fourier ekstrapolasyonu, polinomdan çok daha yavaştır, bu yüzden onu hızlandırmaya çalışmak harika olurdu, ama bu arada, mevcut hızla da oldukça iyi çalışabilirsiniz.

 
Evgeni Belyaev :

Herkes bunu yaptı ... yazdılar ...


Bir dizi karşılaştırmaya başlamak için, iyi bilinen bir karşılaştırmaya dönelim.

 
      a1_Buffer[i] = iMA ( NULL , 0 , 145 , 0 , MODE_EMA , PRICE_OPEN ,i) ; // 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<= 1 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   2 *a5_Buffer[i+ 1 +z]  -   1 *a5_Buffer[i+ 2 +z]  ;  }}



      a2_Buffer[i]= ( (open[i] - Znach)  + 72    *a2_Buffer[i+ 1 ] )/ 73 ;
      
      a6_Buffer[i+ 92 ]=a2_Buffer[i];   if (i<= 1 ) { for (z= 92 - 1 ;z>= 0 ;z--){         a6_Buffer[i+ 0 +z]=   2 *a6_Buffer[i+ 1 +z] -   1 *a6_Buffer[i+ 2 +z]  ;  }}

İlk satır a1_Buffer , açılış noktalarına göre 145 (72*2+1) periyotlu klasik bir EMA olarak inşa edilmiş ve 72 adım sola kaydırılmıştır. Şekildeki geniş gri çizgi.

İkinci satır a5_Buffer , ilk satırın son iki noktası için düz bir çizgi kullanarak ekstrapolasyonu gösterir. Gri çizgi şekilde daha incedir.

Üçüncü satır a2_Buffer , doğrudan birinci derecenin fark denkleminden oluşturulur. Şekildeki mavi çizgi.

1 *Y_(-1)- 2 *Y_0+ 1 *Y_(+1)=0 Eşit uzaklık noktaları için birinci dereceden fark denklemi.

2 *Y_(-1)- 3 *Y_0+ 1 *Y_(+2)=0 Bir omuz için 2 aralıkta birinci dereceden fark denklemi.

72 *Y_(-1)- 7 3 *Y_0+ 1 *Y_(+72)=0 72 aralıklı bir omuz için birinci dereceden fark denklemi.

Aslında, bu birinci dereceden Arşimet Kolunun denklemidir.

Dördüncü satır a6_Buffer , üçüncü satırın son iki noktası için düz bir çizgi kullanarak ekstrapolasyonu gösterir. Şekildeki kırmızı çizgi, açılış noktasına dayanmaktadır.

İki yapının tam kimliğini görüyoruz. Kodun ve klasik EMA formülünün formunun bir fark formuna dönüşümünü göstermemek için bir örnek verdi.

Şu anki terminoloji çerçevesinde polinomları kullanarak yapılan yapıya bir dereceye kadar EMA diyebileceğimizin ne anlama geldiğini belirtmek isterim. Çünkü inşa edilen hatların adı sorusu açık kaldı. )

Sakıncası yoksa tabii. :)

 
Nikolay Semko :

Hatta uzun zaman önce ilk tanıma algoritmamı açık kaynak olarak yayınladım. Bu algoritma, tüm TF'lerde doğrusal (1. derece polinom) kanalları bulur. Benimki en ilkel ve yavaş olmasına rağmen şimdiye kadar piyasada karşılaşmamış olmam daha iyi ( övünüyorum )   ).

Bana göre gayet haklı. :))
 

Hem katsayıları önceden hesaplayarak ( a2_Buffer mavi çizgi ) hem de yeniden çizim çizgisinden istenen değeri kaldırarak ( a6_Buffer sarı çizgi ) bir noktayı tahmin etmenin mümkün olduğuna dikkatinizi çekmek isterim. Rağmen. Tabii ki, ikinci seçenek kaynaklar açısından maliyetlidir.

      a1_Buffer[i] = iMA ( NULL , 0 , 145 , 0 , MODE_EMA , PRICE_OPEN ,i); // 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<= 1100 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   2 *a5_Buffer[i+ 1 +z]  -   1 *a5_Buffer[i+ 2 +z]  ;  }}



      a2_Buffer[i]= 37 * a1_Buffer[i] - 36 *a1_Buffer[i+ 1 ];
      
      a6_Buffer[i+ 56 ]=a5_Buffer[i+ 56 ];  


 

Şimdi ikinci dereceden bir polinomla (ikinci dereceden EMA) ortalama alma ve düz bir çizgi kullanarak farklı bir omuza ekstrapolasyon.

      a1_Buffer[i]=  ((open[i] - Znach)    + 5328 *a1_Buffer[i+ 1 ]-   2628 *a1_Buffer[i+ 2 ])/ 2701 ;

      a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i<= 1100 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   2 *a5_Buffer[i+ 1 +z]  -   1 *a5_Buffer[i+ 2 +z]  ;  }}



      a2_Buffer[i+ 20 ]=a5_Buffer[i+ 20 ]; 
      
      a3_Buffer[i+ 38 ]=a5_Buffer[i+ 38 ]; 
      
      a4_Buffer[i+ 56 ]=a5_Buffer[i+ 56 ];
        
      a6_Buffer[i+ 74 ]=a5_Buffer[i+ 74 ];
    

İlk şekil bir inşaat şemasıdır, ikinci şekilde yeniden çizilmeyen tüm çizgiler son değere çizilir.

Bodrumdaki göstergeler yalnızca belirtilen çizgi ofsetinde farklılık gösterir.



 

İkinci dereceden bir polinomla ortalama alma (ikinci dereceden EMA) ve kare bir parabol (ikinci dereceden polinom) kullanarak farklı kollara ekstrapolasyon.

       a1_Buffer[i]=  ((open[i] - Znach)    + 5328 *a1_Buffer[i+ 1 ]-   2628 *a1_Buffer[i+ 2 ])/ 2701 ;

      a5_Buffer[i+ 92 ]=a1_Buffer[i];   if (i<= 1100 ) { 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]  ;   }}


      a2_Buffer[i+ 20 ]=a5_Buffer[i+ 20 ]; 
      
      a3_Buffer[i+ 38 ]=a5_Buffer[i+ 38 ]; 
      
      a4_Buffer[i+ 56 ]=a5_Buffer[i+ 56 ];
        
      a6_Buffer[i+ 74 ]=a5_Buffer[i+ 74 ];
  

İlk şekil bir inşaat şemasıdır, ikinci şekilde yeniden çizilmeyen tüm çizgiler son değere çizilir.

Bodrumdaki göstergeler yalnızca belirtilen çizgi ofsetinde farklılık gösterir.


 

Konuya birkaç kez baktım ve anlayamıyorum: neden bahsediyorsun?

Alıntı, çeşitli analitik eğrilerle, özellikle burada dalda bulunanlarla yaklaşık olarak tahmin edilebilen rastgele bir süreçtir.

Ama çok temel bir nokta var.

Bu analitik eğrilerdeki katsayılar, çok cesur bir fikir olan sabitlerdir.

Rastgele bir sürece yaklaştığımız için katsayılar da RANDOM değerlerdir ve TAHMİNİ olmaları gerekir, tüm sonuçlarıyla birlikte hesaplanmazlar. Örneğin katsayının değerini kolayca alabilir, değerini görebilir ve tahminini düşünürken katsayı değerini belirlemedeki hatanın bu değerin kendisinin bir katı olduğunu görebilirsiniz.

Ve sıkıntılar burada bitmiyor. Bir hata, normal dağılmışsa bir hatadır ve durağan DEĞİLSE, görmemize rağmen hiçbir katsayı yoktur.

Bu nedenle tüm göstergeler çalışmaz. Güzellik tarif edilemez olsa da.


not.

Yukarıda geleceğin geçmişten gelmediğine dair bir yazı vardı. İşte bu üzücü gerçeğin ifşası yukarıdadır.

 
San Sanych Fomenko :

Konuya birkaç kez baktım ve anlayamıyorum: neden bahsediyorsun?

Alıntı, çeşitli analitik eğrilerle, özellikle burada dalda bulunanlarla yaklaşık olarak tahmin edilebilen rastgele bir süreçtir.

Ama çok temel bir nokta var.

Bu analitik eğrilerdeki katsayılar, çok cesur bir fikir olan sabitlerdir.

Rastgele bir sürece yaklaştığımız için katsayılar da RANDOM değerlerdir ve TAHMİNİ olmaları gerekir, tüm sonuçlarıyla birlikte hesaplanmazlar. Örneğin katsayının değerini kolayca alabilir, değerini görebilir ve tahminini düşünürken katsayı değerini belirlemedeki hatanın bu değerin kendisinin bir katı olduğunu görebilirsiniz.

Ve sıkıntılar burada bitmiyor. Bir hata, normal dağılmışsa bir hatadır ve durağan DEĞİLSE, görmemize rağmen hiçbir katsayı yoktur.

Bu nedenle tüm göstergeler çalışmaz. Güzellik tarif edilemez olsa da.


not.

Yukarıda geleceğin geçmişten gelmediğine dair bir yazı vardı. İşte bu üzücü gerçeğin ifşası yukarıdadır.

Mesajın için teşekkürler.

Ve şunu da unutmayın:

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Kanalları nasıl hazırlayacağınızı biliyor musunuz?

SanSanych Fomenko , 2017.12.31 11:00

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Kanalları nasıl hazırlayacağınızı biliyor musunuz?

Aleksey Ivanov , 2017.12.31 10:48

Evet, bu hareketli olasılık dağılımlarını gecikmesiz olarak oluşturduğumu açıklığa kavuşturmayı unuttum ( hareketli ortalamalar , 2n + 1 üzerine çizilir, noktalar n puan geride kalır, elbette aynısı dağılımlar için de geçerlidir), bunun için , sadece modele göre

GARCH, verdikleri ek istatistikleri hesaba katarak, tarihin son bölümünde gecikmesiz bir dağılım modeli (ki bu önemlidir) yaratarak bir dizi noktayı öngördü. SanSanych'e ( SanSanych Fomenko ) Soru: "Bu yaklaşım yarışlar sırasında daha mı doğru olacak yoksa aynı zamanda ortalığı mı karıştıracak?"


Yönteminizi değerlendirip cevap veremem.

Piyasada sayısız fikir bulunan bir fikri değerlendirmeye çalışıyorsunuz, ama aynı zamanda fikir yazarlarının büyük çoğunluğu gibi kendinize şu soruyu sormayın: tarihsel verilerde gördüğünüz her şey hangi temelde tekrarlanıyor? gelecekte? Daha spesifik olarak, fikrinizin en azından bir miktar öngörü gücü var mı?

GARCH'ın yazarları bu modele hemen değil ve bu arada, durağan olarak anladıkları etkin bir piyasanın ideologlarıyla şiddetli bir mücadele içinde geldiler.

Durağan süreçlerin tahmin edilebileceği istatistiklerden bilinirken, durağan DEĞİL süreçler son derece zayıf bir şekilde tahmin edilir. İşte sorun bu. Durağanlık, diğer alanlarda son derece etkili olan matematik dağlarını işe yaramaz hale getirmez.

İdeoloji GARCH:

  • başlangıç öncülü - durağanlık DEĞİL
  • Durağanlık DEĞİL kelimesinin anlamını tam olarak formüle ediyoruz
  • parça parça DEĞİL'den durağanlığa ve durağanlığa gitmeye başlarız.
  • Durağanlık ne kadar yakınsa, algoritmanın geleceği tahmin etme yeteneği o kadar büyük olur.


Fikriniz bu yönde mi?


Kesinlikle işe yarayacağını düşünüyorum.
 

72'lik bir omuz (dördüncü dereceden EMA) ile dördüncü dereceden bir polinom ile ortalama alma ve düz bir çizgi kullanarak farklı bir omuza ekstrapolasyon.

      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<= 1100 ) { for (z= 92 - 1 ;z>= 0 ;z--){        a5_Buffer[i+ 0 +z]=   2 *a5_Buffer[i+ 1 +z]  -   1 *a5_Buffer[i+ 2 +z]  +   0 *a5_Buffer[i+ 3 +z]  ;  }}


      a2_Buffer[i+ 20 ]=a5_Buffer[i+ 20 ]; 
      
      a3_Buffer[i+ 38 ]=a5_Buffer[i+ 38 ]; 
      
      a4_Buffer[i+ 56 ]=a5_Buffer[i+ 56 ];
        
      a6_Buffer[i+ 74 ]=a5_Buffer[i+ 74 ];
 

İlk şekil bir inşaat şemasıdır, ikinci şekilde yeniden çizilmeyen tüm çizgiler son değere çizilir.

Bodrumdaki göstergeler yalnızca belirtilen çizgi ofsetinde farklılık gösterir.


 

72 omuzlu (dördüncü dereceden EMA) dördüncü dereceden bir polinomun ortalaması ve kare bir parabol (ikinci dereceden polinom) kullanılarak farklı omuzlara ekstrapolasyon .

      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<= 1100 ) { 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]  ;   }}


      a2_Buffer[i+ 20 ]=a5_Buffer[i+ 20 ]; 
      
      a3_Buffer[i+ 38 ]=a5_Buffer[i+ 38 ]; 
      
      a4_Buffer[i+ 56 ]=a5_Buffer[i+ 56 ];
        
      a6_Buffer[i+ 74 ]=a5_Buffer[i+ 74 ];

İlk şekil bir inşaat şemasıdır, ikinci şekilde yeniden çizilmeyen tüm çizgiler son değere çizilir.

Bodrumdaki göstergeler yalnızca belirtilen çizgi ofsetinde farklılık gösterir.


Neden: