抛物线指标SAR (Stop and Reverse) 是由J. Welles Wilder在1978年发明的一种趋势跟踪指标,被广泛用于判断市场价格趋势的翻转点。SAR指标的主要功能是帮助确定市场的短期趋势。
在MT4平台上,SAR指标是自带的技术指标之一。安装步骤如下:在MT4上方菜单栏,依次点击“插入”-“技术指标”-“趋势指标”-“Parabolic SAR”,然后在弹出的指标属性框中设置好相关参数,点击“确定”,SAR指标即可被添加到当前图表中。
在MT4平台上获取SAR指标数据,可以使用iSAR()函数。
iSAR()函数的结构如下:
double iSAR(
string symbol, // 交易品种名称
int timeframe, // 图表时间周期
double step, // 步进因子
double maximum, // 最大步进值
int shift // 指标索引/序号
);
其中参数说明:
- symbol,交易品种名称,当前窗口货币对为 Symbol(),要自行定义参数,可以参考 input string symname = “USDJPY”;之类。
- timeframe,图表周期,指一分钟 M1 到月线 MN1 共 9 个图表周期。要自行定义参数,可以参考用 int 或者 ENUM_TIMEFRAMES,如:input ENUM_TIMEFRAMES Period_x = PERIOD_M30;PERIOD_M30 代表三十分钟图表周期。
- step,步进因子,默认值是 0.02,用 double 类型定义。
- maximum,最大步进值,默认值是 0.2,用 double 类型定义。
- shift,获取对应指标线的索引/序号,0指当前最新 K 线所对应的值,然后从右往左分别是 1、2、3、4…,这种规则排序。
获取当前图表中从右侧开始第二个 K 线,也就是 1 号 K 线对应的 SAR 值,参考代码:
double SAR_1 = iSAR(Symbol(), 0, 0.02, 0.2, 1);
跨图表获取美元对日元 USDJPY 三十分钟 M30 图表中最新 0 号 K 线对应的 SAR 值,参考代码
double USDJPYSAR_0 = iSAR("USDJPY", PERIOD_M30, 0.02, 0.2, 0);//SAR
如果你想获取多个SAR指标值,也可以定义数组,然后使用for()循环获取,具体方法和ADX指标类似。
总的来说,SAR指标的编程不是很复杂,只需要根据实际需求调整iSAR()函数的参数即可。在实际的外汇EA编程开发中,SAR指标可以帮助我们精准把握市场趋势的变化,从而做出准确的交易决策。