Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 3273

 
СанСаныч Фоменко #:

Kantiller olasılıklardır. Dolayısıyla, %1'den az/%99'dan fazla aralığına veya diğer miktarlara düşme olasılığı olan verileri kaldırır/değiştiririz. Miktarları kesemeyiz - çarpık ve kuyruklu dağılımlarımız var.

İkame değerinin en iyi şekilde bu miktarın MOE tarafından tahmin edilmesi olarak alınabileceğini yazıyorlar. Ama bu bana biraz abartılı geliyor.

Önemli olan nokta, otomat üzerindeki dağılımı belirlemenin genellikle zor olduğudur.

Genellikle lognormal olduğu varsayılır, ancak bunun nedeni aykırı değerlerdir - böyle olması için hiçbir mantık yoktur.

Ve eğer bir kantil alırsanız, bu tüm aralığı kesmek anlamına gelir ki bu da aykırı değerleri ortadan kaldırmak için yeterli olmayacaktır.


İkinci örnekte çok garip bir sonuç aldım - herhangi bir manipülasyon olmadan sadece hızlı bir şekilde öğreniyordu, ancak aykırı değerlerin olduğu satırları çıkardıktan sonra öğrenmenin etkisi neredeyse sıfıra eşit oldu.

Şimdi yavaş öğrenme oranını açtım - bir gece boyunca açık tutacağım - bir şey verip vermeyeceğini göreceğim.

Aksi takdirde, tüm öğrenme sürecinin, en azından deneyde kullandığım genel tahmincilerle, aykırı değerlerin ezberlenmesine dayandığı ortaya çıkıyor.

 
Aleksey Vyazmikin #:

Asıl mesele, otomatik bir araçta dağıtımı belirlemenin genellikle zor olmasıdır.

Genellikle lognormal olduğu varsayılır, ancak bunun nedeni sadece emisyonlardır - böyle olması için bir mantık yoktur.

Ve eğer bir kantil alırsanız, bu tüm aralığı kesmek anlamına gelir ki bu da aykırı değerleri ortadan kaldırmak için yetersiz olacaktır.


İkinci örnekte çok garip bir sonuç elde ettim - herhangi bir manipülasyon olmadan sadece hızlı bir şekilde öğreniyordu, ancak aykırı değerlere sahip satırları çıkardıktan sonra, öğrenmenin etkisi neredeyse sıfıra eşit oldu.

Şimdi yavaş öğrenme hızını açtım - bir gece bekleteceğim - bir şey verip vermeyeceğini göreceğim.

Aksi takdirde, tüm öğrenme sürecinin, en azından deneyde kullandığım genel tahmincilerle, aykırı değerlerin ezberlenmesine dayandığı ortaya çıkıyor.

Modeli kışın EA'ya kadar çalıştırdım (sonuçları bu başlıkta yayınladım). Tam tersi bir sonuç elde ettim: sınıflandırma hataları, ki bunlar %20'den azdı, aykırı değerler tarafından yakalandı. Sonuç olarak, doğru tahminlerin %80'i bu hatalar tarafından geçersiz kılındı.

Benim için açık olan bir şey var: aykırı değerlerden kurtulunmalı. Ve modelin gerçek sonucu aykırı değerlerin olmamasıdır.

 
СанСаныч Фоменко #:

Modeli kışın EA'ya yetiştirdim (sonuçları bu başlıkta yayınladım). Tam tersi bir sonuç elde ettim: sınıflandırma hataları, ki bunlar %20'den azdı, aykırı değerler tarafından yakalandı. Sonuç olarak, doğru tahminlerin %80'i bu hatalar tarafından geçersiz kılındı.

Benim için açık olan bir şey var: aykırı değerlerden kurtulmak gerekiyor. Ve modelin gerçek sonucu aykırı değerlerin olmamasıdır.

Kenarlarda açıkça bazı sınıflara doğru bir olasılık kayması vardır - ve bu kendi başına kötü değildir, kötü olan bu gözlemlerin istatistiksel olarak anlamlı sonuçlara varmak için yeterli olmamasıdır.

Dolayısıyla, aykırı değerlerde birinin daha fazla sıfıra sahip olması ve diğerinin daha fazla bire sahip olması normaldir - bu, tahmin ediciler kümesine bağlıdır.

