股票相对强弱指数, 简称RSI

股票Relative Strength Index(相对强弱指数, 简称RSI)是一种用于衡量股票价格动量的技术分析指标。它通过比较一段时间内股票价格上涨和下跌的幅度来确定股票是否超买或超卖。RSI的取值范围在0到100之间, 通常认为当RSI值超过70时, 股票被认为是超买状态, 可能会出现价格回调; 当RSI值低于30时, 股票被认为是超卖状态, 可能会出现价格反弹。

RSI的计算方法如下:

计算价格变化:首先计算出每个交易日的价格变化, 即当日收盘价与前一日收盘价之差。

计算平均上涨和平均下跌:分别计算出一段时间内(通常为14天)价格上涨的平均值和价格下跌的平均值。

计算相对强度:用平均上涨除以平均下跌, 得到相对强度。

计算RSI:将相对强度代入RSI公式,即100减去100除以(1加相对强度)。

RSI的计算公式如下:

RSI = 100 - (100 / (1 + RS))

其中, RS是相对强度, 等于平均上涨除以平均下跌。

RSI指标可以帮助投资者判断股票价格的走势, 识别潜在的买入和卖出信号。然而, RSI指标也有其局限性, 例如在市场趋势不明显时, RSI指标可能会发出错误的信号。因此, 投资者在使用RSI指标时, 应该结合其他技术分析工具和基本面分析, 以做出更准确的投资决策。

def stock_rsi(stock_data, name, window=14):

stock_data.set_index('trade_date', inplace=True)

delta = stock_data[name].diff()

gain = delta.where(delta > 0, 0) # Gain

loss = -delta.where(delta < 0, 0) # Loss

avg_gain = gain.rolling(window).mean()

avg_loss = loss.rolling(window).mean()

rs = avg_gain / avg_loss # Relative Strength

rsi = 100 - (100 / (1 + rs)) # Relative Strength Index

return rsi

画出RSI:

def plot_stock_rsi(stock_data):

rsi = stock_rsi(stock_data)

stock_data['trade_date'] = pd.to_datetime(stock_data['trade_date'], format='%Y%m%d')

plt.plot(stock_data['trade_date'], rsi, label='RSI')

plt.axhline(y=30, color='r', linestyle='--', label='Overbought')

plt.axhline(y=70, color='g', linestyle='--', label='Oversold')

plt.legend()

plt.title('RSI')

plt.show()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值