新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 405

 
我如何获得当前时间框架的下一个条形图的开盘时间?试图做
Time[1]+2*PERIOD_CURRENT,但它给人的感觉是废话。
据我所知,"时间 "是指从1970年起以分钟计算的时间?
 
RomanRott:
请告知如何获得当前时间段的下一栏的开盘时间?试图做
Time[1]+2*PERIOD_CURRENT,但它给人的感觉是废话。
据我所知,Time给出的时间是1970年以来的分钟数?

在几秒钟的时间里,用这些知识纠正你的公式。

 
Aleksey Vyazmikin:

在几秒钟的时间里,利用这些知识,纠正你的公式。

妈的,我是说用PERIOD_...仅仅在一条线上是做不到的
 
RomanRott:
请告知如何获得当前时间段的下一栏的开盘时间?试图做
Time[1]+2*PERIOD_CURRENT,但它给人的感觉是废话。
据我所知,Time给出的时间是1970年以来的分钟数?

尝试Alert(Time[0]+_Period*60);PERIOD_CURRENT 是0,零,空白,所用图表的时间框架的符号。

 
RomanRott:
我如何获得当前时间框架的下一个条形图的开盘时间?我想做的是
Time[1]+2*PERIOD_CURRENT,但它给人的感觉是废话。
据我所知,"时间 "是指从1970年起以分钟计算的时间?
Time[0]+PeriodSeconds()。
 
RomanRott:
妈的,我是说用PERIOD_...一条线是做不到的

  datetime time0 = Time[0]; 
   datetime time1 = Time[0]+PeriodSeconds(0)*1;   //1 = нужное кол. баров в будущее
   
  Comment("Время открытия тек. бара = ",time0,
  "\n","Время открытия след. бара(в будущее) = ",time1 );

就这样了


oops)))超前。

 
Artyom Trishkin:
Time[0]+PeriodSeconds()。
是的,谢谢你!
 
RomanRott:
是的,谢谢你!

不客气。

多平台代码。

void OnTick()
  {
   ENUM_TIMEFRAMES timeframe=PERIOD_CURRENT;    // Таймфрейм графика (текущий, можно задать нужный)
   string   symbol=Symbol();                    // Символ графика
   datetime time_open_curr=0;                   // Время открытия текущего бара
   datetime time_open_next=0;                   // Время открытия следующего бара
   int      number_next_bar=1;                  // На сколько баров в будущее рассчитывать время
   //---
   time_open_curr=TimeOpen(symbol,timeframe,0); // Здесь 0 - текущий бар заданного графика
   //--- Если получили время текущего бара, рассчитаем время следующего
   if(time_open_curr>0)
      time_open_next=time_open_curr+PeriodSeconds(timeframe)*number_next_bar;
  }
//+------------------------------------------------------------------+
//| Возвращает время открытия бара shift                             |
//| периода графика timeframe                                        |
//| на символе symbol_name                                           |
//+------------------------------------------------------------------+
datetime TimeOpen(string symbol_name,ENUM_TIMEFRAMES timeframe,int shift)
  {
   datetime array[]={0};
   if(CopyTime(symbol_name,timeframe,shift,1,array)==1) return array[0];
   return 0;
  }
//+------------------------------------------------------------------+
 

如何编写一个参数数量可变的函数?

 
RomanRott:

如何编写一个参数数量可变的函数?

比如说?