外汇百科
MT4指标编程入门(六):市场数据取值
MT4指标编程非常看中市场的取值,因为指标编程问题,归根到底和市场是分不开的。
一、预定义数组(MT4已经定义好的,可以直接使用)
开盘价、最高价、最低价、收盘价、成交量等历史数据,每根K线蜡烛都各有一个,所以必须用数组来解决问题,MT4有几个预定义数组:
开盘价Open[]、最高价High[]、最低价Low[]、收盘价close[]、成交量Volume[]、所属时间Time[]
类型为双精度double型(即精确小数)
这里有一个位置的问题,右边第一根K线蜡烛(即最新的蜡烛)的编号为0,第二根蜡烛编号1,第三根蜡烛编号2,返佣网,也就是说从右向左倒着数过去。
Open[0]、High[0]、Low[0]、Close[0],表示最新的开盘价、最高价、最低价、收盘价
Open[1]、High[1]、Low[1]、close[1],表示第2根K线蜡烛的开盘价、最高价、最低价、收盘价
Open[2]、High[2]、Low[2]、close[2],表示第3根K线蜡烛的开盘价、最高价、最低价、收盘价
Open[3]、High[3]、Low[3]、close[3],表示第4根K线蜡烛的开盘价、最高价、最低价、收盘价
Open[i]、High[i]、Low[i]、close[i],表示第i+1根K线蜡烛的开盘价、最高价、最低价、收盘价
以此类推。。。。。。
注意:这些是数组,用的是方括号。
二、预定义变量
买入价、卖出价是实时价格,MT4用预定义变量Ask和Bid表示,数值类型为double双精度
还有一些预定义变量,如:
Bars表示图表中的蜡烛数,类型为int整数型
Digits表示当前货币对的小数位,类型为int整数型,无日元币对为4,现货黄金交易,有日元币对为2,黄金石油等一般也为2
Point表示当前货币对的点值,类型为双精度double型,无日元币对为0.0001,有日元币对为0.01。与Digits正好相反。
三、指标函数
1、价格、成交量、时间
它们都有三个参数:货币对名、K线周期、位置序号
开盘价:iOpen(symbol,timeframe,shift)双精度double型
收盘价:iClose(symbol,timeframe,shift)双精度double型
最高价:iHigh(symbol,timeframe,shift)双精度double型
最低价:iLow(symbol,timeframe,shift)双精度double型
成交量:iVolume(symbol,timeframe,shift)双精度double型
所属时间:iTime(symbol,timeframe,shift)日期时间datetime型
K线周期为:1分钟图(PERIOD_M1)、5分钟图(PERIOD_M5)、15分钟图(PERIOD_M15)、30分钟图(PERIOD_M30)、
1小时图(PERIOD_H1)、4小时图(PERIOD_H4)、日线图(PERIOD_D1)、周线图(PERIOD_W1)、周线图(PERIOD_W1)、月线图(PERIOD_W1)
例:
iOpen(USDJPY,PERIOD_H1,0)表示美元兑日元1小时图最新K线蜡烛的开盘价
iClose(EURUSD,PERIOD_H4,2)表示欧元兑美元4小时图第3根K线蜡烛的收盘价
iClose(GBPUSD,PERIOD_H1,i)表示英磅兑美元1小时图第i+1根K线蜡烛的收盘价
iHigh(NULL,0,0)既不指定商品,也不指定K线周期,用在谁就是谁,用在哪就是哪
2、移动平均值。双精度double型
iMA(symbol,timeframe,period,ma_shift,ma_method,applied_price,shift)
参数共7个,分别为:商品名称、K线周期、均线周期、均线偏移、平均模式、价格种类、位置
均线周期:10天平均线的均线周期为10,20天均线的均线周期为20
均线偏移:均线位置整体左右移动的位置偏移量
平均模式:简单移动平均(MODE_SMA)、指数移动平均(MODE_EMA)、平滑移动平均线(MODE_SMMA)、线性加权移动平均线(MODE_LWMA)
价格种类:收盘价(PRICE_CLOSE)、开盘价(PRICE_OPEN)、最高价(PRICE_HIGH)、最低价(PRICE_LOW)、中值(PRICE_MEDIAN)、5(PRICE_TYPICAL)、6(PRICE_WEIGHTED)
例1:iMA(EURUSD,PERIOD_H1,20,0,MODE_SMA,PRICE_CLOSE,0)
表示:欧元1小时图上,以收盘价计算的,20小时简单移动平均线,最新K线所对应位置的值
例2:iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,2)
表示:在当前商品、当前K线周期图表上,外汇返佣平台,以收盘价计算的,20(天)指数移动平均线第3根K线所对应位置的值
其他如MACD指标、威廉指标、RSI、SAR、布林线等指标取值都与移动平均线指标相类似
3、在数组中求元素的移动平均值。双精度double型
iMAOnArray(数组名,总数,平均周期,均线偏移,平均模式,位置)
这也与iMA函数差不多,不过数据源变为数组
从数组中不但可以求得移动平均值,还可以求得RSI等指标值
4、求自定义指标的值
我们经常自己编一些自定义指标,第一外汇返佣网,可用iCustom函数来取得自定义函数的值
iCustom(商品名,K线周期,自定义指标名称,自定义指标参数1,参数2,参数3,,,自定义指标线编号,位置)
如果自定义指标只有一根指标线,则自定义指标线的编号为0。
如果自定义指标有多根指标线,则第一条自定义指标线的编号为0,第二条为1,第三条为2。。。
例如:iCustom(NULL,0,mymacd,12,26,9,2,0)(12,26,9)为自定义指标mymacd的三个参数
表示:求当前图表中,自定义指标mymacd(12,26,9)的第3条指标线在最新位置的值
上一篇:分享一篇关于波浪理论的经典文章!
下一篇:荷兰盾 - 外汇邦
- FXTM爆仓率与利息:如何理解及管理风险03/04
- FXTM公司简介:全球领先的在线外汇交易平03/04
- 最新:Exness 开户流程03/04
- IC Market监管有哪些?IC Market监管查询03/04
- Exness监管查询-Exness外汇监管03/04
- fxpro监管-fxpro外汇监管查询03/04
- XM外汇监管03/04
- IC Market利息爆仓比例03/04
- IC Markets 点差对照表03/04
- IC Markets简介03/04
- 理论篇-外汇日内操作高手03/03
- 外汇开户流程一文详细介绍从零到一10/12
- 【外汇入门】外汇投资出现不良心态的原02/10
- 外汇:中国未来最大的投资理财市场02/10
- 外汇基础知识 外汇交易中常见的外汇专用02/03
- 【突破、回踩、确认】鉴别回撤和倒退02/01
- 外汇隔离账户与外汇分离账户的区别01/31
- 和讯期货分享 炒期货与玩牌局的本质区别01/24
- 搞定外汇市场的五大技巧04/27
- 外汇交易时如何保持正确的心态04/20
- 消息对炒外汇的重要性06/19
- 基本面交易策略:杠杆套息交易06/19
- 外汇EA编程教程――数据类型06/19
- 技术形态篇之跳空形态06/19
- 外汇之趋势线06/19
- 四种在外汇市场交易的方法06/19
- 货币主义汇率理论――汇率决定理论与经06/19
- 最受欢迎的5个技术分析指标06/19
- 交易的毒刺——对随机性报酬上瘾06/19
- 外汇交易基本面分析:什么是利率平价06/19