初学者的问题 MQL5 MT5 MetaTrader 5 - 页 1309

 
非常感谢每个人的回答!!我会尝试你的方案。
 
Alexey Viktorov:

如果你做这个枚举

你可以试着这样写

你一如既往地提供了解决我的问题的最佳方法!你是如何做到的?

 
Alexey Viktorov:

为什么要转换为int?因为在mql5中,从H1开始,枚举值就 不等于分钟数了。而在我看来,恰恰相反会带来很多混乱。

你的方法似乎也很有效!谢谢你

 
Alexey Viktorov:

那么?他们在ENUM_TIMEFRAMES枚举中有什么不同吗?还是担心内存 不够用?我不知道该如何解决这个问题...。


ps; 啊,我打字好慢啊...))))当我在输入一行时,Kira27输入了这么多.........,还有一些我怀疑这将在mql4中使用。

在MQL5中)))

 
这里有一个脚本可以尝试,它是有效的))))。
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   enum frame1 // перечисление именованных констант
     {
      m1  = (int)PERIOD_M1,
      m5  = (int)PERIOD_M5,
      m15 = (int)PERIOD_M15,
      m30 = (int)PERIOD_M30,
      h1  = (int)PERIOD_H1,
      h4  = (int)PERIOD_H4,
      d1  = (int)PERIOD_D1,
      W1  = (int)PERIOD_W1,
      MN1 = (int)PERIOD_MN1
     };
   double T = iHigh(NULL,(ENUM_TIMEFRAMES) d1,0);

   Alert("Frame= ", (ENUM_TIMEFRAMES)  d1," iHigh= ",T);

  }

结果如下 虽然以分钟为单位的一天的int值是1440。 但它是有效的,hih是正确的。

 
Alexey Viktorov:

那么?他们在ENUM_TIMEFRAMES枚举中有什么不同吗?还是担心内存 不够用?我不知道该如何解决这个问题...。


ps; 啊,我打字好慢啊...))))当我在输入单行时,Kira27输入了wow.........,还有一些我怀疑这将在mql4中使用。

你的方法给出了同样的结果))))。

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
   enum frame1 // перечисление именованных констант
     {
      m1  = PERIOD_M1,
      m5  = PERIOD_M5,
      m15 = PERIOD_M15,
      m30 = PERIOD_M30,
      h1  = PERIOD_H1,
      h4  = PERIOD_H4,
      d1  = PERIOD_D1,
      W1  = PERIOD_W1,
      MN1 = PERIOD_MN1
     };
 
   double T = iHigh(NULL,(ENUM_TIMEFRAMES) d1,0);
   
   Alert("Frame= ", (ENUM_TIMEFRAMES)  d1," iHigh= ",T);
  }

 
Kira27:

你的方法给出了同样的结果))))。

我没有怀疑 :-)))

 
嗨,你们好!

请帮助我用MQL5替换MQL4中编写的函数。

double iHig(datetime ds, datetime de)
  {
   //Alert(iBarShift(Symbol(),PERIOD_CURRENT,ds),"  ",ds);
   return
      High[
         iHighest(Symbol(),PERIOD_CURRENT,MODE_HIGH,
                  iBarShift(Symbol(),PERIOD_CURRENT,ds)-iBarShift(Symbol(),PERIOD_CURRENT,de)+1,
                  iBarShift(Symbol(),PERIOD_CURRENT,de)
                 )
          ];
  }

问题是,在MQL5中,没有预定义 的变量,我不知道如何或用什么来替换这个变量。

 
Sprut 185:
大家好!

请帮助我用MQL5替换MQL4中编写的函数。

问题是,MQL5没有预定义的变量,我不知道如何或用什么来替换这个变量。

在MQL5中有一个时间序列

iHigh。

iLow。

等。

帮助部分:访问时间序列和指标数据/
 
Kira27:

在MQL5中有时间序列

iHigh。

iLow。

等。

帮助部分:获取时间序列和指标数据/。
谢谢你的提示,在第一时间没有找到........。结果发现这个变量只是用了不同的名字。