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

 
Alexander_K2 :

Evet! Söylemeyi unuttum.

Durumlar, parçacığı neredeyse tamamen karakterize eden bir veri kümesi olarak kabul edilir. Onlar. bu bir veri setidir, başka bir deyişle - kendi özelliklerine sahip örneklem büyüklüğü - basıklık, asimetri, negentropi, vb.

Onlar. R. Feynman'ın güveniyle, belirli bir çift için örneklem büyüklüğünü doğru bir şekilde belirleyerek, bu katsayıların karakteristik ortalama değerlerini tarih üzerinde hesapladıktan sonra, belirli bir parametre kümesine sahip olduğu tahmin edilebilir. zaman içinde belirli bir anda, belirli bir zaman aralığından sonra sistem kararlı parametreleri ile duruma geçecektir.

Bu başlıktan beklediğim şey bu. İstediğiniz numune boyutunu belirlemede yardıma ihtiyacınız varsa - yazın, yardımcı olmaya çalışacağım.

o zaman böyle bir soru - diyelim ki otoregresif bir süreç var, yani. mevcut durumların geçmişe bağımlılığı

sistemi tahmin etmek için farklı gecikmelere sahip bir dizi artış nasıl doğru seçilir? gecikmeler sabit mi yoksa zamanla değişiyor mu, değişiyorsa nasıl belirlenecek (banal numaralandırma hariç)

çünkü hedefi istikrarlı bir şekilde tahmin eden böyle bir artış kombinasyonu varsa, o zaman NN'yi bu konuda eğitmek artık zor değil

 
Maksim Dmitrievski :

o zaman böyle bir soru - diyelim ki otoregresif bir süreç var, yani. mevcut durumların geçmişe bağımlılığı

sistemi tahmin etmek için farklı gecikmelere sahip bir dizi artış nasıl doğru seçilir? gecikmeler sabit mi olmalı yoksa zamanla değişiyor mu, değişiyorsa nasıl belirlenecek (banal numaralandırma hariç)

İşte açıkçası zorluklara neden olan bir an.

Veri kümesi zaman içinde yerel değil

Bu temel bir nokta!

Onlar. zamanla çalışıyorsanız, kesin olarak tanımlanmış bir süre için farklı bir veri kümesiyle uğraştığımızı anlamanız gerekir. Bu, tökezleme bloğunun temel taşıdır. Aynı belirli değerler örneğiyle çalışmaya çalışırken, zaman içinde "kayan" bir gözlem penceresiyle sonuçlanırız.

Bu sorunu 2 şekilde aşıyorum:

1. Yalnızca belirli bir kene grubuyla çalışın (örnek boyutu) - bir kez ve herkes için belirli bir çift için bir tane. Ancak bu küme, oluşumunun farklı zamanları ile karakterize edilir ve tahmin yapmak imkansızdır.

2. Yalnızca sabit bir zaman penceresiyle çalışın. Bu durumda, tam tersine, içinde yüzen bir kene hacmine sahibiz. Bu zorluk nasıl aşılır? Cevap sözde girmektir. "sahte durumlar", yani. Gerekli örneklem boyutuna kadar gözlem penceresindeki veri sayısının nasıl elde edileceği. Bunu , üstel bir zaman ölçeğinde zorla çalışarak yapıyorum. Onlar. kesin olarak tanımlanmış bir zaman penceresinde, verileri üs aracılığıyla okudum ve gerçek bir kene olup olmadığı önemli değil. Bu durumda tahminler yapılabilir. Tek şey - üstel aralıkların doğru çözüm olduğundan şüpheliyim. Feynman düzenli aralıklarla çalıştı.

1 yolu seçerseniz - tahmin sorunu prensipte çözülemez.

2 yol - çözülebilir, ancak böyle bir arşiv yok.

İşte burada takılıp kalıyorum ve aptalca bir şekilde kendi arşivlerimi toplarken. Maalesef başka bir yol göremiyorum...

 
Alexander_K2 :

2. Yalnızca sabit bir zaman penceresiyle çalışın. Bu durumda, tam tersine, içinde yüzen bir örneklem büyüklüğümüz var. Bu zorluk nasıl aşılır? Cevap sözde girmektir. "sahte durumlar", yani. gerekli örneklem boyutuna kadar gözlem penceresindeki veri sayısının nasıl elde edileceği. Bunu, üstel bir zaman ölçeğinde zorla çalışarak yapıyorum. Onlar. kesin olarak tanımlanmış bir zaman penceresinde, verileri üs aracılığıyla okudum ve gerçek bir kene olup olmadığı önemli değil. Bu durumda tahminler yapılabilir. Tek şey - üstel aralıkların doğru çözüm olduğundan şüpheliyim. Feynman düzenli aralıklarla çalıştı.

