MQL4 및 MQL5에 대한 초보자 질문, 알고리즘 및 코드에 대한 도움말 및 토론 - 페이지 849

 
Sergey Voytsekhovsky :

로그가 그림에 표시되지 않으면 여기에 몇 가지 극단적인 항목이 있습니다.

죄송합니다. Print()에 아래쪽 화살표에 대한 오류가 있었습니다. 위쪽 화살표 의 시간이 대체되어 수정되었지만 지금은 문제가 되지 않습니다.

 
Sergey Voytsekhovsky :

로그가 그림에 표시되지 않으면 여기에 몇 가지 극단적인 항목이 있습니다.

시간 차트에서 가장 오른쪽 캔들의 시간이 10시인가요???

 
Alexey Viktorov :

시간 차트에서 가장 오른쪽 캔들의 시간이 10시인가요???

그래서 연설의 내용은 고문이 마지막 촛불을 보지 못하지만 오류의 바닥에 도달 할 수 없으므로 도움을 요청하는 외침을 보냈습니다.

https://www.mql5.com/en/forum/160683/page848#comment_11761231

Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам
  • 2019.05.20
  • www.mql5.com
В этой ветке я хочу начать свою помощь тем, кто действительно хочет разобраться и научиться программированию на новом MQL4 и желает легко перейти н...
 

다음은 아래쪽 화살표에 대해 수정된 Print()가 있는 그림입니다.


 
void OnTick()
  {
   if (CopyBuffer(CrossAD, 1, 0, period_find, Buf_Arrow_Buy) != period_find)
      {  
         Print("НЕ удалось правильно скопировать данные из 1-го буфера индикатора iCrossAD, error code %d",GetLastError());
         return;
      }
         for(int n=0; n<(int)period_find; n++)
            {
               if(Buf_Arrow_Buy[n]!=EMPTY_VALUE)
               {
                  Last_Arrow_Buy_volume = iOpen(_Symbol,_Period,n);
                  Last_Arrow_Buy_time   = iTime(_Symbol,0,n);
                  Last_Arrow_Buy_index  = n;
                  Print("Last_Arrow_Buy_volume = ",Last_Arrow_Buy_volume,", Last_Arrow_Buy_index = ",Last_Arrow_Buy_index,", Last_Arrow_Buy_time = ",Last_Arrow_Buy_time);
                  break;
               }   
            }
         
   if (CopyBuffer(CrossAD, 2, 0, period_find, Buf_Arrow_Sell) != period_find)
      {  
         Print("НЕ удалось правильно скопировать данные из 2-го буфера индикатора iCrossAD, error code %d",GetLastError());
         return;
      }
         for(int n=0; n<(int)period_find; n++)
            {
               if(Buf_Arrow_Sell[n]!=EMPTY_VALUE)
               {
                  Last_Arrow_Sell_volume = iOpen(_Symbol,_Period,n);
                  Last_Arrow_Sell_time   = iTime(_Symbol,0,n);
                  Last_Arrow_Sell_index  = n;
                  Print("Last_Arrow_Sell_volume = ",Last_Arrow_Sell_volume,", Last_Arrow_Sell_index = ",Last_Arrow_Sell_index,", Last_Arrow_Sell_time = ",Last_Arrow_Sell_time);
                  break;
               }
            }
      
Comment("-------------------------", 
         "\n Last_Arrow_Buy_volume     = ",Last_Arrow_Buy_volume,
         "\n Last_Arrow_Buy_index        = ",Last_Arrow_Buy_index,
         "\n Last_Arrow_Buy_time         = ",Last_Arrow_Buy_time,
         "\n ---------------------- ",
         "\n Last_Arrow_Sell_volume     = ",Last_Arrow_Sell_volume,
         "\n Last_Arrow_Sell_index        = ",Last_Arrow_Sell_index,
         "\n Last_Arrow_Sell_time         = ",Last_Arrow_Sell_time
         ); 
  }
파일:
 
Sergey Voytsekhovsky :

두 어레이 모두 ArraySetAsSeries() 를 수행했습니까?

Документация по MQL5: Операции с массивами / ArraySetAsSeries
Документация по MQL5: Операции с массивами / ArraySetAsSeries
  • www.mql5.com
//| Custom indicator initialization function                         | //| Custom indicator iteration function                              |
 
Artyom Trishkin :

두 어레이 모두 ArraySetAsSeries()를 수행했습니까?

네 둘다.

 int OnInit ()
  {
   ArraySetAsSeries (Buf_Arrow_Buy, true );
   ArraySetAsSeries (Buf_Arrow_Sell, true );
//---
   CrossAD = iCustom (asymbol.Name(), _Period , "iCrossAD" );
   if (CrossAD == INVALID_HANDLE )
   {
       Print ( "Не удалось создать описатель индикатора iCrossAD!" );
       return ( INIT_FAILED );
   }
       else Print ( "Хендл iCrossAD = " ,CrossAD);
//---
   return ( INIT_SUCCEEDED );
  }

차트에서 병렬로 활성화된 iCustom 표시기에서 메인 차트의 화살표가 표시되지 않는 것을 확인했습니다. 이게 이유가 될까요,,,???

 
Sergey Voytsekhovsky :

네 둘다.

차트에서 병렬로 활성화된 iCustom 표시기에서 메인 차트의 화살표가 표시되지 않는 것을 확인했습니다. 이게 이유가 될까요,,,???

루프에서 n==0이 막대 시간 n을 인쇄하면 루프가 시작되는 위치를 즉시 이해할 수 있습니다.

 
Sergey Voytsekhovsky :

네 둘다.

차트에서 병렬로 활성화된 iCustom 표시기에서 메인 차트의 화살표가 표시되지 않는 것을 확인했습니다. 이게 이유가 될까요,,,???

표시기를 철거하고 다시 설치했는데 화살표가 나타 났지만 고문은 여전히 마지막 화살표를 보지 못했습니다.

 
Sergey Voytsekhovsky :

표시기를 철거하고 다시 설치했는데 화살표가 나타 났지만 고문은 여전히 마지막 화살표를 보지 못했습니다.

고문이 편집되었습니다-주 차트의 차트에서 병렬로 실행되는 표시기의 화살표가 사라졌습니다. 어떤 종류의 barabashka가 상처를 입거나 무엇입니까 ???