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

 
PolarSeaman :

이것은 바 의 영업 시간 을 빼앗아 현재 시간?

 //+------------------------------------------------------------------+
//| Количество секунд, остающихся до закрытия свечи                  |
//+------------------------------------------------------------------+
long SecondsToCandleClose( const string symbol_name, const ENUM_TIMEFRAMES timeframe)
  {
   datetime array[];
   return ( CopyTime (symbol_name,timeframe, 0 , 1 ,array)== 1 ? PeriodSeconds (timeframe)+array[ 0 ]- TimeCurrent () : 0 );
  }
//+------------------------------------------------------------------+
 
PolarSeaman :

OnTimer()에서 OnCalculate()를 삽입할 수 있습니까?

현지 시간과 현재 시간을 동기화하는 방법을 모르겠습니다. 도움말에서 찾을 수 없습니다.

이들은 두 개의 서로 다른 이벤트 핸들러입니다. OnCalculate() 는 새로운 틱 OnTimer()에서 시작됩니다. 타이머가 시작될 때 설정된 시간이 만료될 때입니다.

 
PolarSeaman :

어떻게하지? 이 순간에만 확인하고 하루 동안 자야합니다)

그러면 타이머 없이는 할 수 없습니다.

 
Artyom Trishkin :

고맙습니다. 이제 진드기가 없는 상태에서 누구에게나 작동하도록 해야 합니다.

         if (SecondsToCandleClose( Symbol (), 0 )<= 60 )
              {
               if (open[i]>close[i] && high[i]-low[i]>= 100 * Point )
                 {
                  BufferUP[i]=low[i]-distance* Point ;
                 }
              }
 
PolarSeaman :

OnTimer()에서 OnCalculate()를 삽입할 수 있습니까?

현지 시간과 현재 시간을 동기화하는 방법을 모르겠습니다. 도움말에서 찾을 수 없습니다.

틱 도착 시 TimeCurrent()-TimeLocal() 차이를 계산합니다.
- 이것은 브로커에 대한 우리의 오프셋입니다. 이 오프셋이 미래에 변경되면 모든 것을 다시 계산해야 합니다.
- D1 막대가 시작되거나 나타날 때 필요한 모든 시간을 현지 시간으로 다시 계산합니다.
- 우리는 타이머에서 "카운트"한 것을 기다리고 동시에 비동기화, 브로커와의 통신 손실, 로컬 화살표 번역을 확인합니다.

 
Ihor Herasko :

이들은 두 개의 서로 다른 이벤트 핸들러입니다. OnCalculate()는 새로운 틱 OnTimer()에서 시작됩니다. - 타이머가 시작될 때 설정된 시간이 만료될 때입니다.

감사합니다. 이해합니다. 표시기는 OnTimer()에서 작동할 수 있습니까?

 
PolarSeaman :

고맙습니다. 이제 진드기가 없는 상태에서 누구에게나 작동하도록 해야 합니다.

코드를 OnTimer()에 삽입해야 합니다. 그러나 다시, 그것은 역사에 사용될 수 없습니다. 따라서 i 대신 즉시 0을 넣습니다.

 
PolarSeaman :

감사합니다. 이해합니다. 표시기는 OnTimer()에서 작동할 수 있습니까?

OnTimer() 이벤트는 표시기에서 작동합니다. 모든 코드를 OnTimer()로 전송할 필요는 없습니다. 촛불이 닫힐 때까지 남은 시간을 추적하는 부분만 있어야 합니다. 다른 모든 것은 OnCalculate() 에서 작동해야 합니다.

 
Taras Slobodyanik :

틱이 오는 순간...

음... 진드기가 오지 않았다면? 틱 없이 "시작"해야 합니다.

 
Ihor Herasko :

그러나 다시, 그것은 역사에 사용될 수 없습니다.

죄송합니다. 왜 안되는지 이해가 되지 않습니다.