免费、开源证券数据平台
免费、开源的证券数据平台 www.baostock.com 1
Python 实现 RSI 指标的超买和超卖信息提示
RSI ,即相对强弱指标,是由韦尔斯.怀尔德(Welles Wilder)提出的,是衡量证券自身内在
相对强度的指标。相对强弱指数 RSI 是根据一定时期内上涨和下跌幅度之和的比率制作出的
一种技术曲线,能够反映出市场在一定时期内的景气程度。因为投资的一般原理认为,投资
者的买卖行为是各种因素综合结果的反映,行情的变化最终取决于供求关系,而 RSI 指标正
是根据供求平衡的原理,通过测量某一个期间内股价上涨总幅度占股价变化总幅度平均值的
百分比,来评估多空力量的强弱程度,进而提示具体操作的。
RSI 公式不仅能够提供这种平滑特征,而且可以产生一个能够在 0-100 之间固定区域变
动的指标。怀尔德推荐的默认时间跨度是 14 天,他论证了应用月周期 28 日的一半是有效
的。
计算公式:
N 日 RSI =N 日内收盘涨幅的平均值/(N 日内收盘涨幅均值+N 日内收盘跌幅均值) ×100
由上面算式可知 RSI 指标的技术含义,即以向上的力量与向下的力量进行比较,若向上
的力量较大,则计算出来的指标上升;若向下的力量较大,则指标下降,由此测算出市场走
势的强弱。
市场上一般的规则:(快速 RSI 指 14 日的 RSI,慢速 RSI 指 6 日的 RSI)
1. RSI 金叉:快速 RSI 从下往上突破慢速 RSI 时,认为是买进机会。
2. RSI 死叉:快速 RSI 从上往下跌破慢速 RSI 时,认为是卖出机会
3. 慢速 RSI<20 为超卖状态,为买进机会。
4. 慢速 RSI>80 为超买状态,为卖出机会。
接下来,我将通过 python 程序调用 baostock(baostock 是免费证券数据的 python 接口,
具体信息参考:www.baostock.com)实现 RSI 计算,RSI 超卖和超买提示的功能。
具体代码如下:
import baostock as bs
import pandas as pd
import talib as ta
import matplotlib.pyplot as plt
def computeRSI(code, startdate, enddate):
"""
计算证券在起止时间内的
RSI
指标。
:param code:
证券代码
:param startdate:
起始日期
:param enddate:
截止日期
:return:
"""
评论0