stoch rsi 源码
时间: 2024-01-30 19:03:00 浏览: 47
以下是Stochastic RSI的Python源代码:
```python
import numpy as np
def stoch_rsi(close, period, smoothK, smoothD):
rsi = relative_strength_index(close, period)
min_rsi = np.min(rsi)
max_rsi = np.max(rsi)
stoch_rsi = (rsi - min_rsi) / (max_rsi - min_rsi)
stoch_rsi_K = moving_average(stoch_rsi, smoothK)
stoch_rsi_D = moving_average(stoch_rsi_K, smoothD)
return stoch_rsi_K, stoch_rsi_D
def relative_strength_index(close, period):
delta = np.diff(close)
gains = delta.copy()
losses = delta.copy()
gains[gains < 0] = 0
losses[losses > 0] = 0
average_gain = np.zeros((period,))
average_loss = np.zeros((period,))
for i in range(1, period):
average_gain[i] = ((i - 1) * average_gain[i - 1] + gains[i]) / period
average_loss[i] = ((i - 1) * average_loss[i - 1] + losses[i]) / period
average_gain = np.concatenate(([np.nan], average_gain[1:])))
average_loss = np.concatenate(([np.nan], average_loss[1:])))
rs = - average_gain / average_loss
rsi = 100 - (100 / (1 + rs))
return rsi
def moving_average(x, n):
weights = np.ones((n,)) / n
return np.convolve(x, weights, mode='valid')
```
其中,`close`是时间序列的收盘价,`period`是RSI的计算周期,`smoothK`和`smoothD`分别是K线和D线的平滑周期。函数返回的是Stochastic RSI的K线和D线。以上代码中的`relative_strength_index`函数用于计算RSI,`moving_average`函数用于计算平均值。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)