诚信为本
量力而为
当前位置:ea编程网 EA知识 正文

CCI指标编程数据的获取

CCI 是 Commodity Channel lndex 的缩写,中文称为顺势指标CCI,是由美国股市技术分析家唐纳德·蓝伯特(Donald Lambert)于20世纪80年代研发的,是一种用来研判市场价格偏离度的技术分析工具。CCI指标值波动于正穷大到负无穷大之间,因此不会出现指标的钝化,也有利于投资者更好的研判行情,特别是那些短期内暴涨暴跌的非常态行情。

CCI指标是MT4自带的技术指标之一,在mt4上方菜单栏依次点击-插入-技术指标-震荡指标-Commodity Channel lndex,并在出来的指标属性框中设置好相关参数后,点“确定”即可将CCI插入到当前图表中。如下图所示:

CCI指标

CCI 指标的界面是由一条CCI曲线和正负100水平线组成,水平线的值根据需要设置就可以,不需要另行获取。CCI 曲线的数值用iCCI()函数获取,iCCI()函数结构如下:

double  iCCI( 
   string       symbol,           // 交易品种名称
   int          timeframe,        // 图表时间周期 
   int          period,           // 指标计算的平均周期值 
   int          applied_price,    // 价格应用
   int          shift             // 指标索引/序号
   );

iCCI()函数的各参数说明:

  • symbol,交易品种名称,当前窗口货币对为 Symbol(),要自行定义参数,可以参考 input string symname = “XAUUSD “; 之类。
  • timeframe,图表周期,指一分钟M1到月线MN1共9个图表周期。要自行定义参数,可以参考用 int 或者 ENUM_TIMEFRAMES,如:input ENUM_TIMEFRAMES Period_x = PERIOD_CURRENT; 0 和 PERIOD_CURRENT 都代表当前图表周期。
  • period,指标计算的平均周期值参数,默认14,要自行定义参数,用 int 就可以,如 input int cci_period = 14;。
  • applied_price,价格类型,指收盘价、最高价、最低价等。默认用的是 PRICE_TYPICAL,如果需要自行定义,可以用 int 或 ENUM_APPLIED_PRICE 来定义参数,如:input ENUM_APPLIED_PRICE APP_PRICE = PRICE_TYPICAL;之类。
  • shift,获取对应指标线的索引/序号,0指当前最新K线所对应的值,然后从右往左分别是1、2、3、4…..,这种规则排序。就拿MACD柱子来说,0就是获取最右侧的第一个柱子的值,1就是获取第二个柱子的值,类推。

获取当前图表中从右侧开始第二个K线,也就是1号K线对应的CCI曲线值,参考代码:

double CCI_1 = iCCI(Symbol(),0,14,PRICE_TYPICAL,1);

跨图表获取黄金XAUUSD一小时H1图表中最新0号K线对应的CCI曲线值,参考代码:

double XAUUSDCCI_0 = iCCI("XAUUSD",PERIOD_H1,14,PRICE_TYPICAL,0);

如果要获取多个单位的CCI指标的值,可以定义数组并结合for()循环来编写。总的说来,CCI指标的编程不是很复杂的,实际编程开发中根据需要演变iCCI()函数的参数即可。

未经允许不得转载:ea编程网 » CCI指标编程数据的获取