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

 
Alexey Burnakov :

Modelinizin uzun süreler boyunca nasıl çalıştığı hakkında hiçbir fikriniz yok: İleriye dönük büyük bir test ve ileriye doğru yürüme testi yok. Modeliniz, iyi seçilmiş birkaç resimdeki sinyallerle karıştırdığınız bir dizi öğrenilmiş gürültü olabilir.

Yaklaşımı yeniden gözden geçirmenizi ve başlamak için kapsamlı testler yapmanızı tavsiye ederim. Çukurlar ve dağlar göreceksiniz ve belki, ancak olası değil, sıfır beklenen değeri birazcık geçeceksiniz. Ve tüm bunlar, gerçek para kaybetmeye başlamadan önce yapılabilir.

En şaşırtıcı olanı, sistemime olan güveniniz. Bakalım hafta sonunda sana nasıl çalıştığını göstereceğim... tamam mı?
 
Michael Marchukajtes :
En şaşırtıcı olanı, sistemime olan güveniniz. Bakalım hafta sonunda sana nasıl çalıştığını göstereceğim... tamam mı?

Gerek yok. Bir hafta artı bir hafta eksi. Gösterge değil

Sisteminizden %100 emin değilim. Bir gerçek ifadesi var: az çok uzun bir süre nasıl çalışacağını bilmiyorsunuz. Burada deneyimleri paylaşmak için bir konu var. Şu ana kadarki sonuçlarınızın hem rastgele hem de düzenli olabileceğine dair deneyimim, ancak çok daha büyük bir şansla rastgele olabilir. Ve sana tavsiye veriyorum.

 

Merhaba!

http://tjo-en.hatenablog.com/entry/2016/03/30/233848 mxnet paketinden evrişimsel bir ağ çalıştırmaya çalışıyorum ama tam olarak değil, daha doğrusu nasıl çalıştırılacağı hiç açık değil "bizim" verilerimizle, yani dizeler biçiminde, sonuçta, ağ çoğunlukla resimlerle çalışır ve verileri matrislerle çok boyutlu bir dizi biçiminde alır, eğer biri onu nasıl çalıştıracağını anlar ve bilirse, o zaman son derece olurdum Bu ağın nasıl çalıştığına dair bir örnek için minnettarım, örneğin "iris" ile

{mxnet} R package from MXnet, an intuitive Deep Learning framework including CNN & RNN - Data Scientist TJO in Tokyo
{mxnet} R package from MXnet, an intuitive Deep Learning framework including CNN & RNN - Data Scientist TJO in Tokyo
  • 2016.03.30
  • tjo-en.hatenablog.com
Actually I've known about MXnet for weeks as one of the most popular library / packages in Kaggler, but just recently I heard bug fix has been almost done and some friends say the latest version looks stable, so at last I installed it. Convolutional Neural Network (CNN) I believe almost all readers of this blog already know well about Deep...
 
Michael Marchukajtes :
Olmaz... Toplam sayıdan hata sayısını izlemeniz gerekir ve eğer hatalar artarsa, ağı aşırı zorlayın. Diyelim ki 20 sinyalden 4 hatanız varsa bu normaldir, daha fazla hata varsa ağın yeniden eğitilmesi gerekir. Başka bir soru ortaya çıkıyor .. 10 sinyal için güvenilir olabilmesi için hangi modelin seçileceği. Ah işte Yuri zaten anlatıldığı gibi. Hem ikili hem de üçlü modellerin maksimum genelleme seviyesini gösteren modeli tam olarak seçiyoruz ve üzerinde çalışmaya başlıyoruz. Stratejinin süresini niteliksel olarak artırmak için eğitim aralığını artırmanız ve artırmak için girdi verisi miktarını artırmanız gerekir. Yani 10 giriş 100 sinyali sıfıra çekebilir. 15 giriş 225 kayıt kesebilecek ve bu zaten sırasıyla 6 haftalık sinyaller ve örnek dışındaki ağ çalışma süresi bir hafta değil iki daha uzun olacak ... Uygun hata seviyesi ile. Hatalar olmadan çalışmak mümkün değildir. İsterdim ama mümkün değil, asıl mesele bu hatanın depozito üzerindeki etkisini azaltmak ve bitti :-)

