Sinir ağının girdilerini beslemek için bir dizi gösterge arayın. Tartışma. Sonuç değerlendirme aracı. - sayfa 10

 
marketeer писал(а) >>
... Montaj, test setine uyum sağlamak anlamına gelir, ancak burada bitmiş sistem sadece üzerinde test edilir...
Test setine göre ayarlama veya test seti ile karşılaştırma - Fark görmüyorum. Benim nacizane fikrime göre
 
rip >> :

Çekiciler üzerinde harika çalışıyor :) Resimlerde denemedim. Bence soru dizinin yapısında. Ön işleme koymadım.

Bulursam yayınlarım. Orada, gerçekten, delphi ...

 
TheXpert >> :

Uğraştım ama tamamen farklı bir uygulama alanında. Bu arada, doğrusal olmayan PCA'yı çalıştırmayı başaramadım. Doğrusal, IMHO, oldukça zayıf.


Mercer'in teoremine göre, verilerinizi genişletilmiş uzaya sürmeye çalışın ve teorik olarak burada tartışılan sinir ağındaki ilişkilendirme konusuyla aynı sorunu çözün.

 
joo >> :
Test setine göre ayarlama veya test seti ile karşılaştırma - Fark görmüyorum. Benim nacizane fikrime göre

Bir fark var ve büyük bir fark var (algoritmik ve sonuçlara göre). Ama her birini kendi fikrimize göre tutalım. Birisi ilgileniyorsa - kişisel olarak yazın.

 
TheXpert >> :

Bulursam yayınlarım. Orada, gerçekten, delphi ...

Minnettar olacağım. Sanırım soru ön işleme aşamasındaydı. Sadece ağı kontrol ettiğim için yapmadım.

 
D eductor Academic'i (http://www.basegroup.ru/download/deductor/) elbette akademik amaçlar için koyun. Korelasyon ve faktör analizi yapar, Kohonen haritaları çizer. Daha fazlasını nasıl yapacağını biliyor ... Nasıl ve ne olduğunu anlıyorum.
 
iliarr >> :

Forumun tüm katılımcılarına ve ziyaretçilerine selamlar.


İlgilenen herkesi, girdileri sinir ağına göndermek için en uygun göstergeler kümesini tartışmaya ve aramaya davet etmek istiyorum.

Programımdaki sinir ağının karlılığı bir değerlendirme aracı olarak hizmet edebilir, ayrıca yüksüz eğitimli bir sinir ağı ile bir MQL4 Expert Advisor yükleyebilirim. Rauzmeet, makul sınırlar içinde.