Ayrıca, bir aykırı değer iki taraftan gözlemleniyorsa, bir tarafın sıfırlara, diğer tarafın birlere daha yakın olduğu da olur.

 
Aleksey Vyazmikin #:

Son kodu nerede görebilirim?

Her şeyi bu başlığa gönderdim.

 
Rorschach #:

Kaynaklar açık, bir göz atabilirsiniz. Korelasyon hesaplama fonksiyonu, sağ tarafta bir [kaynak] yazısı var, üzerine tıkladıktan sonra koda yönlendirileceksiniz. Biz 2885-2907 satırları ile ilgileniyoruz. 2889. satırda kovaryans kullanılır, cov'a tıkladıktan sonra, koddaki tüm cov ifadeleri sağda görünecektir, def cov... ile satıra tıkladıktan sonra kovaryans fonksiyonuna atlayacaktır ve bu böyle devam edecektir. MQL C benzeri bir dildir, tüm C benzeri diller ~% 90 benzerdir, C #, Java, Python, JavaScript'i çok fazla sorun yaşamadan anlayabilirsiniz.

Teşekkürler. Algoritmikleştirme konusunda biraz soğudum, hevesim geri geldiğinde bir göz atacağım.

 
fxsaber #:

Sanırım bu başlıktaki her şeyi gönderdim.

Elbette okudum, ancak kronolojiye göre Forester bir hata buldu, siz buna katıldınız, sonra kodun bir kısmı düzeltildi.

Ve sonuçta burada nihai kodun tam sürümünü göremedim. Kodu yayınlamak zorunda olduğunuzu kastetmiyorum, sadece sordum...

 
Aleksey Vyazmikin #:

Elbette okudum, ancak kronolojiye göre Forester bir hata buldu, siz buna katıldınız, sonra kodun bir kısmı düzeltildi.

Ve sonuçta nihai kodun tam sürümünü burada göremedim. Kodu yayınlamak zorunda olduğunuzu kastetmiyorum, sadece sordum...

Hızlı ve satır satır (düzeltilmiş).

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi üzerine forum.

Ticarette makine öğrenimi: teori, modeller, uygulama ve algo-ticaret

fxsaber, 2023.10.01 09:38

#include <Math\Alglib\statistics.mqh> // https://www.mql5.com/ru/code/11077

const matrix<double> CorrMatrix( const matrix<double> &Matrix )
{
  matrix<double> Res = {};
  
  const CMatrixDouble MatrixIn(Matrix);
  CMatrixDouble MatrixOut;  

  if (CBaseStat::PearsonCorrM(MatrixIn, MatrixIn.Rows(), MatrixIn.Cols(), MatrixOut)) // https://www.mql5.com/ru/code/11077
    Res = MatrixOut.ToMatrix();
  
  return(Res);
}

const matrix<double> CorrMatrix2( const matrix<double> &Matrix )
{
  matrix<double> Res = {};
  Res.Init(Matrix.Cols(), Matrix.Cols());
  
  const CMatrixDouble MatrixIn(Matrix);
  CMatrixDouble Vector(Matrix);
  CMatrixDouble Corr;

  for (int i = 0; i < (int)Matrix.Cols(); i++)
  {
    if (i)
      Vector.SwapCols(0, i);
    
    CBaseStat::PearsonCorrM2(Vector, MatrixIn, MatrixIn.Rows(), 1, MatrixIn.Cols(), Corr);
      
    Res.Col(Corr.Row(0), i);
  }
  
  return(Res);
}
 
fxsaber #:

Hızlı ve satır satır (düzeltilmiş).

Teşekkür ederim!

 
Maxim Dmitrievsky #:

Şimdilik bir kenara koydum, sonuçlar MO'dan daha iyi değil, ancak MO da dengenin pürüzsüzlüğü açısından yetersiz

5 dakika, yarım antrenman


kısa stoplu 4rosh grail benzetmesinden başka bir şey değildir.

 
Renat Akhtyamov #:

kısa duraklı 4 kroslu bir kase benzetmesinden başka bir şey değildir.

eksi bakiyeli hedge fonunuza benzetebilirsiniz.

Neden: