量化策略:如何用RSI²领先指标侦测趋势反转

相对强弱指数(RSI)是技术分析领域最流行的指标之一。在本文中,我们将优化RSI指标,创建一个帮助判断趋势反转的领先信号。接下来,我们基于此创新(称为RSI²)创建交易策略并进行回溯检验。

相对强弱指数

RSI是最著名的动能指标之一,它有很多优势,可以应用到不同的资产。RSI的取值范围限制在0到100,这使它更易于解释。

当更多的交易员和基金经理关注RSI,就会有更多的人根据RSI的信号做出反应,从而反过来影响市场价格。当然,我们无法证明这个想法,这仅仅是一种直觉性解释,技术分析的基础之一就是它是自我实现的。

威尔斯怀尔德于1978年提出了该指标,回溯期使用14,取值范围是0-100,通常将30和70视为超卖区间和超买区间。RSI一般有4种解读方式:

  • 价格进入超卖/超买区域,意味着会发生短期修正。
  • 指标与价格发生背离意味着趋势会反转。
  • 在指标上绘制趋势线以找到反应水平。
  • 穿越中位线50意味着当前趋势可能改变。

RSI的计算方法非常简单。首先计算收盘价的一阶差分,然后用正差的移动平滑除以负差的移动平滑,最后计算相对强度并转换为0到100的取值。

在这里插入图片描述
在这里插入图片描述

上图显示了EURUSD的RSI(14)。

以下代码显示了如何计算指数移动平均和RSI:

def ema(Data, alpha, lookback, what, where):  
      
    # alpha is the smoothing factor  
    # window is the lookback period  
    # what is the column that needs to have its average calculated  
    # where is where to put the exponential moving average  
      
    alpha = alpha / (lookback + 1.0)  
    beta  = 1 - alpha  
      
    # First value is a simple SMA  
    Data = ma(Data, lookback, what, where)  
      
    # Calculating first EMA  
    Data[lookback + 1, where] = (Data[lookback + 1, what] * alpha) + (Data[lookback, where] * beta)# Calculating the rest of EMA  
    for i in range(lookback + 2, len(Data)):  
            try:  
                Data[i, where] = (Data[i, what] * alpha) + (Data[i - 1, where] * beta)  
          
            except IndexError:  
                pass  
    return Datadef rsi(Data, rsi_lookback, what1, what2):  
      
    rsi_lookback = (rsi_lookback * 2) - 1 # From exponential to
  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值