EATC

 找回密码
 立即注册
查看: 1506|回复: 4

MQL4技术指标相关函数(一)

[复制链接]

196

主题

1168

帖子

7992

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
7992
发表于 2022-9-8 11:30:11 | 显示全部楼层 |阅读模式

MQL4不仅可以计算当前图表中任何指标,还可以计算任何有效的货币对/图表时段的数据。如果请求数据(货币对名称/图表时段不同于当前图表)来自其他图表,出现这种情况如果相应的图表没有在客户端内打开,数据需要从服务器上下载。这种情况下,错误信息ERR_HISTORY_WILL_UPDATED(4066-历史数据正在更新中)将被放置于 last_error 变量中,需要再次请求更新数据(参见 ArrayCopySeries() 范例)。

  • iAC() – 加速震荡指标
  • iAD() – 离散指标
  • iAlligator() – 鳄鱼指标
  • iADX() – ADX指标
  • iATR() – ATR指标
  • iAO() – 动量震荡指标
  • iBearsPower() – 熊力指标
  • iBands() – 布林线指标
  • iBandsOnArray() – 基于数组计算布林线指标
  • iBullsPower() – 牛力指标
  • iCCI() – CCI指标
  • iCCIOnArray() – 基于数组计算CCI指标
  • iCustom() – 自定义指标
  • iDeMarker() – DeMarker指标
  • iEnvelopes() – Envelopes包络线指标
  • iEnvelopesOnArray() – 基于数组计算包络线指标
  • iForce() – 强力指标
  • iFractals() – 分型指标
  • iGator() – 鳄鱼振荡指标
  • iIchimoku() – Ichimoku云图指标
  • iBWMFI() – BWMFI指标
  • iMomentum() – 动量指标
  • iMomentumOnArray() – 基于数组计算动量指标
  • iMFI() – 资金流量指标
  • iMA() – 移动平均线
  • iMAOnArray() – 基于数组计算移动平均线
  • iOsMA() – OsMA指标
  • iMACD() – MACD指标
  • iOBV() – OBV指标
  • iSAR() – SAR抛物线指标
  • iRSI() – RSI指标
  • iRSIOnArray() – 基于数组计算RSI指标
  • iRVI() – RVI指标
  • iStdDev() – 标准差指标
  • iStdDevOnArray() – 基于数组计算标准差
  • iStochastic() – 随机震荡指标(KDJ)
  • iWPR() – WPR指标(%R)

iAC() – 加速震荡指标double iAC(string symbol, int timeframe, int shift)

计算比尔.威廉斯的加速震荡指标。

参数:

symbol    - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 shift     - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

  double result=iAC(NULL, 0, 1);iAD() – 离散指标double iAD(string symbol, int timeframe, int shift)

计算离散指标。

参数:

symbol    - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 shift     - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

  double result=iAD(NULL, 0, 1);iAlligator() – 鳄鱼指标double iAlligator(string symbol, int timeframe,                   int jaw_period, int jaw_shift,                   int teeth_period, int teeth_shift,                   int lips_period, int lips_shift,                   int ma_method, int applied_price,                   int mode, int shift)

计算比尔.威廉斯的鳄鱼指标。

参数:

symbol        - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe     - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 jaw_period    - 蓝线平均周期(鳄鱼的下颌)jaw_shift     - 蓝线偏移量teeth_period  - 红线平均周期(鳄鱼的牙)teeth_shift   - 红线偏移量lips_period   - 绿线平均周期(鳄鱼的嘴唇)lips_shift    - 绿线偏移量ma_method     - MA方法。可以是任意的移动平均计算方法。applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。mode          - 指标线的标识符。可以是以下任意值                MODE_GATORJAW - 鳄鱼下领(蓝色)指标线,                MODE_GATORTEETH - 鳄鱼牙(红色)指标线,                MODE_GATORLIPS - 鳄鱼嘴唇(绿色)指标线。   shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

double jaw_val=iAlligator(NULL, 0, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN, MODE_GATORJAW, 1);iADX() – ADX指标double iADX(string symbol, int timeframe, int period,             int applied_price, int mode, int shift)

计算ADX指标。

参数:

symbol        - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe     - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 period        - 计算的周期数applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。mode          - 指标线的标识符。可以是 指标线标示符 里对应值。   shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

if(iADX(NULL,0,14,PRICE_HIGH,MODE_MAIN,0)>iADX(NULL,0,14,PRICE_HIGH,MODE_PLUSDI,0)) return(0);iATR() – ATR指标double iATR(string symbol, int timeframe, int period, int shift)

计算ATR指标。

参数:

symbol    - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 period    - 计算的周期数。 shift     - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

if(iATR(NULL,0,12,0)>iATR(NULL,0,20,0)) return(0);iAO() – 动量震荡指标double iAO(string symbol, int timeframe, int shift)

计算比尔.威廉斯的动量震荡指标。

参数:

symbol    - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 shift     - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

  double result=iAO(NULL, 0, 1);iBearsPower() – 熊力指标double iBearsPower(string symbol, int timeframe, int period,                    int applied_price, int shift)

计算熊力指标。

参数:

symbol        - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe     - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。period        - 计算的周期数。 applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。 shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

double val=iBearsPower(NULL, 0, 13,PRICE_CLOSE,0);iBands() – 布林线指标double iBands(string symbol, int timeframe, int period,               int deviation, int bands_shift, int applied_price,               int mode, int shift)

计算布林线指标。

参数:

symbol        - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe     - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。period        - 计算的周期数。deviation     - 与主线的偏差。bands_shift   - 指标相对图偏移。mode          - 指标线的标识符。可以是 指标线标示符 里对应值。 applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。 shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

if(iBands(NULL,0,20,2,0,PRICE_LOW,MODE_LOWER,0)>Low[0]) return(0);iBandsOnArray() – 基于数组计算布林线指标double iBandsOnArray(double array[], int total, int period,                     int deviation, int bands_shift,                     int mode, int shift)

基于数值型数组中数据,计算布林线指标。不同于 iBands() ,iBandsOnArray 函数并不通过货币对名称、图表时段、请求价格的方式获取数据,而是要求价格数据必须事先准备好,再从左边到右边计算指标。为了能按照序列数组那样存取数组元素(即从右到左),你必须使用 ArraySetAsSeries 函数。

参数:

array[]     - 需要计算数据的数组。total       - 要参与计算的元素个数。0意味着使用整个数组。period      - 计算的周期数。deviation   - 与主线的偏差。bands_shift - 指标相对图偏移。mode        - 指标线的标识符。可以是 指标线标示符 里对应值。  shift       - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。

示例:

if(iBandsOnArray(ExtBuffer,total,2,0,MODE_LOWER,0)>Low[0]) return(0);
回复

使用道具 举报

2588

主题

4807

帖子

3万

积分

交易元老

Rank: 8Rank: 8

积分
32217
发表于 2022-9-30 10:17:25 | 显示全部楼层
非常感谢你的分享
回复

使用道具 举报

1865

主题

4425

帖子

1万

积分

交易元老

Rank: 8Rank: 8

积分
16464
发表于 2024-2-25 11:07:46 | 显示全部楼层
66666
回复

使用道具 举报

332

主题

1085

帖子

3845

积分

交易元老

Rank: 8Rank: 8

积分
3845
发表于 2024-9-3 11:16:07 | 显示全部楼层
好东西要分享
回复

使用道具 举报

2718

主题

5151

帖子

2万

积分

交易元老

Rank: 8Rank: 8

积分
21544
发表于 2024-10-9 09:44:51 | 显示全部楼层
不错的分享
回复

使用道具 举报

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

本版积分规则

收藏本站|法律声明|Archiver|小黑屋|support@ea198.com|EATC ( 桂ICP备2022005787号 )

风险提示与免责声明:擅自从事外汇保证金交易的双方不受法律保护!社区内展示内容,均为网友自发分享,不构成投资建议,社区无法全面监控由第三方上传至社区的资源,因此不保证资源的合法性、安全性、完整性、真实性或品质等。您下载时,同意自行判断并承担所有风险。社区内的资源,仅限用于学习和研究目的,不得将用于商业或者非法用途,否则,一切后果请用户自负。社区信息来自网络,版权争议与社区无关,您下载后须在24个小时之内进行删除。如果您喜欢该内容,请支持正版。如有侵权请邮件与我们联系处理。