做出交易决策 大概率需要获取不同时间框架下的当前价格和先前价格的信息。
进入 GetSingleTick 函数后,您可以使用来函数来获取交易标的的价格变化:
Bid() - 买价
Ask() - 卖价
Symbol() - 标的名称
Digits() - 价格的小数位 (比如USDJPY是2位, EURUSD是4位)
Point() - 最小的价格变动点 (比如USDJPY是0.01, EURUSD是0.0001)
Forex Tester 通过以下功能对K线进行的访问,(通过index索引):
Open(index) - 开盘价
High(index) - 最高价
Low(index) - 最低价
Close(index) - 收盘价
Volume(index) - 成交易
Time(index) - 时间
Bars() - 可用K线数量
重要提示:
所有这些函数只有在调用 SetCurrencyAndTimeframe 才有效,这个函数定义了交易标的和时间框架
SetCurrencyAndTimeframe('USDJPY', PERIOD_M15);
if (Close(0) > Close(1)) and ((Close(1) > Close(2)) then
... // 'USDJPY' is growing on period M15
SetCurrencyAndTimeframe('EURAUD', PERIOD_H1);
if (HourOf(Time(0)) = 10) then
... // open some order at 10 a.m.
如何罗列K线呢?
K线从右到左编号,从 0 到 -1。所以最后一根K线的索引为 0,当新柱线创建时,它接收索引值0,前一根柱线自动获得索引 1,依此类推,如图所示:
还有另外一组函数不需要先前调用SetCurrencyAndTimeframe.
它是通用标的名称,时间框架和索引来获取信息,如下所示:
iOpen(Symbol, Timeframe, index) - 开盘
iHigh(Symbol, Timeframe, index) - 最高价
iLow(Symbol, Timeframe, index) - 最低价
iClose(Symbol, Timeframe, index) - 收盘价
iVolume(Symbol, Timeframe, index) - 成交易
iTime(Symbol, Timeframe, index) - 时间
iBars(Symbol, Timeframe) - 获取所选交易品种和时间框架的可用K线数
这些函数和上面SetCurrencyAndTimeframe函数一样,只是它们不需要调用SetCurrencyAndTimeframe,并且可以在一些混合标的和时间框架中使用,比如以下示例代码:
if (iClose('USDJPY', PERIOD_M15, 0) > iClose('USDJPY', PERIOD_M15, 1)) and (iClose('EURUSD', PERIOD_H4, 0) > iClose('EURUSD', PERIOD_H4, 1)) then
... // 对比两个交易标的不同的时间框架 ...