26评论

1收藏

MT4 MT5外汇EA编程教程大全之价格函数(二)

avatar EA狙击手 | 10854 人阅读 | 26 人评论 | 2012-11-13

任何可见货币对/时间周期的价格数据的一组函数。
iBars
iBarShift
iClose
iHigh
iHighest
iLow
iLowest
iOpen
iTime
iVolume


int iBars( string symbol, int timeframe)
在指定的图表内返回柱的数量。
对于当前图表柱总量的信息在预定义的变量中命名为Bars。
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。

示例:
Print("在货币对'EUROUSD'带有PERIOD_H1 柱数",iBars("EUROUSD",PERIOD_H1));




int iBarShift( string symbol, int timeframe, datetime time, void exact)
搜索柱开始的时间。函数返回指定开始时间的柱。如果柱的指定开始时间是省缺值, 函数将返回-1或 最近的柱 exact。

参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
time - 查找值 (柱的开始时间)。
exact - 未发现柱的返回模式。false - iBarShift 返回最近。 true - iBarShift 返回 -1。

示例:
datetime some_time=D'2004.03.21 12:00';
int shift=iBarShift("EUROUSD",PERIOD_M1,some_time);
Print("带有打开时间平移柱 ",TimeToStr(some_time)," 是 ",shift);





double iClose( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对的柱返回 关闭值。如果加载历史为空,函数返回0。
对于当前图表,关于收盘价格的信息在预定义数组中命名为 Close[]。
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的索引值。

示例:
Print("对于 USDCHF H1当前柱: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));



double iHigh( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对 的柱返回 高值。如果加载历史为空,函数返回0。
对于当前图表,关于高价格的信息在预定义数组中命名为High[].
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的索引值。

示例:
Print("对于USDCHF H1当前柱: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));



int iHighest( string symbol, int timeframe, int type, void count, void start)
根据类型返回最大值转移的一个具体数字。
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
type - 系列数组的识别符。它可以是系列数据识别符列举 的任意值。
count - 周期数字。
start - 移动显示与当前相关的柱,采取数据。

示例:
double val;
// 在范围内20个连续柱计算最大值
// 在当前图表上从第4个至第23个的索引
val=High[iHighest(NULL,0,MODE_HIGH,20,4)];

double iLow( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对 的柱返回 低值。如果加载历史为空,函数返回0。
对于当前图表,关于低价格的信息在预定义数组中命名为Low[].
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的索引值。

示例:
Print("对于USDCHF H1当前柱: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));




int iLowest( string symbol, int timeframe, int type, void count, void start)
根据类型返回最小值转移的一个具体数字。
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
type - 系列数组的识别符。它可以是系列数据识别符列举 的任意值。
count - 时间周期。
start - 移动显示与当前相关的柱,采取数据。

示例:
// 在范围内计算连续10个柱的最低值
// 在当前图表从第10个到第19个的索引
double val=Low[iLowest(NULL,0,MODE_LOW,10,10)];




double iOpen( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对 的柱返回 开价格值。如果加载历史为空,函数返回0。
对于当前图表,关于开价格的信息在预定义数组中命名为 Open[].
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的价格值指数。

示例:
Print("对于USDCHF H1当前柱: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));


datetime iTime( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对 的柱返回 时间值。如果加载历史为空,函数返回0。
对于当前图表,关于时间的信息在预定义数组中命名Time[].
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的价格值指数。

示例:
Print("对于USDCHF H1当前货币对: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));



double iVolume( string symbol, int timeframe, int shift)
对于带有时间周期和平移指定货币对 的柱返回 替克成交量值。如果加载历史为空,函数返回0。
对于当前图表,关于成交量的信息在预定义数组中命名Volume[].
参量:
symbol - 需应用到计算指标的货币对数据 NULL 意味当前货币对名称。。
timeframe - 时间周期。可以是时间周期列举的任意值。0 意味着当前图表的时间周期。
shift - 从指标缓冲器上获取的价格值指数。

示例:
Print("对于USDCHF H1的当前柱: ",iTime("USDCHF",PERIOD_H1,i),", ", iOpen("USDCHF",PERIOD_H1,i),", ",
iHigh("USDCHF",PERIOD_H1,i),", ", iLow("USDCHF",PERIOD_H1,i),", ",
iClose("USDCHF",PERIOD_H1,i),", ", iVolume("USDCHF",PERIOD_H1,i));

""
还没有人打赏,支持一下

评论|共 26 个

dell

发表于 2012-11-14 09:56:40 | 显示全部楼层

EA!EA都要被他弄疯了!  

dengshan

发表于 2012-11-14 10:07:12 | 显示全部楼层

ding   支持  

小豆芽2012

发表于 2012-11-14 10:07:12 | 显示全部楼层

我感觉雷雨趋势不错,挺好的ea!  

心魔

发表于 2012-11-14 10:07:12 | 显示全部楼层

好帖,有才  

l26709020

发表于 2012-11-14 10:07:12 | 显示全部楼层

楼上的话等于没说~~~  

金葫芦

发表于 2013-5-2 12:30:33 | 显示全部楼层

感谢

聋鸢

发表于 2014-11-5 07:17:08 | 显示全部楼层

EA真的能赚钱么?

fx110

发表于 2014-11-7 06:52:50 | 显示全部楼层

看看什么EA,,,

闲暇时光在这里

发表于 2014-11-19 15:40:30 | 显示全部楼层

想学EA,拜师,谁收了我吧

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

EA之家评论守则