python股票量化交易(2)---震荡类指标KDJ

本文介绍了KDJ指标的起源、计算公式和步骤,包括RSV值的计算,K值、D值和J值的计算。通过Python代码展示了如何计算并绘制9日KDJ曲线,为股票量化交易提供分析工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

汝之命,未知若何?即命当荣显,常做落寞想;即时当顺利,常做拂逆想;即眼前足食,常作贫窭想;即人相爱敬,常作恐惧想;即家世望重,常作卑下想;即学问颇优,常作浅陋想。

什么是KDJ

说到KDJ,我们首先需要提到威廉指数,该指标的计算首先选定一个特定的时间跨度,比如14天,然后找出这一特定时间的最高价和最低价,构成一个价格变化区间,而后分析这一时间跨度最后一个时间点的收盘价与期间最高价和最低价的相对位置,以此来衡量市场的超买或超卖现象。

而KDJ指标最早是由芝加哥期货交易商George Lane提出的KD指标,该指标还被称为随机震荡指标。与威廉指数不同的是,该指标在收盘价与最高价和最低价的相对位置的比值上,融合了移动平均的思想,用更多的信息来捕捉市场的超买与超卖。顾名思义,KDJ就是比威廉指数多了一个J线,进一步提高了数据的准确度。

KDJ的计算公式

关于KDJ的计算,我们可以分为4个步骤:

(1)首先,需要计算RSV值,它的公式如下:

RSV=(第n天的收盘价-最近n天内的最低价)÷(最近n天内的最高价-最近n天内的最低价)*100

这个公式中,n为时间跨度,具体应用之时,视你需要观察的数据时间长度而定。而RSV取值范围在0~100之间,取值越大说明收盘价在价格区间中的相对位置越高,市场可能出现超买的现象,反之则出现超卖的现象。

(2)计算K值,K值由RSV值的指数移动平均(EMA)计算得到,即前一日的K值和当前RSV值经过一定权重调整后相加所得,计算公式如下:

K值=2/3前一日的K值+1/3当日RSV值

(3)计算D值,D值由K值的指数移动平均计算而来,即前一日的D值和当期K值经过一定权重调整后相加得到,计算公式如下:

D值=2/3前一日D值+1/3当日K值

(4)计算J值,J值是KD的辅助指标,进一步反映了K指标和D指标的乘离程度,计算公式如下:

J值=3K值-2D值

计算KDJ的值

这里,我们选择时间跨度为9日,也就是和之前讲解的均线一样。但和均线不同的是,前8日依旧有RSV值,但无效,第9日以及之后的数据才有效。

根据上面的公式,我们首先需要计算最近9天内的最低价以及最近9天内的最高价。这里,我们依旧使用前一章开头获取的歌尔股份k.xlsx文件中的股票数据。具体代码如下:

low_list = df["close"].rolling(9, min_periods=1).min()
high_list = df["high"].rolling(9, min_periods=1).
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李元静

您的鼓励就是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值