1赞

15评论

2收藏

MT5 EA中获得技术指标指定位置数据的方法

avatar 编程逆袭仔 | 6205 人阅读 | 15 人评论 | 2013-11-22

我们最常用的要求是取得某个技术指标在指定序号K线上对应的数值。

下面的例子里,我们沿用MQL4的序号排列概念(序号0代表最新的K线),来获得相应的技术指标数值。

自定义函数及EA完整源代码:

复制代码
  • double MaBuffer[];
  • int OnInit()
  • {
  • ArraySetAsSeries(MaBuffer,true);
  • return(0);
  • }
  • void OnTick()
  • {
  • printf(GetData(1));
  • }
  • double GetData(int Index)
  • {
  • int Handle=iMA(Symbol(),0,1,0,MODE_SMA,PRICE_CLOSE);
  • int Cnt=CopyBuffer(Handle,0,0,Index+1,MaBuffer);
  • if(Cnt!=-1)return(MaBuffer[Index]);
  • else {
  • printf("Error in copying");
  • return(0);
  • }
  • }

注意:

ArraySetAsSeries(MaBuffer,true);

这句话让数组按照我们熟识的MQL4中的排列方式进行数据存储。
""
还没有人打赏,支持一下

评论|共 15 个

叶毛放目

发表于 2014-10-29 11:59:59 | 显示全部楼层

看看怎么样

gngez

发表于 2014-10-31 11:51:39 | 显示全部楼层

感谢分享

chen1110

发表于 2014-10-31 23:41:28 | 显示全部楼层

xiexiefenxiang

小眷

发表于 2014-11-2 01:36:11 | 显示全部楼层

路过。。看下先。

hj888

发表于 2014-11-3 02:37:35 | 显示全部楼层

nice!!!!!!!!!!!!

star115

发表于 2020-6-6 22:24:38 | 显示全部楼层

:lol不错

168

发表于 2020-6-9 19:59:36 | 显示全部楼层

找到好贴不容易,我顶你了,谢了

voew8582

发表于 2020-7-21 14:32:39 | 显示全部楼层

谢谢楼主分享

孤狼(软件高手)

发表于 2020-8-31 21:22:44 | 显示全部楼层

帮你顶下哈!!

12下一页
您需要登录后才可以回帖 登录 | 注册 微信登录

EA之家评论守则