- 指标说明
- 指标原理
- 计算步骤
- Python指标实现
- 利用Tushare获取数据源
- 平台介绍
- 获取数据源
- 利用Python实现指标计算
KDJ指标又称为随机指标,首先选定一定跨度的时间范围,找特定时间范围内的收盘价与该时间范围内最高价与最低价的相对位置来捕捉处于超买、超卖现象的股票。(id:513088)
计算步骤(1)计算未成熟随机值RSV
RSV = (第n天的收盘价-最近n天内的最低价)/(最近n天的最高价-最近n天内的最低价) x 100%
其中,n为时间跨度,RSV取值越大说明市场可能出现超买,建议卖出。反之为超卖,建议买入
(2)计算K值
K值 = 2/3 x 前一日K值 + 1/3当日RSV
(3)计算D值
D值 = 2/3 x 前一日D值 + 1/3当日K值
(4)计算J值
J值 = 3 x K值 - 2 x D值
Tushare是一个免费、开源的python财经数据接口包。主要实现对股票等金融数据从数据采集、清洗加工 到 数据存储的过程,能够为金融分析人员提供快速、整洁、和多样的便于分析的数据,为他们在数据获取方面极大地减轻工作量,使他们更加专注于策略和模型的研究与实现上。
获取数据源# 首先进行安装
pip install tushare
# 导入tushare
import tushare as ts
# 设置token
pro = ts.pro_api(token) # token在个人主页,复制即可
# 以平安银行为例,获取最近的交易数据
df = pro.daily(ts_code='000001.SZ', start_date='20220401', end_date='20220515')
df.head()
ts_code | trade_date | open | high | low | close | pre_close | change | pct_chg | vol | amount | |
---|---|---|---|---|---|---|---|---|---|---|---|
0 | 000001.SZ | 20220513 | 14.50 | 14.66 | 14.49 | 14.61 | 14.38 | 0.23 | 1.5994 | 676311.91 | 985962.932 |
1 | 000001.SZ | 20220512 | 14.48 | 14.56 | 14.33 | 14.38 | 14.63 | -0.25 | -1.7088 | 685064.23 | 987061.607 |
2 | 000001.SZ | 20220511 | 14.54 | 14.84 | 14.44 | 14.63 | 14.59 | 0.04 | 0.2742 | 848573.62 | 1240700.426 |
3 | 000001.SZ | 20220510 | 14.50 | 14.60 | 14.11 | 14.59 | 14.55 | 0.04 | 0.2749 | 992285.02 | 1425836.927 |
4 | 000001.SZ | 20220509 | 14.94 | 14.94 | 14.46 | 14.55 | 14.96 | -0.41 | -2.7406 | 818621.35 | 1197104.247 |
在计算K值和D值时,取较为常用的2/3 和1/3作为平滑权重,时间跨度n选9日。
# 对数据进行排序
df = df.sort_values('trade_date',ascending=True)
low_list = df['low'].rolling(9,min_periods = 1).min()
high_list = df['high'].rolling(9,min_periods = 1).max()
rsv = (df['close'] - low_list)/(high_list - low_list) *100
df['K'] = rsv.ewm(com=2,adjust=False).mean()
df['D'] = df['K'].ewm(com=2,adjust=False).mean()
df['J'] = 3*df['K'] - 2*df['D']
df[-5:]
ts_code | trade_date | open | high | low | close | pre_close | change | pct_chg | vol | amount | K | D | J | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
4 | 000001.SZ | 20220509 | 14.94 | 14.94 | 14.46 | 14.55 | 14.96 | -0.41 | -2.7406 | 818621.35 | 1197104.247 | 29.860821 | 38.507929 | 12.566604 |
3 | 000001.SZ | 20220510 | 14.50 | 14.60 | 14.11 | 14.59 | 14.55 | 0.04 | 0.2749 | 992285.02 | 1425836.927 | 28.698423 | 35.238094 | 15.619081 |
2 | 000001.SZ | 20220511 | 14.54 | 14.84 | 14.44 | 14.63 | 14.59 | 0.04 | 0.2742 | 848573.62 | 1240700.426 | 28.656091 | 33.044093 | 19.880088 |
1 | 000001.SZ | 20220512 | 14.48 | 14.56 | 14.33 | 14.38 | 14.63 | -0.25 | -1.7088 | 685064.23 | 987061.607 | 24.049116 | 30.045767 | 12.055813 |
0 | 000001.SZ | 20220513 | 14.50 | 14.66 | 14.49 | 14.61 | 14.38 | 0.23 | 1.5994 | 676311.91 | 985962.932 | 25.190253 | 28.427262 | 18.716234 |
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)