请观看如何免费下载自动交易

有趣的脚本?
因此发布一个链接 -
让其他人评价

喜欢这个脚本? 在MetaTrader 5客户端尝试它

指标

在外汇中显示不同周期级别的加权平均价与结算价-MT5指标 - MetaTrader 5脚本

Wujun Chen

显示:
924
等级:
投票: 1
已发布:
2020.04.03 09:06
已更新:
2020.04.03 09:51

期货中的日内均价线很多投资者有用到,这里提供了外汇中不同结算周期的加权平均价,这指标可以捕捉到一些拐点、突破点。

这里的成交量由交易平台提供,这里定义上个周期的结算价为上个周期的最后一个加权平均价。


如下图,最近的原油日内均价线,以零时开始累计:

还有布油做对比:

下面是以一周为周期的布油加权平均价,以周一为起点:


然后是一月为周期的黄金加权平均价,以月初为起点:


输入的时候要注意主图周期应该要小于你所要设置的结算周期,第二个选择是以什么价格来计算。


代码部分,首先获取目标时间:

   int count = -1;
   long bars = 0;

   if((bars = Bars(symbol,timeframe,start - PeriodSeconds(timeframe),(datetime)UINT_MAX))> 0)
      if((count = CopyTime(symbol,timeframe,0,(int)bars,times))== bars)
         return count;

   if((count = CopyTime(symbol,timeframe,start - PeriodSeconds(timeframe),(datetime)UINT_MAX,times))> 0)
      return count;

然后逐步累加成交量和价格成交量:

   for(int i = 0; i <= copied; i++)
     {
      int shift = pos;
      for(; pos < rates_total && (pos - shift) <= ExtPeriodLimit && !_StopFlag; pos++)
        {
         double price=EMPTY_VALUE;
         _setPrice(Applied,price,pos);
         if(i < copied)
           {
            if(time[pos] >= _times[i])
               break;
           }
         else
            shift = pos - Bars(_Symbol,_Period,_times[i - 1],time[pos]) + 1; //i==count


         ExtBarBuffer[pos] = pos - shift; //ExtBarBuffer[pos-1]+1
         if(ExtBarBuffer[pos] > 0)
           {
            double amount = ExtPvolBuffer[pos - 1] * ExtVolumeSumBuffer[pos - 1] + price * tick_volume[pos];
            ExtVolumeSumBuffer[pos] = ExtVolumeSumBuffer[pos - 1] + tick_volume[pos];
            ExtPvolBuffer[pos] = (ExtVolumeSumBuffer[pos] > 0) ? amount / ExtVolumeSumBuffer[pos] : ExtPvolBuffer[pos - 1];
            ExtPvolColors[pos] = (price < ExtPvolBuffer[pos] && ExtPvolBuffer[pos] <= ExtPvolBuffer[pos - 1]) ? 1 :
                                 (price > ExtPvolBuffer[pos] && ExtPvolBuffer[pos] >= ExtPvolBuffer[pos - 1]) ? 2 : 0;
           }
         else
           {
            ExtVolumeSumBuffer[pos] = (double)tick_volume[pos];
            ExtPvolBuffer[pos] = price;
            ExtPvolColors[pos] = 0;
           }
         ExtSettleBuffer[pos] = (ExtBarBuffer[pos]>1) ? ExtSettleBuffer[pos-1]:(shift > 0)? ExtPvolBuffer[shift - 1] : price;
        }
     }





对两种不同货币K线的比较,用简单的加减乘除来计算(获得金油比,交叉盘价格,期差数据等) -MT5指标 对两种不同货币K线的比较,用简单的加减乘除来计算(获得金油比,交叉盘价格,期差数据等) -MT5指标

该指标可以获取两个不同货币对各个时期的K线价格,然后通过简单的加减乘除显示在副图上,用来分析当前平台上没有的自定义商品走势。

针对等量等间隔网格刷单最大风险和间隔的计算 针对等量等间隔网格刷单最大风险和间隔的计算

这个脚本是计算等价等量加仓步骤的,比如在当前原油价格低迷情况下,又在反复震荡,投资者又想抄底,可以通过这个脚本来计算需要间隔多少来实现逐步等量加仓。

对账户资金的实时记录并显示K线图 对账户资金的实时记录并显示K线图

在做EA账户风控时,有时候需要知道账户各个时间段的资金数据,本EA可以基于每个净值变动来记录,并画出图表K线或保存至Excel。

针对波动的趋势价格指标 针对波动的趋势价格指标

对趋势行情由波动率寻找入场价与止损价