Lütfen libVMR veya jPredictor'a dikkat edin, şişirilmiş forex performansı gösterirler. Forex için eğitim seti dışındaki veriler üzerinde test yapmak çok önemlidir. libVMR veya jPredictor, kaynak dosyadan veri alır, modeli eğitmek için satırların yarısını rastgele seçer, ardından bu veriler üzerinde bir model oluşturulur ve kalan satırlarda kontrol edilir. Bu, görüntü tanıma, metin tanıma veya başka herhangi bir basit görevi değerlendirmek için uygun olabilir. Ama bu Forex için uygun değil.

Basit bir deney yapın: Eğitim dosyasında yaklaşık 200 satırınız var ve tahmin aralığı %30'dur. Bu yüzden dosyayı ikiye bölün - ilk dosyada 150 ilk satır, ikincide - kalan 50 son satır olacak. 150 satırlık yeni bir dosyada jPredictor'ı eğitin. daha sonra "modeli kullan" aracılığıyla kalan 50 satır için bir tahmin yapın (verileri birer birer girmeniz gerekecek, biraz zaman alacaktır). Doğru cevapları sayın %90 olmaz, en fazla %60 olur diye düşünüyorum.
Sadece ana göstergeniz sayesinde hala kârdasınız, görünüşe göre zaten az çok kârlı ve nörondaki ek bir filtre sayesinde, onu biraz iyileştiriyorsunuz.

 
Alexey Burnakov :

Gerek yok. Bir hafta artı bir hafta eksi. Gösterge değil

Sisteminizden %100 emin değilim. Bir gerçek ifadesi var: az çok uzun bir süre nasıl çalışacağını bilmiyorsunuz. Burada deneyimleri paylaşmak için bir konu var. Şu ana kadarki sonuçlarınızın hem rastgele hem de düzenli olabileceğine dair deneyimim, ancak çok daha büyük bir şansla rastgele olabilir. Ve sana tavsiye veriyorum.

Yani, kâseyi istiyorsun... Bir kez eğitim aldın ve hayatının geri kalanında kupon kesmeye mi oturdun? Ne olmuş? Değiştiğinizde şaşırıyorsunuz, hangi yıldan beri piyasadasınız? Bu bir sır değilse ...... Piyasanın sürekli değiştiğinin farkındasınız ve bir süre sonra model basitçe uçup gidiyor, modelin uzun yıllar çalışmasını istiyorsanız, o zaman aylık çizelgeye gidin, bu durumda sadece doğru. Ve böylece, 5 dakika boyunca haftada çalışmak tamamen normal bir sonuçtur, o zaman aşırı eğitim var .... Peki, eğer iki hafta ise, o zaman genellikle sınıf ....
 
Dr.Tüccar :

Lütfen libVMR veya jPredictor'a dikkat edin, şişirilmiş forex performansı gösterirler. Forex için eğitim seti dışındaki veriler üzerinde test yapmak çok önemlidir. libVMR veya jPredictor, kaynak dosyadan veri alır, modeli eğitmek için satırların yarısını rastgele seçer, ardından bu veriler üzerinde bir model oluşturulur ve kalan satırlarda kontrol edilir. Bu, görüntü tanıma, metin tanıma veya başka herhangi bir basit görevi değerlendirmek için uygun olabilir. Ama bu Forex için uygun değil.

Basit bir deney yapın: Eğitim dosyasında yaklaşık 200 satırınız var ve tahmin aralığı %30'dur. Bu yüzden dosyayı ikiye bölün - ilk dosyada 150 ilk satır, ikincide - kalan 50 son satır olacak. 150 satırlık yeni bir dosyada jPredictor'ı eğitin. daha sonra "modeli kullan" aracılığıyla kalan 50 satır için bir tahmin yapın (verileri birer birer girmeniz gerekecek, biraz zaman alacaktır). Doğru cevapları sayın %90 olmaz, en fazla %60 olur diye düşünüyorum.
Sadece ana göstergeniz sayesinde hala kârdasınız, görünüşe göre zaten az çok kârlı ve nörondaki ek bir filtre sayesinde, onu biraz iyileştiriyorsunuz.

