微信扫一扫 分享朋友圈

已有 54 人浏览分享

开启左侧

MT4外汇MT4指标编程入门(六):市场数据取值

[复制链接]
54 0
MT4外汇MT4指标编程入门(六):市场数据取值
MT4外汇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正好相反。

  三、外汇MT4指标函数

  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外汇MT4指标、威廉外汇MT4指标、RSI、SAR、布林线等外汇MT4指标取值都与移动平均线外汇MT4指标相类似

  3、在数组中求元素的移动平均值。双精度double型

  iMAOnArray(数组名,总数,平均周期,均线偏移,平均模式,位置)

  这也与iMA函数差不多,不过数据源变为数组

  从数组中不但可以求得移动平均值,还可以求得RSI等外汇MT4指标值

  4、求自定义外汇MT4指标的值

  我们经常自己编一些自定义外汇MT4指标,可用iCustom函数来取得自定义函数的值

  iCustom(商品名,K线周期,自定义外汇MT4指标名称,自定义外汇MT4指标参数1,参数2,参数3,,,自定义外汇MT4指标线编号,位置)

  如果自定义外汇MT4指标只有一根外汇MT4指标线,则自定义外汇MT4指标线的编号为0。

  如果自定义外汇MT4指标有多根外汇MT4指标线,则第一条自定义外汇MT4指标线的编号为0,第二条为1,第三条为2。。。

  例如:iCustom(NULL,0,"mymacd",12,26,9,2,0)(12,26,9)为自定义外汇MT4指标mymacd的三个参数

  表示:求当前图表中,自定义外汇MT4指标mymacd(12,26,9)的第3条外汇MT4指标线在最新位置的值


大家在看了小编以上对"MT4外汇MT4指标编程入门(六):市场数据取值"的介绍后应该都清楚了吧,希望对大家做单有所帮助。如果大家还想要下载更多有关"MT4外汇MT4指标编程入门(六):市场数据取值"的相关EA源码,敬请关注汇探网下载。我们会持续更新交易系统,EA源码。

举报 使用道具

回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

精彩推荐
热门资讯
网友晒图
图文推荐
  • 联系我们
  • 邮箱:1912582076#qq.com(请把#改成@)
  • 电话:400-178-8526
  • QQ客服 1912582076
  • 工作时间:周一至周五(早上9点至下午5:30点)
  • 微信公众平台

  • 客服微信号

QQ|外汇EA|手机版|小黑屋|炒外汇论坛|外汇ea|汇探网 |网站地图

GMT+8, 2026-5-4 12:04 , Processed in 0.080628 second(s), 8 queries , Redis On.

Powered by 汇探网 免责申明:本平台仅提供 外汇ea, 外汇指标模板所有产品及展示信息均由第三方发布提供.|投资有风险,交易需谨慎.

Copyright © 2014-2023, 汇探网-提供 外汇MT4指标,外汇EA下载,外汇交易系统,外汇开户赠金视频教程,外汇软件工具等.版权所有,复制必究.