오류, 버그, 질문 - 페이지 950

 
fyords :

혹시 비슷한 일을 겪으신 분 계시면 알려주세요.

코드가 있습니다:

실시간으로 터미널에서 다음이 작동합니다. 테스터에서는 동일한 코드가 다른 코드를 제공합니다.

그리고 어떤 이벤트가 발생했는지에 관계없이 배열의 크기를 얻어야 합니까?

 
tol64 :

그리고 어떤 이벤트가 발생했는지에 관계없이 배열의 크기를 얻어야 합니까?

글쎄, 나는 먼저 지표를 작성한 다음 모든 것을 간단한 예제로 줄였습니다.
모든 이벤트에 대해 예인 것으로 나타났으며 제공된 로그는 모든 라인에서 반복됩니다.

코드를 다음과 같이 변경합니다.

 //+------------------------------------------------------------------+
double date[];
//+------------------------------------------------------------------+
void OnInit ()
{
   ArrayResize (date, 3 );
   Print ( __FUNCTION__ , " ArraySize(date)=" , ArraySize (date));
}
//+------------------------------------------------------------------+
void OnChartEvent ( const int id,
                   const long &lparam,
                   const double &dparam,
                   const string &sparam)
{
   Print ( __FUNCTION__ , " ArraySize(date)=" , ArraySize (date));
}
//+------------------------------------------------------------------+

더욱 재미있어졌습니다. 최종 결과:

FD       0        12 : 57 : 59         test (EURGBP.m,M5)       OnInit ArraySize (date)= 3
JO       0        12 : 57 : 59         test (EURGBP.m,M5)       OnChartEvent ArraySize (date)= 3
DG       0        12 : 57 : 59         test (EURGBP.m,M5)       OnChartEvent ArraySize (date)= 3

시험 장치:

JM       0        12 : 58 : 09         test (EURGBP.m,M15)     2013.01 . 01 00 : 00 : 00    OnInit ArraySize (date)= 3
FE       0        12 : 58 : 09         test (EURGBP.m,M15)     2013.01 . 01 00 : 00 : 00    OnChartEvent ArraySize (date)= 0
FR       0        12 : 58 : 09         test (EURGBP.m,M15)     2013.01 . 01 00 : 00 : 00    OnChartEvent ArraySize (date)= 0
 
fyords :

글쎄, 나는 먼저 지표를 작성한 다음 모든 것을 간단한 예제로 줄였습니다.
모든 이벤트에 대해 예인 것으로 나타났으며 제공된 로그는 모든 라인에서 반복됩니다.

...

번식을 할 수 없었습니다. 이 코드를 테스트하고 있습니다.

 //+------------------------------------------------------------------+
//|                                                     !indTEST.mq5 |
//|                        Copyright 2010, MetaQuotes Software Corp. |
//|                                              https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2010, MetaQuotes Software Corp."
#property link       "https://www.mql5.com"
#property version   "1.00"
//---
#property indicator_chart_window
#property indicator_buffers 1 
#property indicator_plots   1
#property indicator_type1   DRAW_NONE
//---
double date[];
//---
//+------------------------------------------------------------------+
//| ИНИЦИАЛИЗАЦИЯ                                                    |
//+------------------------------------------------------------------+
void OnInit ()
  {
   ArrayResize (date, 3 );
  }
//+------------------------------------------------------------------+
//| ДЕИНИЦИАЛИЗАЦИЯ                                                  |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const int begin,
                 const double &price[])
  {
   return (rates_total);
  }
//+------------------------------------------------------------------+
//| ChartEvent function                                              |
//+------------------------------------------------------------------+
void OnChartEvent ( const int id,
                   const long &lparam,
                   const double &dparam,
                   const string &sparam)
  {
   Print ( "ArraySize(date)=" , ArraySize (date));
  }
//+------------------------------------------------------------------+

//---

시각화 모드 에서 표시기를 테스트했습니다 .

 
tol64 :

...

시각화 모드 에서 표시기를 테스트했습니다 .

마찬가지로 이해합니다.
 
fyords :
마찬가지로 이해합니다.
내가 아는 한, 차트와의 상호 작용과 관련된 이벤트는 현재 테스터에서 무시됩니다. 사용자 정의 이벤트 를 처리할 수 있습니다.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Типы событий графика
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы графиков / Типы событий графика
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы графиков / Типы событий графика - Документация по MQL5
 
tol64 :
내가 아는 한, 차트와의 상호 작용과 관련된 이벤트는 현재 테스터에서 무시됩니다. 사용자 정의 이벤트 를 처리할 수 있습니다.

네, 어떤 종류인지는 별로 신경 쓰지 않습니다. 가장 중요한 것은 그들이 온다는 것입니다. :)

귀하의 코드가 결과 0을 제공한다는 점도 흥미롭습니다. 오류가 지속됩니다.
추신. Win7 x64 + UAC 및 휴대용이 아닙니다.

 
fyords :

네, 어떤 종류인지는 별로 신경 쓰지 않습니다. 가장 중요한 것은 그들이 온다는 것입니다. :)

귀하의 코드가 결과 0을 제공한다는 점도 흥미롭습니다. 오류가 지속됩니다.
추신. Win7 x64 + UAC 및 휴대용이 아닙니다.

그리고 나에게 이벤트는 그러한 코드에서 전혀 오지 않습니다. 그러면 테스터에서 메시지가 인쇄되는 이벤트는 무엇입니까? 흥미로워져서 물어봤습니다. )) 플레이하려면 코드가 필요합니다.

 
tol64 :

그리고 나에게 이벤트는 그러한 코드에서 전혀 오지 않습니다. 그러면 테스터에서 메시지가 인쇄되는 이벤트는 무엇입니까? 흥미로워져서 물어봤습니다. )) 플레이하려면 코드가 필요합니다.

나도 아무것도 이해하지 못합니다. 더 이상 작동하지 않습니다.)).
테스터에서는 어떤 경우에도 CHARTEVENT_CHART_CHANGE 이벤트가 발생해야 하기 때문에 이상합니다. 그래서?
 

fyords :
... 

테스터에서는 어떤 경우에도 CHARTEVENT_CHART_CHANGE 이벤트가 발생해야 하기 때문에 이상합니다. 그래서?
실시간으로 이 이벤트는 차트가 스크롤되고 창/하위 창의 크기가 조정될 때 생성됩니다. 이 이벤트는 아직 테스터에서 작동하지 않습니다(또는 아예 하지 않을 수도 있음). 모든 이벤트 중 지금까지 다른 프로그램의 사용자 이벤트 만 추적할 수 있습니다.
 

전략 테스터에서 MT5와 함께 제공되는 표준 ExpertMACD Expert Advisor를 테스트했는데 오류가 발생합니다.

2013.03.30 19:18:09 46ms 동안 "OnInit 실패" 오류와 함께 코어 2 유전자 통과(0, 15) 테스트

2013.03.30 19:18:08 32ms 동안 "OnInit 실패" 오류와 함께 코어 1 유전자 통과(0, 13) 테스트

2013.03.30 19:18:07 코어 2 유전자 패스(0, 5)가 0ms 동안 "OnInit 실패" 오류로 테스트됨

선택 방법에 의해 MACD의 고속 및 저속 기간을 최적화할 때 "SignalMACD" 모듈에 오류가 있음을 발견했습니다(전략 테스터 매개변수의 확인란을 선택할 때).

누구든지이 문제가 발생했으며이 문제를 해결하는 방법은 무엇입니까? (체크 표시가 하나만 있을 때는 그래도 어떻게든 작동하지만 두 개를 넣으면 바로 오류)