当前位置: > 股票>正文

10 种横盘交易策略的比较分析 外汇如何判断内盘交易

2023-07-20 13:30:33 互联网 未知 股票
内容目录 综述 在创建横盘交易策略时定义任务 横盘交易策略 策略 #1,附带基于 MFI 滤波器的轨道线指标 策略 #2,布林带加两条移动均线 策略 #3,基于埃勒斯 (Ehlers) 分形维度滤波器的 WSO & WRO 通道 策略 #4, 通道交叉百分比指标并基于趋势范围滤波器 策略 #5, 价格通道指标和基于 RBVI 的滤波器 策略 #6, 威廉姆斯百分比范围指标和基于 ADX 的滤波器 策略 #7, 改编的 Keltner 通道和基于魔幻趋势的滤波器 策略 #8, 唐奇安 (Donchian) 通道,由三位一体脉动 (Trinity Impulse) 确认 策略 #9, ATR 通道指标和基于 CCI 色阶的滤波器 策略 #10, RSI 直方图和基于横盘指标的滤波器 测试 研究成果 结束语综述

趋势跟踪策略非常受欢迎且易于运用,尤其适合初学者。 然而,当前行情变得更加动荡,而趋势走势则不那么明显 (在范围和持续时间这两项上)。 如果不利用横盘或窄幅振荡行情进行交易的可能性,我们就会失去潜在的盈利。 遵循交易规则的趋势很简单: 识别趋势的迹象并尝试利用它。 横盘时交易与此则有很大不同。 在窄幅振荡走势期间,价格处于很小的范围内,并且可能在相当长的时间内保持不变。 行情没有方向性走势,流动性低。

在创建横盘交易策略时定义任务

在 之前的文章 中,我定义了三个任务,这些任务是创建趋势跟踪策略所必需的。 创建横盘交易策略所需的任务极其相似。

图例 1. 窄幅/横盘走势的示例。

任务 1. 辨别横盘的存在

横盘没有一般性和详尽的定义 (实际上也没有对趋势概念的正确论述)。 然而,有一些迹象可以表明行情目前处于横盘状态。 这种走势也被称为窄幅振荡走势,因为没有明显的上行和下行的纵向走势。 价格在一个范围内运动,接近波浪的下边界和上边界。 横盘的另一个迹象就是行情交易量很低,或行情参与者的士气低落。 从弱势价格的变化,以及小额分笔交易量的变化可以看出这一点。

任务 2. 一笔持仓的目标。

横盘交易技术通常运用通道交易。 这是在窄幅振荡走势中赢利的主要运用方法。 依据一些虚拟边界可以判断横盘通道。 进而,交易策略是基于价格和通道边界之间的关系来构建的。 大多数情况下,策略意味着当价格从通道边界反弹时买入或卖出 (图例 2)。

图例 2. 当价格从通道边界反弹时进行交易。

当于通道的上半部分进行卖出时,我们假设价格将向下边界移动。 其位置将作为止盈价位。 止损可以设置某个点数值,或根据通道边界而定。 买入操作使用逆向策略: 在较低的通道边界买入,并在上边界附近设置止盈价位。

横盘交易策略

我在选择横盘交易策略时运用了上述原则。

交易将在通道内进行。 因此,我们需要选择能够帮助我们构建通道,并确定横盘区域虚拟边界的工具。 除了定义通道之外,我们还需要至少一个额外的工具来确认价格在从通道边界反弹后将朝着正确的方向发展。 这种滤波器的目的就是避免入场假信号。 策略 #1,附带基于 MFI 滤波器的轨道线指标

 通道边界基于轨道线指标判断。 MFI 指标还用于过滤信号。

指标参数 描述 所用指标 轨道线 所用指标 MFI 时间帧 H1 买入条件 价格触及通道边界低轨,MFI 处于超卖区域 (低于 20) 卖出条件 价格触及通道边界高轨,MFI 处于超买区域 (高于 80) 离场条件   价格到达反方向的通道边界

图例. 3 根据策略 #1 示意入场条件。

图例 3. 交易策略 #1 的入场条件。

此策略的智能交易系统代码如下所示:

void OnTick()  {//--- 检查以前由该 EA 开立的订单   if(!Trade.IsOpenedByMagic(Inp_MagicNum))     {      //--- 获取数据进行计算      if(!GetIndValue())         return;      //--- 如果有买入信号,则开单      if(BuySignal())         Trade.BuyPositionOpen(Symbol(),Inp_Lot,close[0]-Inp_StopLoss*_Point,tp,Inp_MagicNum,Inp_EaComment);      //--- 如果有卖出信号,则开单      if(SellSignal())         Trade.SellPositionOpen(Symbol(),Inp_Lot,close[0]+Inp_StopLoss*_Point,tp,Inp_MagicNum,Inp_EaComment);     }  }//+------------------------------------------------------------------+//| 买入条件                                                 |//+------------------------------------------------------------------+bool BuySignal()  {   if(mfi[0]close[0])     {      tp=env_high[0];      return true;     }   else      return false;  }//+------------------------------------------------------------------+//| 卖出条件                                                   |//+------------------------------------------------------------------+bool SellSignal()  {   if(mfi[0]>80 && env_high[0]

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。