Aslında, üstel aralıklar sadece sabit bir pencere sorununu çözmeye yardımcı oluyor, anladığım kadarıyla bu doğru çözüm (olmalı). Diyelim ki eğitim örneği 1000 bar (kene), önemli değil. Tabii ki, kayan bir pencere ile kalıplar değişir ve sinir ağının yeniden eğitilmesi gerekir. Ancak örneğimiz, gecikmesi katlanarak artan bir artış kombinasyonunu içeriyorsa, aynı pencere için tüm olası durumlar etkin bir şekilde, ancak şimdi kayar.

belki araba kullanırım :D ama denemesi kolay. Ama soru ne zaman duracağıdır

 
Maksim Dmitrievski :

Aslında, üstel aralıklar sadece sabit bir pencere sorununu çözmeye yardımcı oluyor, anladığım kadarıyla bu doğru çözüm (olmalı). Diyelim ki eğitim örneği 1000 bar (kene), önemli değil. Tabii ki, kayan bir pencere ile kalıplar değişir ve sinir ağının yeniden eğitilmesi gerekir. Ancak örneğimiz, gecikmesi katlanarak artan bir artış kombinasyonunu içeriyorsa, aynı pencere için tüm olası durumlar etkin bir şekilde, ancak şimdi kayar.

belki araba kullanırım :D ama denemesi kolay. Ama soru ne zaman duracağıdır

Ve sistemin kararsız bir durumdan kararlı bir duruma geçişinde durmak gerekir.

Onlar. örneğin, belirli bir zamanda negentropide bir artış görülürse (bir eğilim başladı), belirli bir zaman aralığından sonra negentropi geçmişten hesaplanan karakteristik ortalama değerine geri dönecektir.

Bu geçiş zaman aralığı nasıl belirlenir? Pekala, bu gerçek tahmin, aptal değil. Sinir ağlarından beklediğim ve bu konuyu okuduğum şey bu :)

 
Alexander_K2 :

Ve sistemin kararsız bir durumdan kararlı bir duruma geçişinde durmak gerekir.

Onlar. örneğin, belirli bir zamanda negentropide bir artış görülürse (bir trend başladı), belirli bir zaman aralığından sonra negentropi geçmişten hesaplanan karakteristik ortalama değerine geri dönecektir.

Bu geçiş zaman aralığı nasıl belirlenir? Pekala, bu gerçek tahmin, aptal değil. Sinir ağlarından beklediğim ve bu konuyu okuduğum şey bu :)

ah, peki, görev oldukça önemsiz bir göreve indirgendi - modeli üstel artışlarla eğitmek ve tahmin edilen ve mevcut fiyatlar arasında bir yayılma tablosu oluşturmak, ortalamadan sapmaların nasıl dağıldığını görmek (artıklar)

iz üzerinde. Bir hafta sonra yapacağım :) sadece negentropi kelimesi dispersiyon kelimesi ile değiştirilecek

 
Maksim Dmitrievski :

ah, peki, görev oldukça önemsiz bir göreve indirgendi - modeli üstel artışlarla eğitmek ve tahmin edilen ve mevcut fiyatlar arasında bir yayılma tablosu oluşturmak , ortalamadan sapmaların nasıl dağıldığını görün (artıklar)

iz üzerinde. 1 hafta sonra yapacağım :)

Bekliyorum Maksim. Cidden, eminim yapılabilir. Sadece sinyali açmayı unutmayın - ilk abone olacağım.

Piyasada gerçekten sadece 2 şey çalışabilir - sinir ağları ve teori. Diğer her şey sonuç olarak önemsiz, fit ve boş ceplerdir.

 
Alexander_K2 :

Bekliyorum Maksim. Cidden, eminim yapılabilir. Sadece sinyali açmayı unutmayın - ilk abone olacağım.

Piyasada gerçekten sadece 2 şey çalışabilir - sinir ağları ve teori. Diğer her şey sonuç olarak önemsiz, fit ve boş ceplerdir.

Sana bir bot göndereceğim, örnek olarak, bir şeyi daha sonra bükebilirsin :D Açıklık için önce bir gösterge olarak yapacağım

 

Bunun peşinde - https://www.mql5.com/ru/forum/86386/page643#comment_6472393

