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
normalleştirme her zaman gerekli değildir, ağın sadece 0 ve 1 ile ÇALIŞMASINI ve ÇALIŞMASINI kim söyledi?
Bir örnekle basit bir ızgara ekleyebilirim (maalesef şu anda elimde malzeme yok) - Daha sonra ekleyeceğim
basit bir NN'nin bu sorunu normalleştirme ile önceden veri hazırlığı olmadan çözdüğü yer
maalesef orjinal değil
Ancak, verdiğim örnek! zaten normalleşti
koşul iki aralık vardır
1 0-100
2 10-30
sadece bir aralıktaki konum oranını bulmanız gerekir - bu bilinen
Temelde ölçeklendirme.
Normalleştirme neredeyse her zaman gereklidir. Veriler, etkinleştirme işlevinin kapsamında olmalıdır.
Komut dosyasında sigmoid [-1; +1] şeklindedir. Diyelim ki, bir üstel ... veya bir karekök ile değiştirirsek.
http://www.statsoft.ru/home/portal/applications/NeuralNetworksAdvisor/Adv-new/ActivationFunctions.htm
http://www.statsoft.ru/statportal/tabID__32/MId__141/ModeID__0/PageID__354/DesktopDefault.aspx
işte bir ağ oluşturma örneği ... giriş DÜŞÜK, yani normalleştirme yok
http://www.statsoft.ru/statportal/tabID__32/MId__141/ModeID__0/PageID__354/DesktopDefault.aspx
işte bir ağ oluşturma örneği ... giriş DÜŞÜK, yani normalleştirme yok
Normalleştirilmemiş verileri kullanmak bazen çok faydalıdır. Dönüşümler sırasında kaybolabilecek bilgi içeriğini kaybetmezler.
Ve eğitim örneğinin bilgilendiriciliğini belirlemek için resmi bir mekanizma yoktur ...
Bu arada, makalede aktivasyonun hangi işlevinin kullanıldığı hiçbir yerde görüntülenmiyor. Görünüşe göre, [-inf;+inf] veya [0;+inf] kapsamındaki bir şey ...
programı biraz değiştirdi!
ekrandaki çıktı biçimini biraz değiştirdişimdi SCRIPT, çıktı verilerini yüksek doğrulukla hesaplamak için borçlarını düşünüyor
program, elbette, evrensel değil, zaten ortaya çıktı, ancak girdi ve çıktı sayısı için keskinleştirildi
ama gizli katmanın boyutu! öğrenme sürecinde seçilen
sonraki sürüm - Girdi ve çıktı sayısı açısından esnek hale getirmeye çalışacağım
ve mümkünse genetik algoritma ekleyeceğim
amacı birçok hata ile NEURONS öldürmek olacak
ve az sayıda hatayla nöronların çoğaltılması!
yani, aslında, en az sayıda hataya sahip olan nöronların dizisinde arama yapmak ve onlardan değiştirilecek yavrular yaratmak.
kötü performans gösteren nöronlar...
1 Öğrenme oranı şu anda düşük
2. değişiklik - gizli 1. seviyenin nöron sayısı mantıksız rastgele
3 giriş ve çıkış veri örneğinde yüksek doğruluk elde ederken eğitimi durdurun
Bu nasıl kullanılır? Grafiğe bir yazı koydum, yığınlarca sayı birbirine karşılık gelmeye başladı... Bu sayılar ne diyor?
Bu nasıl kullanılır? Grafiğe bir yazı koydum, yığınlarca sayı birbirine karşılık gelmeye başladı... Bu sayılar ne diyor?
Neden? GA için kendi ağ eğitim algoritmama sahip olduğum için kodu anlamakta bile zorlandım - bunun üzerinde zaman harcamanız, girdileri nereye iteceğinizi, bu çıktıdan nasıl geri çekileceğinizi ve ne zaman alım-satım yapacağınızı anlamanız gerekiyor. Bütün bunlar mümkün mü? Yoksa kâse koşusu için mi buradasın?
Bu nasıl kullanılır? Grafiğe bir yazı koydum, yığınlarca sayı birbirine karşılık gelmeye başladı... Bu sayılar ne diyor?
Neden? GA için kendi ağ eğitim algoritmama sahip olduğum için kodu anlamakta bile zorlandım - bunun üzerinde zaman harcamanız, girdileri nereye iteceğinizi, bu çıktıdan nasıl geri çekileceğinizi ve ne zaman alım-satım yapacağınızı anlamanız gerekiyor. Bütün bunlar mümkün mü? Yoksa kâse koşusu için mi buradasın?
Blast burada bir danışman veya gösterge aramayın - bu hala çok uzak
daha ziyade MQL4'te bir sinir ağının çalışma prensipleri üzerine bir çalışmadır.
---
genel olarak, MT'ye veya hızlı olan diğer dillere yapışırsanız, bunu C ++ ile DLL olarak yazmak mantıklıdır.
Loknar, daha doğru çıktı verileri elde etme girişimi ile başlangıçta yayınlanan komut dosyasının yalnızca bir modifikasyonudur.
--
bu arada bir katman eklemeye çalıştım :-) çıktı girdilerinden bahsetmiyorum bile ... öğrenme borusu algoritması o anda ölüyor ...
---
gibi bir şey denemek istiyorum
3 çıkış
çıktı aptalca 0 veya 1 veya -1 0 +1 değil, belirli bir aralıktır
x 0 0 - güle güle bekle
0 x 0 daire (al veya sat çık)
0 0 x sat beklet sat
x'in 0 veya 1 olmadığı ancak belirli bir aralıkta sapma olduğu durumlarda, örneğin -1.000 0.000 +1.000
yani 0.1122 veya -0.012 gibi bir değer alabilir
sınır geçişleri için 3 çıktının bir kombinasyonu analiz edilir
Her TF'de 9 giriş - M1 M5 M15 M30 H1 H4 toplam 54 giriş alıyoruz
her TF için ortalama 3 5 8 13 21 34 55 89 144 233 arasındaki farkı veriyoruz
toplam 3-5 5-8 8-13 13-21 21-34 34-55 55-89 89-144 144-233 her TF'de toplam 9
ızgara görünümünde FAN OF AVERAGES gibi bir şey alıyoruz... :-) matriste
desen gibi bir şeye sahip olduğumuzda 2 3 4 5 6 7 8 9 10 11 fan tamamen açılıyor, görünüşe göre hücre
bir desenimiz olduğunda -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 fan tamamen açılır - BY
daha büyük bir TF'de koşullu sayılar ve böyle bir kalıp -1 -3 -7 - 10 -15 -20 -30 -40 -80 var---
bir çeşit eğitim seti
1 2 1 0 -3 2 3 0 4 M1
-1 2 -1 0 1 2 3 0 -4 M5
...
................................H4
Eğitim için veri hazırlayın
Bu nasıl kullanılır? Grafiğe bir yazı koydum, yığınlarca sayı birbirine karşılık gelmeye başladı... Bu sayılar ne diyor?
Neden? GA için kendi ağ eğitim algoritmama sahip olduğum için kodu anlamakta bile zorlandım - bunun üzerinde zaman harcamanız, girdileri nereye iteceğinizi, bu çıktıdan nasıl geri çekileceğinizi ve ne zaman alım-satım yapacağınızı anlamanız gerekiyor. Bütün bunlar mümkün mü? Yoksa kâse koşusu için mi buradasın?
Başlangıçta, sinir ağları fikrini çok seviyorum. Sadece 1000 puana sahip olan ağın bir şekilde bir noktaya yaklaşacağını biliyorum ... ve otomatik ticaretin ağ algoritmasına dayalı bir danışmanla kazanıldığını biliyorum. Böyle bir ağın kendi versiyonumu oluşturma planlarım var, ancak bu aşamada ne mql4'te ne de sinir ağlarında hiçbir şey anlamıyorum.
Bu nedenle mql4 öğrenmek için önce Expert Advisor'a stratejimi yazacağım. O zaman ağlar hakkında düşünecekler.
Varyantınız ilgi için indirildi. İlk defa böyle şeylerle karşılaşıyorum. Bu ağların nasıl çalıştığını anlamıyorum. Bu nedenle, bu tür sorular ortaya çıktı.
Bu arada, sizin görüşünüze göre, benzer konulardaki herhangi bir bağlantıya memnuniyetle katılacağım!
BU AĞ
programı biraz değiştirdi!
ekrandaki çıktı biçimini biraz değiştirdişimdi SCRIPT, çıktı verilerini yüksek doğrulukla hesaplamak için borçlarını düşünüyor
program, elbette, evrensel değil, zaten ortaya çıktı, ancak girdi ve çıktı sayısı için keskinleştirildi
ama gizli katmanın boyutu! öğrenme sürecinde seçilen
sonraki sürüm - Girdi ve çıktı sayısı açısından esnek hale getirmeye çalışacağım
ve işe yararsa, genetik bir algoritma ile ekleyeceğim
amacı birçok hata ile NEURONS öldürmek olacak
ve az sayıda hatayla nöronların çoğaltılması!
yani, aslında, en az sayıda hataya sahip olan nöronların dizisinde arama yapmak ve onlardan değiştirilecek yavrular yaratmak.
kötü performans gösteren nöronlar...
1 Öğrenme oranı şu anda düşük
2. değişiklik - gizli 1. seviyenin nöron sayısı mantıksız rastgele
3 giriş ve çıkış veri örneğinde yüksek doğruluk elde ederken eğitimi durdurun
AYNI IZGARA, ancak Microsoft Visual C++ 6.0 ile yazılmış
işin hızı MQL4'tekinden çok daha yüksek
algoritma değişmedi, MQL4'ten C++'a aktarım, nesneler - sınıflar kullanılmadan mümkün olduğunca doğrudan
Başka bir seçenek ama MQL'de
sadece M1 üzerinde çalışmaya çalışmak mevcut trend yönünü gösteriyor
3'ünde çıkın, teorik olarak, başlangıçta antrenman yapamazsınız - ancak hemen hazır Ağırlıkları alın - önceden antrenman yapın
---
Normalleştirilmiş hareket farkının beslendiği 9 giriş
---
çıkış-1 çıkış-2 çıkış-3 çıkış
0,9 0,01 0,01 yukarı trend
0,01 0,9 0,01 düz
0,01 0,01 0,9 eğilim Aşağı
---
3-4 zaman dilimi ekleyip hemen hesaplamayı planlıyorum!
PNN, ağırlıkları zaten yaptığınızda çok hızlı çalışır
---
test kodu deneysel - lütfen tekme atmayın