Sadece nasıl veri hazırlayacağınızı bilmiyorsunuz :-) Hiç bir tahmin aralığım yok, hiçbir şey öngörmüyorum. %30 bir güven aralığıdır, Modele güvenmenin oldukça mümkün olduğu aralık, hatta %50'nin tamamı. Yani üç hafta eğitim almışlarsa bir hafta çalışmalılar. Tahminci Yuri ile bir yıldan fazla bir süredir çalışıyorum ve birçok şeyi ve ayrıca verilerin nasıl hazırlanacağını, ne yapabileceğini (tahmin edici) ve ne yapamayacağını anladım. Bana verilerinizle birlikte bir dosya gönderebilirsiniz, modeli eğiteceğim ve gelecekte nasıl çalıştığını göreceksiniz. istersen tabi...

Ve eğer yapacaksanız, o zaman aşağıdakileri yapacağız. Bir hafta önce geri adım atın.. (bu hafta örneklem dışı bir test haftası olacak) Verileri 10 giriş = 100 kayıt hızında kaydedin, böylece uzun süre antrenman yapmamış olursunuz. Ben modeli eğiteceğim, siz aracınıza uygulayacaksınız, daha önce yapılış prensibini anlatmış ve geçen haftanın sonucunu göstermiş, orada göreceğiz... Nasıl buldunuz?

 
Michael Marchukajtes :

Yani üç hafta eğitim almışlarsa bir hafta çalışmalılar.

Ve bence, peki, yakalamak nerede? Eh, forumda henüz Reshetov'un el sanatlarıyla gerçekten para kazanacak bir kişi yoktu. Ve işte burada! Tabii ki hile)
 
birleştirici :
Ve bence, peki, yakalamak nerede? Eh, forumda henüz Reshetov'un el sanatlarıyla gerçekten para kazanacak bir kişi yoktu. Ve işte burada! Tabii ki hile)
Birisi gibi .... Bu zanaatı oldukça beğendim, içinde rasyonel bir tane var, Eh, kim haysiyetle uygulayamazsa, ona hiçbir şey yardımcı olmaz. Hayır, bana bir yıl boyunca hatasız çalışan bir sistem verin, o zaman inanırım ve bu yüzden .... çöp hepsi bu. Bu tür tuhaflar beni şaşırtıyor, tıpkı fiyat nereye gidecek ya da bu sinyal kaç puan kazandıracak diyenler gibi??? Pekala, sen safsın. Piyasa öyle bir haber ki geleceği bilmek mümkün değil...... Ama bütün bunları anlayamazsınız ....
 
Michael Marchukajtes :

İşte şimdi bu dosyadan yaptığım resimde çalışan güncel örnek

Sadece sinyalden sonra 100 puan kâr olacağını nasıl hesapladığınızı bulmak için kalır?

Örneğin, gelecekte n mum alıp gölgelerini ölçebilirsiniz. Herhangi bir mumun gölgesi ile mevcut fiyat arasında sinyal yönünde bir fark varsa 100 pipten az değilse, o zaman bir tane kurarız. Koşul herhangi bir mum için işe yaramadıysa, sonuç 0'dır.

İkinci seçenek: Durdurma kaybı olan bir danışman yapıyoruz ve mevcut mumdan 100 puan uzakta alıyoruz ve sinyallere göre alım satımlar açıyoruz ve kalıbı hatırlıyoruz. Poz kapandıktan sonra bakın. Kârla kapanıyorsa, örnekte böyle bir modeli bir, bir kayıp varsa, sıfır ile işaretleriz.

Tabii ki, örneğin bana kişisel olarak örnekleme için veri toplayan komut dosyasının veya danışmanın kodunu da gönderebilirsiniz. Orada kendim çözeceğim.