Dr. tüccar :

Tahmin edicileri filtrelemek için başka bir ilginç paket buldum. Adı FSelector. Entropi kullanımı da dahil olmak üzere, tahmin edicileri ayıklamak için bir düzine yöntem sunar.


Tahmini bırakma işlevi random.forest.importance() bazı testlerde oldukça iyi sonuçlar verdi. Onun görüşüne göre, genel olarak, tüm tahmin edicilerin en azından biraz önemli olması sakıncalıdır, ancak örneğin, ortalama önemi hesaplarsak ve yalnızca ortalamanın üzerinde önemli olan tahmin edicileri alırsak, çok iyi bir sonuç elde ederiz. sonuç.

 library (FSelector)

load( "ALL_cod.RData" )
trainTable <- Rat_DF1
PREDICTOR_COLUMNS_SEQ <- 1 : 27
TARGET_COLUMN_ID      <- 29

targetFormula <- as .simple.formula(colnames(trainTable)[PREDICTOR_COLUMNS_SEQ], colnames(trainTable)[TARGET_COLUMN_ID])

rfImportance <- random.forest.importance(targetFormula, trainTable)
colnames(trainTable)[PREDICTOR_COLUMNS_SEQ][rfImportance[[ 1 ]] > mean(rfImportance[[ 1 ]])]
 
Dr. tüccar :

Bu yılın yaklaşık Ocak ayı için eurusd m1 ve 1 günlük bir sürgülü pencere aldım.

Mantıksal olarak, eğer entropi büyüyorsa, ticareti durdurmalı ve düşük bir seviyede ticarete devam etmelisiniz. Ve burada, düşük entropi ile, bir nedenden dolayı, bir daire üzerinde ticaret yapmak daha kolay olmasına rağmen, eğilim olağandışıdır.

(ekteki koddaki yazım hatası düzeltildi, eskisini indirdiyseniz tekrar indirin)

Serinin durağan olmadığı çıplak gözle açıkça görüldüğünden, ilk alıntı için yf'yi test etmenin bir anlamı yoktur.

Ve ilginç (benim için değil - her zaman kullanırım) log(p/p-1) zaman serisi için grafiklerdir.

Orada ne var? Ve tabii ki y ekseni boyunca bir ölçeğe ihtiyacınız var.

 
Dr. tüccar :

Tahmin edicileri taramak için başka bir ilginç paket buldum. Adı FSelector. Entropi kullanımı da dahil olmak üzere, tahmin edicileri ayıklamak için bir düzine yöntem sunar.


Ayrıca CORElearn paketinde çok ilginç, geniş bir Relief tahmin aracı seçim araçları seti bulunmaktadır.

Bu konudaki uzun alıştırmalarımda, özellikle güvenli olmak üzere, caret içindeki tahmin edici seçim işlevlerinden daha iyi bir şey bulamadım.

Ancak, tahmin edicilerin ön seçimi, hedef değişkenle "ilgili" ilkesine göre yapılmazsa, tüm bunlar işe yaramaz.

İki sınıf örneğini kullanarak tekrar edeceğim:

  • tahmin edicinin bir kısmı bir sınıfla, diğer kısmı başka bir sınıfla ilgili olmalıdır. Tahmin edicilerin bu iki bölümünün kesişimi, üstesinden gelinemeyecek bir sınıflandırma hatası verir.



not.

Ana bileşenleri tartıştı ve algoritmanın denetimsiz olmasının dezavantajını gördünüz.

Burada öğretmenle:

sgpls( x, y, K, eta, scale.x= TRUE ,
        eps= 1 e- 5 , denom.eps= 1 e- 20 , zero.eps= 1 e- 5 , maxstep= 100 ,
        br= TRUE , ftype='iden' )
Arguments

x       Matrix of predictors.
y       Vector of class indices.
K       Number of hidden components.
eta     Thresholding parameter. eta should be between 0 and 1 .
scale.x Scale predictors by dividing each predictor variable by its sample standard deviation?
eps     An effective zero for change in estimates. Default is 1 e- 5 .
denom.eps       An effective zero for denominators. Default is 1 e- 20 .
zero.eps        An effective zero for success probabilities. Default is 1 e- 5 .
maxstep Maximum number of Newton-Raphson iterations. Default is 100 .
br      Apply Firth's bias reduction procedure?
ftype   Type of Firth's bias reduction procedure. Alternatives are "iden" (the approximated version ) or "hat" (the original version ). Default is "iden".

spls paketi

Neden: