诚信为本
量力而为
当前位置:峰汇在线 ea编程知识 正文

ea编程中可用iTime()函数获取K线的开盘时间

在编写智能交易ea的时候,我们经常需要用到K线的开盘时间,比如说,要在新的K线出现时平仓指定类型的持仓单,那就可以通过比较订单的开仓时间和K线的开盘时间来执行,如果订单的开仓时间小于当前K线的开盘时间,那就执行平仓。

mql4语言对于获取K的开盘时间,是有现成的iTime()函数的。在编写ea时,可以通过给iTime()函数赋值不同的参数来获取想要的时间值。

首先,要明白K线开盘时间的数据类型是datetime ,这点不能搞错,然后在看一下iTime()函数的构成。

iTime(string sym,int timeframe,int cnt);

iTime()函数的三个参数:

  • sym,交易品种名称,string类型,可以用NULL或Symbol()表示当前图表的交易品种。在用具体名称时不要忘记加双引号,如”EURUSD”。
  • timeframe,时间周期,int 类型,在mt4上面是一分钟至月线中间的一个。0表示当前图表周期。
  • cnt,K线序号,图表自右往左,最新的当前K线为0,接着1、2、3、4……。

弄明白了iTime()函数的构成及其参数的意义,现在我们就可以调用它获取想要的数值,比如获取当前图表最新K线的开盘时间代码就是:

datetime Time_0 = iTime(Symbol(),0,0);  

再如获取美元兑日元5分钟图表上一根K线的开盘时间代码为:

datetime uTime_1 = iTime("USDJPY",PERIOD_M5,1); 

在mt4图表上,我们鼠标停留在蜡烛上,就会浮出对应的K线参数注释层,其中的第一个参数Time就是指对应蜡烛的开盘时间。

版权所有转载请注明标题及链接:峰汇在线 » ea编程中可用iTime()函数获取K线的开盘时间