Şimdi jPrediction'ı uyarlamaya çalışıyorum, böylece içinden kod alıp MQL'ye derlemek zorunda kalmam. EA, kalıbı bir sinyaldeki bir dosyaya dökecek ve Java'da bir başıboş - üçlü bir sınıflandırıcı, bu tür dosyaları okuyacak ve sinyali onaylarsa, bir öneri ve bir ses sinyali ile kendi uyarısını yayınlayacaktır. IMHO daha kolay olur mu?

Daha sonra, tam bir makine yapmak mümkün olacak, böylece sınıflandırıcı ve danışman kendi başlarına tam makinede dosya alışverişinde bulunabilecek ve anlaşmalar açabilecek.

 
Yuri Reshetov :

Sadece sinyalden sonra 100 puan kâr olacağını nasıl hesapladığınızı bulmak için kalır?

Örneğin, gelecekte n mum alıp gölgelerini ölçebilirsiniz. Herhangi bir mumun gölgesi ile mevcut fiyat arasında sinyal yönünde bir fark varsa 100 pipten az değilse, o zaman bir tane kurarız. Koşul herhangi bir mum için işe yaramadıysa, sonuç 0'dır.

İkinci seçenek: Durdurma kaybı olan bir danışman yapıyoruz ve mevcut mumdan 100 puan uzakta alıyoruz ve sinyallere göre alım satımlar açıyoruz ve kalıbı hatırlıyoruz. Poz kapandıktan sonra bakın. Kârla kapanıyorsa, örnekte böyle bir modeli bir, bir kayıp varsa, sıfır ile işaretleriz.

Tabii ki, örneğin bana kişisel olarak örnekleme için veri toplayan komut dosyasının veya danışmanın kodunu da gönderebilirsiniz. Orada kendim çözeceğim.

Şimdi jPrediction'ı uyarlamaya çalışıyorum, böylece içinden kod alıp MQL'ye derlemek zorunda kalmam. EA, deseni bir sinyaldeki bir dosyaya bırakacak ve Java'da bir başıboş - üçlü bir sınıflandırıcı, bu tür dosyaları okuyacak ve sinyali onaylarsa, bir öneri ve bir ses sinyali ile kendi uyarısını yayınlayacaktır. IMHO daha kolay olur mu?

Daha sonra, tam bir makine yapmak mümkün olacak, böylece sınıflandırıcı ve danışman kendi başlarına tam makinede dosya alışverişinde bulunabilecek ve anlaşmalar açabilecek.

Her şey çok daha kolay. Mevcut sinyalin kapanması ile bir önceki sinyalin kapanması arasındaki farkı hesaplıyorum, eğer bu fark pozitif ise, sinyalin yönünü dikkate alarak pozitif fark 100 pips'den fazla ise, o zaman bir tane koyuyorum. sıfırdan küçükse önceki sinyal. Her şeyi, sinir kabuğunun altına yazılan Lodir'in yardımıyla kaydediyorum. Herhangi bir göstergenin herhangi bir verisini bir csv dosyasına mükemmel bir şekilde kaydeder, yani bunun gibi bir şey ..... Modeli boşaltma hakkında, Gerçek şu ki, herhangi bir danışman kullanmıyorum, ellerimle ticaret yapıyorum ve modelleri içine ekliyorum. gösterge, bu yüzden herhangi bir danışman basitçe ne yapmaz. En kolay yol, ikili modelle birlikte Üçlü modelin de korunmasıdır. Örneğin, dosya adının ikili öneki _2 için, üçlü _3 için bu yeterli olacaktır ..... IMHO. dahiyane olan her şey basittir, karmaşıklaştırmaya gerek yoktur.

İşte herhangi bir göstergenin verilerini kaydeden bir danışman, 5 dakika boyunca fonksiyona bakın, orada göstergelerim var. Doğru, bunların hepsi MT4 için, sadece üzerinde çalışıyorum ... şimdilik ....

Dosyalar:
Neden: