admin 发表于 2022-9-8 11:31:19

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

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)

iForce() – 强力指标double iForce(string symbol, int timeframe, int period,               int ma_method, int applied_price, int shift)计算强力指标。参数:symbol      - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe   - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 period      - 计算的周期数ma_method   - MA方法。它可以是其中 任意移动平均计算方法applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:double val=iForce(NULL, 0, 13,MODE_SMA,PRICE_CLOSE,0);iFractals() – 分型指标double iForce(string symbol, int timeframe, int mode, int shift)计算分型指标。参数:symbol      - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe   - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 mode          - 指标线的标识符。可以是 指标线标示符 里对应值shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:double val=iFractals(NULL, 0, MODE_UPPER, 3);iGator() – 鳄鱼振荡指标double iGator(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=iGator(NULL, 0, 13, 8, 8, 5, 5, 3, MODE_SMMA, PRICE_MEDIAN, MODE_UPPER, 1);iIchimoku() – Ichimoku云图指标double iIchimoku(string symbol, int timeframe, int tenkan_sen,                  int kijun_sen, int senkou_span_b,                  int mode, int shift)计算Ichimoku云图指标。参数:symbol      - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe   - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。tenkan_sen    - Tenkan-sen指标线的计算周期。 kijun_sen   - Kijun-sen指标线的计算周期。senkou_span_b - Senkou Span B指标线的计算周期。mode          - 指标线的标识符。可以是 iIchimoku指标线标示符 里对应值shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:double tenkan_sen=iIchimoku(NULL, 0, 9, 26, 52, MODE_TENKANSEN, 1);iBWMFI() – BWMFI指标double iBWMFI(string symbol, int timeframe, int shift)计算比尔.威廉斯的市场促进指数指标。参数:symbol      - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe   - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:double val=iBWMFI(NULL, 0, 0);iMomentum() – 动量指标double iMomentum(string symbol, int timeframe, int period,                  int applied_price, int shift)计算动量指标。参数:symbol      - 要计算指标数据的货币对名称。 NULL表示当前货币对。timeframe   - 时间周期。 可以 时间周期列举 任意值。 0表示当前图表的时间周期。 period      - 计算的周期数applied_price - 应用的价格。它可以是 应用价格枚举 的任意值。shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:if(iMomentum(NULL,0,12,PRICE_CLOSE,0)>iMomentum(NULL,0,20,PRICE_CLOSE,0)) return(0);iMomentumOnArray() – 基于数组计算动量指标double iMomentum(double array[], int total, int period, int shift)基于数值型数组中数据,计算动量指标。不同于 iMomentum() ,iMomentumOnArray函数并不通过货币对名称、图表时段、请求价格的方式获取数据,而是要求价格数据必须事先准备好,再从左边到右边计算指标。为了能按照序列数组那样存取数组元素(即从右到左),你必须使用 ArraySetAsSeries 函数。参数:array[]       - 需要计算数据的数组。total         - 要参与计算的元素个数。0意味着使用整个数组。 period      - 计算的周期数    shift         - 从指标缓冲区中获取值的索引(相对当前柱子向前移动一定数量周期的偏移量)。 示例:if(iMomentumOnArray(mybuffer,100,12,0)>iMomentumOnArray(mubuffer,100,20,0)) return(0);

onlyyou 发表于 2022-10-6 12:39:14

谢谢楼主分享

luck88 发表于 2023-10-29 10:28:06

:loveliness:

醉红尘灬残月 发表于 2024-4-29 10:44:00

新的一天,新的交易
页: [1]
查看完整版本: MQL4技术指标相关函数(三)