MT4 için hızlı ve ücretsiz bir kitaplık olan sinir ağı uzmanlarını memnun etmek için - sayfa 31

 
marker :

Optimizasyonun sadece %20'si hala geçti (danışmanınız) ve ANN klasöründe şimdiden 1.1 konser var! o kadar çok dosya var ki...

Arama: Explorer'a kısmi bir dosya adı yazın, örneğin EURUSD35 ve dizindeki tüm dosyaların bir listesini dosya adında böyle bir sıra ile alın.
 
VladislavVG :

Tehdit Evet ve daha fazla tavsiye - gerçek ile acele etmeyin. Bu Uzman Danışmanlar, özel bir istifleyiciden çok, yaklaşımın olanaklarının bir göstergesidir.


Gerçek hayatta kullanmıyor musun? "özel istifleyici nedir" - nedir? :)) En azından net duraklar var, martin yok, bir sürü çöp, martingale, danışmanları 10-20 puan ve 200 stop ile tekrar test ettim ve 500 (fazla kalanlar) böylece bu danışman, bence, en kötü seçenek değil .... bunun gibi bir şey, daha iyi bir şey tavsiye ederseniz sevinirim.
 
VladislavVG :
Arama - gezgine kısmi bir dosya adı yazın, örneğin EURUSD35 ve dizindeki tüm dosyaların bir listesini dosya adında böyle bir sıra ile alın.

Teşekkürler:)
 
marker :

Gerçek hayatta kullanmıyor musun? "özel istifleyici nedir" - nedir? :)) En azından net duraklar var, martin yok, bir sürü çöp, martingale, danışmanları 10-20 puan ve 200 stop ile tekrar test ettim ve 500 (fazla kalanlar) böylece bu danışman, bence, en kötü seçenek değil .... bunun gibi bir şey, daha iyi bir şey tavsiye ederseniz sevinirim.

Hayır, en azından alnında kullanmıyorum. Ancak prensipte ondan bir şey yaratılabilir. Bunu yapmak için, giriş sistemi üzerinde biraz "canlandırmanız" gerekir. Veya sadece tüm yaklaşımı değiştirin))))))))).

Bu EA için giriş sistemi, 30 periyotlu RSI'dir. Bu, tek başına bu göstergeyi kullanarak ticaret yapmaya çalışmak gibidir.

 void ann_prepare_input () {
     int i;
     double res = 0 ;
     for (i = 0 ; i < AnnInputs; i++) {
       res = ( iRSI ( Symbol (), 0 , 30 , PRICE_OPEN , i) - 50.0 ) / 50.0 ; 
       if ( MathAbs (res) > 1 ) {
         if (res > 0 ) {
            InputVector[i] = 1.0 ;            
         } else {
            InputVector[i] = - 1.0 ;            
         }
      } else {
         InputVector[i] = res;            
      }
    }
}

Tek bir ağ, uzun süre kârlı bir şekilde ticaret yapamayacak. Bunu kontrol etmek zor değil - algoritma aşağıdaki gibidir:

1. Mevcut geçmişin tamamını optimize etmeyin, örneğin, Ağustos 2010 olduğunu düşünün. Bu seferden ÖNCE optimize edin.

2. Optimizasyon tarihinden SONRA bugüne kadar beğendiğiniz seçeneği çalıştırın.

Buna ileriye dönük test denir ve büyük miktarda zaman kazandırır, kararsız seçenekleri ve en önemlisi parayı bir kenara bırakır.

Ancak girdileri, optimizasyon döneminin dışındaki dönemde sistem bir süre çalışacak ve işlem sayısı - elbette bir veya iki değil - çalışacak şekilde seçtiğinizde "ayarlanabilir bir istifleyici" alacaksınız. kâr. Sonra sadece periyodik olarak ayarlamak için kalır ......

 

