MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 571

 
PolarSeaman :

Bu, barın açılış saatini almak için şimdiki zaman mı?

 //+------------------------------------------------------------------+
//| Количество секунд, остающихся до закрытия свечи                  |
//+------------------------------------------------------------------+
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() içinde OnCalculate() eklemek mümkün mü?

Yerel ve şimdiki zamanı nasıl senkronize edeceğimi bilmiyorum, yardımda bulamıyorum.

Bunlar iki farklı olay işleyicisidir. OnCalculate() , zamanlayıcı başlatıldığında ayarlanan sürenin sona ermesi üzerine OnTimer() adlı yeni bir onay işaretiyle başlatılır.

 
PolarSeaman :

nasıl yapılmaz? sadece şu anda kontrol etmeniz ve bir gün uyumanız gerekiyor)

O zaman zamanlayıcı olmadan yapamazsınız.

 
Artyom Trishkin :

Teşekkür ederim. şimdi, bir kene olmadığında herkes için çalışmasını sağlamanız gerekiyor.

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

OnTimer() içinde OnCalculate() eklemek mümkün mü?

Yerel ve şimdiki zamanı nasıl senkronize edeceğimi bilmiyorum, yardımda bulamıyorum.

kene varış anında, TimeCurrent()-TimeLocal() farkını hesaplarız
- bu, komisyoncuya göre bizim ofsetimizdir, eğer bu ofset gelecekte değişirse, o zaman her şeyi yeniden hesaplamanız gerekir
- D1 çubuğunun başlangıcında veya görünümünde, gerekli tüm zamanları yerel saatte yeniden hesaplarız
- zamanlayıcıda "saydığımız" şeyi bekliyoruz, aynı anda senkronizasyonu, komisyoncu ile iletişim kaybını, yerel okların çevirisini kontrol ediyoruz.

 
Ihor Herasko :

Bunlar iki farklı olay işleyicisidir. OnCalculate(), zamanlayıcı başlatıldığında ayarlanan sürenin sona ermesi üzerine OnTimer() adlı yeni bir onay işaretiyle başlatılır.

Teşekkür ederim, anladım. ve gösterge OnTimer() içinde çalışabilir mi?

 
PolarSeaman :

Teşekkür ederim. şimdi, bir kene olmadığında herkes için çalışmasını sağlamanız gerekiyor.

Kodun OnTimer() içine eklenmesi gerekiyor. Ama yine, tarihte kullanılamaz. Bu nedenle, yerine hemen 0 koyun.

 
PolarSeaman :

Teşekkür ederim, anladım. ve gösterge OnTimer() içinde çalışabilir mi?

OnTimer() olayı göstergede çalışır. Sadece tüm kodu OnTimer()'a aktarmanız gerekmez. Sadece mumun kapanmasına kadar kalan süreyi takip etmekten sorumlu olan kısım olmalıdır. Diğer her şey OnCalculate() içinde çalışmalıdır.

 
Taras Slobodyanik :

kene geldiği anda...

Peki ya kene gelmezse? kene olmadan "başlamanız" gerekir

 
Ihor Herasko :

Ama yine, tarihte kullanılamaz.

Üzgünüm, neden olmadığını anlamıyorum.