Ticarette makine öğrenimi: teori, pratik, ticaret ve daha fazlası - sayfa 14
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
Tamam, düşünebilirsiniz. Örneğin, her yinelemede, sinir ağının hedefin tahminden sapmasına bağlı olarak standart hata geri yayılımı gerçekleştirmediğini, ancak ölçeklerin önceki versiyonunda gerçek ticaretin idealden bu şekilde farklı olduğuna dair veriler aldığını hayal edin. ve bu kadar çok nokta. Ve bu bilgilere dayanarak ağırlıkları günceller. Yani, infa makineye paralel bir akışta gitmelidir. Belki de yapılması gerçektir.
Neden kiloya ihtiyacın var? Neden onlardan bahsediyorsun?
Önceki ağırlıkların gerekli olduğunu anlıyorum, şimdi hiçbir şey anlamadığımı anlıyorum)
Neden kiloya ihtiyacın var? Neden onlardan bahsediyorsun?
Önceki ağırlıkların gerekli olduğunu anlıyorum, şimdi hiçbir şey anlamadığımı anlıyorum)
Eh, öyle görünüyor
Ağırlıklara ihtiyacımız yok. Ben sadece SİZE açıklığa kavuşturmak için onlardan bahsettim. Sistemin önceki ölçeklerde nasıl işlem gördüğünü bilmemiz gerekiyor. Bazı entegre biçimde ticaretin sonucuna ihtiyacımız var. Herşey.
Ağırlıklar algoritma tarafından güncellenir.
Burada basit bir fonksiyon çalışıyor. Denemesi daha zor bir şey. Hâlâ ayırt edilmesi gerekiyor, sıçrama bu.
library(neuralnet)
y <- as.data.frame(matrix(runif(n = 10000, min = -15, max = 15), ncol = 2))
y$V3 <- runif(n = 5000, min = -15, max = 15)
y$V4 <- runif(n = 5000, min = -15, max = 15)
y$V5 <- runif(n = 5000, min = -15, max = 15)
y$V6 <- runif(n = 5000, min = -15, max = 15)
y$V7 <- runif(n = 5000, min = -15, max = 15)
y$V8 <- y$V1 ^ 2 + y$V2 ^ 2
colnames(y) <- c('input_1', 'input_2', 'noise_1', 'noise_2', 'noise_3', 'noise_4', 'noise_5', 'output')
f_f <- function(x, y){
1/2*(y-x)^2
}
print(
nn_model <- neuralnet(formula = output ~ input_1 + input_2 + noise_1
, data = y
, hidden = 1
, threshold = 0.01
, stepmax = 1e+05
, rep = 100
, startweights = NULL
, learningrate.limit = NULL
, learningrate.factor = list(minus = 0.5, plus = 1.2)
, learningrate=NULL
, lifesign = "none"
, lifesign.step = 10
, algorithm = "rprop+"
, err.fct = f_f #"sse"
, act.fct = "logistic"
, linear.output = F
, exclude = NULL
, constant.weights = NULL
, likelihood = FALSE
)
)
f_f <- fonksiyon (x, y) 1/2*(yx)^2
f_f - ağ için hatayı sayar, değil mi?
x, değerin ne olması gerektiğidir (ideal eğri)
y - aslında böyle (gerçek eğri)
aralarındaki fark hatadır
ama nasıl veri göndereceğimi anlamıyorum, öncekine göre bir ticaret vektörüne ihtiyacım var. mumlar ve bu işlemlerin hangi kurallara göre açılacağı, alım satımla ilgili bu girdi verileri genel olarak nasıl görünmelidir?
f_f <- fonksiyon(x, y) 1/2*(yx)^2
f_f - ağ için hatayı sayar, değil mi?
x, değerin ne olması gerektiğidir (ideal eğri)
y - aslında böyle (gerçek eğri)
aralarındaki fark hatadır
ama nasıl veri göndereceğimi anlamıyorum, öncekine göre bir ticaret vektörüne ihtiyacım var. mumlar ve bu işlemlerin hangi kurallara göre açılacağı, alım satımla ilgili bu girdi verileri genel olarak nasıl görünmelidir?
Bir meslektaşım makine öğrenimi üzerine bir kursun bağlantısını attı, lütfen bakın, bunu nasıl değerlendirirsiniz? Kurs ücretsizdir, ancak Python'da bir nedenden dolayı lanet olsun ((
https://www.udacity.com/course/machine-learning-for-trading--ud501
Bir meslektaşım makine öğrenimi üzerine bir kursun bağlantısını attı, lütfen bakın, bunu nasıl değerlendirirsiniz? Kurs ücretsizdir, ancak bir nedenden dolayı Python'a lanet olsun ((
https://www.udacity.com/course/machine-learning-for-trading--ud501
En verimli:
1. R - 5 dakika koyun
2. GUI olarak tasarlanan ve dolayısıyla R bilgisi gerektirmeyen çıngırak paketini indirin.
3. Başlangıç maliyetlerini azaltmak için makalemi alın. Açıklamaları var ve en önemlisi bitmiş dosya ekte. Dosyamı gördüğünüzde kolayca kendi dosyanızı hazırlayabilirsiniz.
4. Altı model alın.
5. Çıngırak çerçevesindeki ana şey, makine öğreniminin tam döngüsünü görebilirsiniz:
Tüm bunlar size boşluksuz belirli bir temel ve en önemlisi Forex referansıyla somut bir makine öğrenimi deneyimi sağlayacaktır.
not.
çıngırak sadece ilk adımlarda değil, gelecekte de sizin için çok faydalı olacaktır: bir şeyi bulmak, denemek için minimum maliyetler...
PSPS
Elbette kitapsız yapamazsınız. İşte onlarla dolu . Arama harika çalışıyor.
Ayrıntılı açıklama için teşekkürler Dr.Trader !
Muhtemelen en iyi ve en doğru şeyin aynı zikzakları tersine çevirmenin kendisinde öğretmek, yani üç durum vermek olduğunu biliyorsunuzdur: 1) yukarı çık
2) geri çevirmek
3) geri dönüş yok
ama öğrenmek için, geri dönüşleri yakalamak oldukça zordur, ayrıca gözlem sayısında bir çarpıklık, onlarca veya belki yüzlerce kat daha fazla "geri dönüş olmayan" sınıflar olacaktır.
Hangi öngörücüleri kullanıyorsunuz ve hangi sonuçlar?
Spektral analizde ustalaşmaya başladım, ilk örnekler sadece göstergelerden çok daha iyi çıktı, çıngırakla çalıştırdım, eğitim ve doğrulamadaki hata %6 çıktı, ancak kodu R'ye aktarmaya başladığımda, San Sanych, yanılmıyorsam hata %30'a kadar bir yere kadar çıktı, diyor San Sanych, genel olarak, şu ana kadar pek bir şey anlamadım.
Ayrıca spektral analiz yoluyla piyasaya hangi periyotların hakim olduğunu ve bu periyotların göstergelere dönüştürülebileceğini öğrenmenin bir yolu var, uyarlanabilir göstergeler alıyorsunuz ve tarihe sığmıyor, ilk testler cesaret vericiydi ama gücümü toplayamıyorum. kafamın içindeki tüm bu yığını raflara koymak için
Tahmin ediciler oluşturmak için temel olarak standart göstergeler kullanıyorum. Şimdiye kadar, bunu kendim deniyorum, bu forum konusundaki fikirleri deniyorum.
Bunu son haftalardır yapıyorum, şimdi en iyi sonuç şu şekilde elde ediliyor: (birçok hesaplama, daha hızlı hale getirmek için bu yaklaşımı genel olarak D1 zaman diliminde inceliyorum, sonra daha küçük bir TF'ye geçeceğim)
1) mt5'ten csv'ye dışa aktarma: ohlc, zaman, göstergeler, tümü son 10 bar için. Son zamanlarda sadece en yeni çubuktan zaman almaya başladım, kalan çubukların süresinin hesaplandığını ve bu nedenle yeni bilgi taşımadığını düşünüyorum. Birkaç yüz "birincil" tahmin edici ortaya çıkıyor. Gerekli öğrenme sonucu - "1" veya "0" - bir sonraki çubuk için fiyat artışı veya düşüşü. Zigzaglarla her şey benim için istikrarsız ve zor çıkıyor, şimdi kapanış fiyatlarıyla çalışmakta daha iyiyim. Tam model eğitim algoritmasını sıfırdan çalıştığımda, zikzaklar ve trend tahmini yapmak mümkün olacak.
2) Mevcut verilerle R'de çeşitli matematiksel işlemler yapıyorum - toplama, deltalar, min, maks, vb. Halihazırda binden fazla tahminci var.
3) Açıkçası, ikinci adımdan sonra gereğinden fazla çöp var. Ana bileşenlerle ilgili makaledeki yönteme göre filtreliyorum http://www.r-bloggers.com/principal-components-regression-pt-2-y-aware-methods/ , SanSanych bunun hakkında daha önce burada yazdı . PCR modelinin kendisini eğitmiyorum, şimdilik tahmin edicilerin ön taraması için böyle bir fonksiyonda durdum:
srcTable - tahmin ediciler içeren tablo, son sütun istenen öğrenme sonucu olmalıdır. pruneSig -1'de bırakılmalıdır.
Sonuç olarak, işlev, tablodan bazı yararlı bilgiler taşıyan sütunların adlarını içeren bir liste döndürür. Veya yararlı bir şey bulunamazsa boş bir liste. Makalede bu yöntemin özellikle önemli olmadığı belirtiliyor, ancak oldukça yeterli olduğu ortaya çıkıyor, çöpleri çok iyi filtreliyor. Ayrıca, sonuçların listesi önem derecesine göre daha faydalıdan daha az faydalıya doğru sıralanacaktır.
4) İşlev boş bir liste döndürdüyse - ikinci adıma tekrar geçiyorum, mevcut veriler üzerinde tekrar farklı matematiksel kombinasyonlar oluşturuyorum, ardından eleme için üçüncü adım. Yani 3-4 kez tekrarlamanız gerekiyor. Veri miktarı her yinelemede artar, bu nedenle oluşturulan yeni veri miktarını bir şekilde sınırlamak daha iyidir. Bu işlevi bırakma için değiştirebilirsiniz, böylece liste boşsa yüz veya iki en iyi sonucu döndürür ve yalnızca bunlardan yeni tahminciler oluşturulabilir.
5) Ayrıca, makaleye göre, ana bileşenlerin modelini eğitmeniz gerekiyor. Bununla ilgili sorunlarım var, şimdiye kadar eğitilmiş model için en iyi r-kare = 0.1, bu yeterli değil, yazdıkları makalede en az 0.95 gerekli. Ancak, elde edilen tahmin ediciler üzerinde, R'den başka bir model eğitebilirsiniz ve sonuç daha iyi olacaktır. Bir nöronla en fazla deneyime sahibim, onunla yapılan bir ön testte en iyi sonuç yaklaşık %37'lik bir hata ile çıkıyor. PCE modeli, teorik olarak, yeniden eğitim vb. olmadan daha kararlı olmalıdır, ancak şimdiye kadar bunun için tahmin edicileri toplamak mümkün olmamıştır.
Ön testte %30 hata varsa, bu zaten oldukça karlı bir modeldir, üzerinde mt5 için bir danışman yapın ve strateji test cihazında kontrol edin.
Bir meslektaşım makine öğrenimi üzerine bir kursun bağlantısını attı, lütfen bakın, bunu nasıl değerlendirirsiniz? Kurs ücretsizdir, ancak bir nedenden dolayı Python'a lanet olsun ((
https://www.udacity.com/course/machine-learning-for-trading--ud501