Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 77

 
FinEngineer : 2012.12.22 11:40:32 Pair_delta_RSI (EURGBP,M1) dizi 'Pair_delta_RSI.mq5' içinde aralık dışında (92,37)
böyle bir hatanın da ortaya çıktığı ortaya çıktı ... yani. iki hata...
Ek olarak, iki hatadan endişe ediyorsunuz: "yetersiz hesaplanmış veri" ve "aralık dışı dizi )". Ama nedense ikinci hata hakkında hiçbir şey yazmamışsınız (92 satır numaralı kod örneği vermemişsiniz), varlığına birkaç kez odaklanmışsınız.
 
Yedelkin :

Kodu doğru yapıştırın .

Evet, orada sizin için iyi çalıştı, bu "veri eksikliğinden sorumlu olan kod parçası". Ve ilk kene geldiğinde, RSI verilerinin henüz terminal tarafından hesaplanmadığını doğru bir şekilde bildirdi. Hata mesajları almaktan hoşlanmıyorsanız, yukarıda belirtildiği gibi yapmayı deneyin, yani: sadece OnCalculate()'de değil, aynı zamanda OnInit()'te de hesaplanmış verilerin varlığını kontrol edin. Başka bir deyişle, seçtiğiniz teknik göstergeler için verilerin hesaplanması için OnInit() içinde beklemeye çalışın (son döngü boyunca bekleyin) ve ardından göstergeler için veriler olduğunda OnCalculate() içindeki onay işaretlerinin işlenmesine devam edin. hesaplanacağını garanti eder.

Ek. Sonunda, doğrulama kodunun bir kısmının kaldırılması, hesaplanan gösterge verilerinin miktarını artırmaya hiç katkıda bulunmaz :)

Bu kontrolü OnInit işlevine ekledim, ancak bu işlevde "rates_total"ın ne olduğunu bilmiyoruz... bir hata oluşuyor... 'rates_total' - bildirilmemiş tanımlayıcı... ne yapmalı?
 
Yedelkin :
Ek olarak, iki hatadan endişe ediyorsunuz: "yetersiz hesaplanmış veri" ve "aralık dışı dizi )". Ama nedense ikinci hata hakkında hiçbir şey yazmamışsınız (92 satır numaralı kod örneği vermemişsiniz), varlığına birkaç kez odaklanmışsınız.
 int limit;
   if (prev_calculated== 0 )
      limit= 0 ;
   else limit=prev_calculated- 1 ;
//считаем индикатор дельта рси
   for ( int i=limit;i<rates_total; i++)
      DeltaRSI_Buffer[i]=RSI1_Buffer[i]-RSI2_Buffer[i];
   return (rates_total);
bu alanda bir yerde 92. satır ... işte bir kod parçası ... bir yerlerde bir hata var ... ortaya çıkıyor)
 
FinEngineer : Bu kontrolü OnInit işlevine ekledim, ancak bu işlevde "rates_total"ın ne olduğunu bilmiyoruz... bir hata oluşuyor... 'rates_total' - bildirilmemiş tanımlayıcı... ne yapmalı?
Daha önce önerildiği gibi BarsCalculated() işlevinin açıklamasındaki örneği anladınız mı? Rate_total yok
 
FinEngineer : bu alanda bir yerde satır 92...işte bir kod parçası...bir yerde bir hata var...görünüşe göre)

Açık. Çizgide

DeltaRSI_Buffer[i]=RSI1_Buffer[i]-RSI2_Buffer[i];
dizinin ötesine geçer. Ve çıktı RSI1_Buffer[i] içindedir. ...Cevap vermekte zorlansam da, diziden çıkmanın bir yolu olmamalı.
 
Herkese merhaba ... herhangi biri bana aşağıdaki kodun mql5'te nasıl görüneceğini söyleyebilir mi:
için (int i=3; i<Barlar; i++)
{
Yukarı=iFractals(NULL, 0, MODE_UPPER, i); (Yukarı>0) kırılırsa;
}
 
i999i :
Herkese merhaba ... herhangi biri bana aşağıdaki kodun mql5'te nasıl görüneceğini söyleyebilir mi:
için (int i=3; i<Barlar; i++)
{
Yukarı=iFractals(NULL, 0, MODE_UPPER, i); (Yukarı>0) kırılırsa;
}

Makale yardımcı olur.

Çift iFractals'ı (dize sembolü, int zaman çerçevesi, int modu, int shift) dörtlü olarak değiştirin

 double iFractalsMQL4( string symbol,
                     int tf,
                     int mode,
                     int shift)
  {
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   int handle= iFractals (symbol,timeframe);
   if (handle< 0 )
     {
       Print ( "Объект iFractals не создан: Ошибка " , GetLastError ());
       return (- 1 );
     }
   else
       return (CopyBufferMQL4(handle,mode- 1 ,shift));
  }

 
Strateji test cihazı hakkında soru: Maksimum karlı işlem yüzdesine sahip bir dizi parametre seçmeniz gerekiyor - nasıl yapılır? "Denge + min DD" optimizasyon kriteri aşağı yukarı uygun gibi görünüyor, ancak çarpan olarak kâr diğer her şeyi tıkar..
 
f2011 :
Strateji test cihazı hakkında soru: Maksimum karlı işlem yüzdesine sahip bir dizi parametre seçmeniz gerekiyor - nasıl yapılır? "Denge + min DD" optimizasyon kriteri aşağı yukarı uygun gibi görünüyor, ancak çarpan olarak kâr diğer her şeyi tıkar..

Ve işte prib işlemlerinin bakiyesi ve yüzdesi?

Google'da "Bir site için optimizasyon kriterinizi nasıl oluşturabilirsiniz:mql5.com ticaret robotu" başlıklı bir makale vardı.

 
R0MAN :

Ve işte prib işlemlerinin bakiyesi ve yüzdesi?

Google'da "Bir site için optimizasyon kriterinizi nasıl oluşturabilirsiniz:mql5.com ticaret robotu" başlıklı bir makale vardı.


buldum, teşekkürler

https://www.mql5.com/ru/articles/286

Создание собственных критериев оптимизации параметров эксперта
Создание собственных критериев оптимизации параметров эксперта
  • 2011.06.24
  • Dmitriy Skub
  • www.mql5.com
Терминал МetaTrader 5 дает новые возможности для оптимизации параметров создаваемых экспертов. Кроме уже имеющихся в тестере критериев оптимизации, разработчики получили инструмент для создания собственных критериев. Это открывает поистине безграничные возможности в тестировании и оптимизации экспертов. В статье рассматриваются практические способы построения таких критериев - как простых, так и достаточно сложных.