Pekala, forvetin ne olduğunu biliyorum, bir yıl önce bu soruyu muhtemelen bu sitede sordum, belki de zaten iki :)) Ve küçük bir frisht için ağladım :)))))))))) sıradan bir Uzman Danışman ), çünkü sonuç yine farklı olacak, çünkü bu bir ağ, her zaman farklı görünüyor (nedenini hala anlamıyorum, oradaki belirli ağırlıklar her zaman değişiyor gibi görünüyor, burada emin değilim), ile sıradan Uzman Danışmanlar bu konuda çok daha kolay....

 

Bu arada hangi prensiple açıldığını hiç girmedim, kodu okuyamadım ama RSI seviyeleri ile ilgili bir şey :))

 

"Optimizasyon döneminin dışında, sistem bir süreliğine olacak ve işlem sayısı - bir veya iki değil, elbette - kârlı çalışacak" - hemen hemen her danışmanı tercih edebilirsiniz, böylece en azından artı olarak keser. Bir süre, asıl mesele sızdırmaması ve güçlü olmayan zayıflıkları olmasıydı, bu başka bir soru :))

 
marker :

Pekala, forvetin ne olduğunu biliyorum, bir yıl önce bu soruyu muhtemelen bu sitede sordum, belki iki :)) sıradan bir Uzman Danışman), çünkü sonuç yine farklı olacak, çünkü bu bir ağ, her zaman görünüyor farklı (nedenini hala anlamıyorum, belirli ağırlıklar her zaman değişiyor gibi görünüyor, burada iyi değilim) , sıradan danışmanlarla bu konuda çok daha kolay ...

Orada, start() {} işlevinde, ileri testte ızgarayı ayarlayan (bitiren) bir kod var.....

   // Adaptive part
   if (IsOptimization() || IsTesting()) {
      total = OrdersHistoryTotal();
       if (total > 0 ) {
         OrderSelect (total - 1 , SELECT_BY_POS, MODE_HISTORY);   
         if (OrderProfit() < 0 ) {
             if (OrderType() == OP_SELL) {
               train_output[ 0 ] = 1 ; 
            } else {
               train_output[ 0 ] = - 1 ; 
            }
             // Learning
             for (i = 0 ; i < AnnsNumber; i++) {
                       ann_train (AnnsArray[i], InputVector, train_output);
                      }
         
        }
      }
   }

IMHO - bu yeterli bir değerlendirme sağlamaz. Kaldırırsanız, her şey normal bir Uzman Danışmandakiyle aynı olacaktır.

 
VladislavVG :

Orada, start() {} işlevinde, ileri testte ızgarayı ayarlayan (bitiren) bir kod var.....

IMHO - bu yeterli bir değerlendirme sağlamaz. Kaldırırsanız, her şey normal bir Uzman Danışmandakiyle aynı olacaktır.


Bunun yetersiz olduğuna katılıyorum, çalışma sırasındaki belirli ağırlıkların optimizasyon sırasındaki ile aynı olması gerektiğine katılıyorum, aksi takdirde ikinci geçiş "saçmalıktan" elde edilir - anladığım kadarıyla. Gerçek hayatta, “eğitiminizi bitiremezsiniz”, bu nedenle, savaşta aynı belirli ağırlıklarla sürmeniz gerekir, sadece onları nasıl kurtaracağınızı öğrenmeniz gerekir, bir dalda bir yerde gördüm, Mümkün.
 
marker :

"Optimizasyon döneminin dışında, sistem bir süreliğine olacak ve işlem sayısı - bir veya iki değil, elbette - kârlı çalışacak" - hemen hemen her danışmanı tercih edebilirsiniz, böylece en azından artı olarak keser. Bir süre, asıl mesele sızdırmaması ve güçlü olmayan zayıflıkları olmasıydı, bu başka bir soru :))

Her zaman değil: Geçmişi analiz etmenin sınırlı olasılıkları nedeniyle, örneğin bir trendin sonunda ve konsolidasyon alanlarına veya trendin tersine çevrilmesine geçerken çok şey kaybedebilirsiniz.