Her katmanda rastgele sayıda katman ve nöron içeren kendi yazdığım (Java'da) bir algılayıcım var, onu JGAP kitaplığından (http://jgap.sourceforge.net/) bir genetik algoritma ile eğitiyorum.

İlk katmanda, nöron sayısı giriş sayısına eşittir, ikinci katmanda - keyfi, 3. katmanda - 1 nöron. Sinir ağı ticaret sinyalleri üretir (Sinir ağı çıkışı >0,5 - satın al, Sinir ağı çıkışı<-0,5 - sat). sinyaller, sinir ağından gelen bir sinyaldeki pozisyonu tersine çeviren (veya açık pozisyon yoksa piyasaya giren) kendi kendine yazılan bir ticaret test cihazı tarafından işlenir. Genetik algoritmanın amaç fonksiyonu nihai kârdır. Bana öyle geliyor ki böyle bir yaklaşım, olası tüm hataları en aza indirmenize ve öğrenmeyi gerçek ticarete mümkün olduğunca yaklaştırmanıza izin veriyor. Eğitimli ağı MQL4 Expert Advisor'a aktarıyorum ve MT4 strateji test cihazı üzerindeki çalışmayı kontrol ediyorum. MT4 indikatöründe sinir ağı için girdileri oluşturuyorum ve bir dosyaya yüklüyorum.Program indikatörü ve danışmanı oluşturuyor ve dosyalara yazıyor (bu sayede daha az karışıklık ve daha az hata oluyor).

gözlemlerime göre 4 katmanlı ağlar 3 katmanlı ağlardan daha fazla (genellikle daha az) kazanç sağlamaz, ancak eğitimleri daha uzun sürer.
8-10-1 ağını Core2 Quadro 2.3 üzerinde 4 gün boyunca eğittim. Farklı başlangıç popülasyonlarına sahip 10 paralel akış, "kimin daha fazla kârı var" birbirleriyle rekabet eder. 4 günde, popülasyonda 200 kromozom ile yaklaşık 4000 nesil geçti. Maksimum kâr ilk 2000 nesilde öğrenildi, ayrıca kâr artmadı. Kârdaki en büyük artış ilk 100 nesilde oldu.

MT4 Strategy Tester'da bu ağın sonuçlarına baktım. Ağın neredeyse hiçbir zaman +-0.5 eşiğine ulaşmadığı ve ticaret sinyalinin çalışmadığı bulundu. nedenini anlamadım. MQL4'e dışa aktarmanın doğruluğunu kontrol ettim (Java ve MQL4'te programdaki girişlerin aynı değerleriyle, ağ aynı değerleri veriyor. Belki de gelen akışın tamamını göndermek gerekliydi, birkaç rastgele değer değil) ). Eşiği 0,4'e düşürdüm ve işe yaramış gibi görünüyordu... Ayrıca, EA'nın pozisyonu 1 çalıştırmada tersine çeviremeyeceğini keşfettim... Çubuk kapandığında ve fiyat bir sonraki çubuktan önce çıkmayı başardığında EA'm çalışıyor . ama bu da o kadar önemli değil... Eğitim döneminde (1-08-09 - 1-10-09 arası ders veriyorum) MT4'teki kâr test cihazımdan daha azdı, MT4'teki test döneminde (1'den 10-09 09 - 1-11-09), ağ kârlıydı. Hangi anlarda zarar eden girişlerin gerçekleştiğine baktım ve sinir ağına giren verilerin yeterli bilgi içermediği izlenimini edindim...

Sinir ağının girişine başvurdum: (k=100)

Göstergelerin nasıl çalıştığını hayal edebiliyorum, ancak onları ve piyasayı, piyasanın durumunu yansıtacak minimum sayıda göstergeyi bağımsız olarak seçecek kadar anlamıyorum...

Forumda aramaya başladım ve buldum (maalesef fikri aldığım yazının yazarını hatırlayamadım):

1-08-09'dan 1-10-09'a kadar 10 akışta, 200 nesilde, nüfus büyüklüğü 200'de öğretildi (java test cihazım sonuçları veriyor):
net 9-10-1 : kar 10521
net 9-20-1 : kar 10434
ağ 9-30-1 : kar 10361
ağ 9-50-1 : kar 10059
sonuç iyi, ancak önceki seçeneklerle daha iyi gibi görünüyordu ... önceki girdilerle koymak gerekecek (geçmiş eğitimlerin sonuçlarını kaydetmedim)

-1 ile +1 aralığındaki değerleri getirmek için ek faktörlere ihtiyaç vardır


Yazılanları okuduktan sonra, eğitilmiş sinir ağını Expert Advisor'a aktarırken olası bir hata olduğunu düşündüm, tekrar test etmem gerekecek...

PS Şimdi keyfi bir yapıya sahip tekrarlayan bir sinir ağı yazıyorum (anladığım kadarıyla, tekrarlayan bir sinir ağı sadece değeri değil, aynı zamanda eğim açısını da hesaba katıyor).


Böyle parlak sinir ağı teorisyenleri arasında muhtemelen gri bir karga gibi görünüyorum. Ama birinin hamburger pişirmesi ve birinin de onları yemesi gerekiyor. Bu nedenle, ilgilenen bir tavsiyede bulunmaya teşebbüs ediyorum. Sinir ağını eğitmek ve bu göstergelerdeki değişiklikleri olağan zaman akışıyla ilişkilendirmek için Force Index.mq4(dönem 3.53), DeMarker.mq4(dönem 3.53) iki göstergeyi kullanabilirsiniz - zaman üçüncü gösterge olacaktır. Göstergeler basittir ve %100 güvenilirlikle piyasa değişikliklerini tahmin eder. Force Index'e 0.0 seviyesini ve DeMarker 0.1 ve 0.9 seviyelerini girin. Bu göstergelerin kodunda, dönemlerin boyutunu int'den ikiye değiştirmek gerektiği açıktır.

 
Avelox >> :

Böyle parlak sinir ağı teorisyenleri arasında muhtemelen gri bir karga gibi görünüyorum. Ama birinin hamburger pişirmesi ve birinin de onları yemesi gerekiyor. Bu nedenle, ilgilenen bir tavsiyede bulunmaya teşebbüs ediyorum. Sinir ağını eğitmek ve bu göstergelerdeki değişiklikleri olağan zaman akışıyla ilişkilendirmek için Force Index.mq4(dönem 3.53), DeMarker.mq4(dönem 3.53) iki göstergeyi kullanabilirsiniz - zaman üçüncü gösterge olacaktır. Göstergeler basittir ve %100 güvenilirlikle piyasa değişikliklerini tahmin eder. Force Index'e 0.0 seviyesini ve DeMarker 0.1 ve 0.9 seviyelerini girin. Bu göstergelerin kodunda, dönemlerin boyutunu int'den ikiye değiştirmek gerektiği açıktır.

çok zaman geçti... Kendi genetik algoritmamı yazdım, sonraki katmanlardan önceki katmanlara geri bildirimle tekrarlayan bir ileri beslemeli ağ yaptım... ama mql4'e yeni bir nevroz ihracatı yapmadım ... ellerim hala uzanmıyor... ulaşırsam, göstergelerinizi aklımda tutacağım. :)