KDJ指标的算法、原理和特性

2024-01-21 12:28
文章标签 算法 特性 原理 指标 kdj

本文主要是介绍KDJ指标的算法、原理和特性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

KDJ的完整中文名称是随机摆动指标,是短线交易者最常用的指标之一。作为应用最广泛的指标之一,KDJ的用法网上随处可见,但大部分介绍都只会告诉你超买超卖,金叉死叉,详细点的讲讲背离和钝化,至于为什么这么用,几乎没人去剖析背后的原理。这篇文章讲带你从算法和概率的角度,探究KDJ的底层逻辑。

KDJ的算法总共分成三步:

第一步求出未成熟随机值RSV,公式是:
在这里插入图片描述

这个公式,直白的表述就是求出当前价格在过去N个周期最高点和最低点的位置,以百分比计数。

第二步是对RSV进行平滑计算得到K值,再对K值进行平滑计算得到D值,其算法都是取三分之二个前值加上三分之一时下值作为当前值。

这里有两个意义,一个是RSV作为初始值,数据波动频率太过频繁,作为指标,需要适当对数据进行平滑运算,经过削峰平谷平滑后的数据更加具有趋势指示性。

另一个意义第一次平滑是让RSV看起来相对平滑,可以作为快速趋势值,再次平滑K值得到的D值是让趋势更加平缓,把D值当作一个慢速趋势值,通过观察快慢两个平滑值的关系,就能比较清晰的判断当下的形势。第三步是对快(K值)慢(D值)值的差值进行放大,得到J值,J值的作用是观测快慢线之间的距离和变化。J值的计算公式是:J=3K-2D,这个公式实际上是:J=K+(K-D)×2,也就是以K值为基础,加上KD差的放大倍数,目的是为了观察KD之间的关系。这与MACD中的MACD=(DIF-DEA)×2一个道理,只是坐标系统不一样,所以加了K值做为基础而已。理解了KDJ的算法,接下来我们探讨一下KDJ指标解决了什么问题?

通过算法我们可以总结出KDJ指标的本质:KDJ指标指示的是当下价格在过去N个周期震荡区间的平滑位置。这个位置的作用,可以理解为在价格运行的方向在震荡区间中的摆动力道。我们可以通过观察KD值的方向和差距(也就是J值)来观察价格运行的方向和力道。

理解了KDJ的计算原理和本质,最后我们通过观测KDJ的表现,总结出以下几个指标特性:

1、KDJ考虑的是区间最高最低与当前价格的关系,如果K线的上下影把区间撑大,或者周期平移导致区间缩小,RSV的数值会失真。比如一段上涨趋势,最后一根K线如果拉出长上影,但收盘价格比昨天高,这时候指标值反而会比昨天低,反之亦然,这种情况下极容易产生KDJ背离,连续背离则会形成钝化。所以底部金叉和顶部死叉并不能完全指示交易机会,需要结合K线进行判断。

2、持续阴跌或持续小涨也会导致KDJ产生钝化,在钝化的情况下会导致金叉死叉连续失效,所以出现KDJ钝化不要轻易进场离场。

3、KD值平滑计算的函数是SMA,SMA均线的最大特点是敏感度特别高,走平和拐头只需要一个相对大于或小于前三个值得数值就会发生,加上区间撑大的特性,在一段趋势中随便一个反弹回调就会造成走平拐头的出现,所以KDJ非常适合短线交易中对行情及时转变进行决策。

4、当K值上穿50时,行情必定是突破N周期平台突破,下穿则相反。KD值均处于50上方,价格一定呈上升趋势,KD值处于50下方则必定处于下跌趋势。所以KDJ最好的用法并非金叉死叉,而是K值上穿下穿50中间值。

5、有不少教程说J值处于20以下和80是超买超卖区,其实以上意义并不大,即使J值小于零或大于100,也不能确认必定会迎来反转行情。相反的,上涨下跌力度大到能把J值做到大于100小于0,那么消耗这个力度是需要时间和空间的。虽然有很多的例子可以观测到J值处于极限位置后会反转,但那对我们来说并非机会,而是风险。观测的重点仍然应该放在KD值上。

最后总结:我们研究指标,目的是为了了解前人和专业人士理解市场的方式。理解这些思路,对我们完善自身交易系统有着莫大的帮助,通过指标理解市场运行规律,才能使用指标去把握市场运行方向的转折点和交易机会

量化股票基金stockapi接口地址:https://stockapi.com.cn
接口http请求方式获取数据,Java,python,js,c,c++,易语言均可用

相关章节说明

    • 接口说明:日线macd数据查询
    • 接口说明:日线kdj数据查询
    • 接口说明:日线wr数据查询
    • 接口说明:日线cci数据查询
    • 接口说明:5,10,20日ma均线数据查询
    • 接口说明:布林带boll数据查询
    • 接口说明:龙虎榜查询
    • 接口说明: 股票历史日线行情查询
    • 接口说明:分时kdj数据
    • 接口说明:分时数据获取
    • 接口说明:主力资金流入流出指标
    • 接口说明:量比指标
    • 接口说明:抛物线SAR指标
    • 接口说明:乖离率BIAS指标
    • 接口说明:RSI指标
    • 接口说明:神奇九转指标
    • 接口说明:所有A股列表数据查询
    • 接口说明:所有st股列表数据查询
    • 接口说明:十大成交活跃股
    • 接口说明:查询当日是否为交易日
    • 接口说明:查询上证指数
    • 接口说明:查询深圳成指
    • 接口说明:查询上证50
    • 接口说明:基金分时数据
    • 接口说明:行业板块个股列表
    • 接口说明:行业板块代码
    • 接口说明:板块历史资金流
    • 接口说明:涨停股池
    • 接口说明:强势股池
    • 接口说明:次新股池
    • 接口说明:炸板股池
    • 接口说明:跌停股池

接口说明:日线macd数据查询

地址:https://stockapi.com.cn/v1/quota/macd

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
cycleint99周期
longCycleint2626长周期
shortCycleint1212短周期
vipCycleFlagint00是否需要返回所有周期数据,1:是;0:否。有token用户可以传1

请求示例:

https://stockapi.com.cn/v1/quota/macd?code=600004&cycle=9&date=2021-10-17&longCycle=26&shortCycle=12&vipCycleFlag=0

接口说明:日线kdj数据查询

地址:https://stockapi.com.cn/v1/quota/kdj
请求示例:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
cycleint99周期1
cycle1int33周期2
cycle2int33周期3
vipCycleFlagint00是否需要返回所有周期数据,1:是;0:否。有token用户可以传1
https://stockapi.com.cn/v1/quota/kdj?calculationCycle=100&code=600004&cycle=9&cycle1=3&cycle2=3&date=2022-06-20&vipCycleFlag=0

接口说明:日线wr数据查询

地址:https://stockapi.com.cn/v1/quota/wr

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
cycle1int1010周期1
cycle2int66周期2
rehabilitationint100100复权方式:100-不复权;101-后复权;102-前复权
calculationCycleint100100周期:100-日;101-周;102-月;103-季;104-半年;105-年

请求示例:

https://stockapi.com.cn/v1/quota/wr?code=600004&cycle1=10&cycle2=6&date=2021-10-17&rehabilitation=100&calculationCycle=100

接口说明:日线cci数据查询

地址:https://stockapi.com.cn/v1/quota/cci
请求示例:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
cycleint1414周期
vipCycleFlagint00是否需要返回所有周期数据,1:是;0:否。有token用户可以传1
https://stockapi.com.cn/v1/quota/cci?code=600004&cycle=14&date=2021-10-17&vipCycleFlag=0

接口说明:5,10,20日ma均线数据查询

地址:https://stockapi.com.cn/v1/quota/ma
请求示例:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
maint5,10,205,10,20周期,逗号分隔符必须为英文,默认值ma=5,10,20
rehabilitationint100100复权方式:100-不复权;101-后复权;102-前复权
calculationCycleint100100周期:100-日;101-周;102-月;103-季;104-半年;105-年

请求示例:

https://stockapi.com.cn/v1/quota/ma?code=600004&date=2021-10-17&ma=5,10,20&rehabilitation=100&calculationCycle=100

接口说明:布林带boll数据查询

地址:https://stockapi.com.cn/v1/quota/boll

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-17时间
cycleint2626周期,默认值cycle=26
bandwidthint22周期,逗号分隔符必须为英文,默认值ma=5,10,20
rehabilitationint100100复权方式:100-不复权;101-后复权;102-前复权
calculationCycleint100100周期:100-日;101-周;102-月;103-季;104-半年;105-年

请求示例:

https://stockapi.com.cn/v1/quota/boll?bandwidth=2&code=600004&cycle=26&date=2021-10-17&rehabilitation=100&calculationCycle=100

接口说明:龙虎榜查询

地址:https://stockapi.com.cn/v1/base/dragonTiger
请求地址:

参数名称类型默认值示例值是否必须描述
datestring2022-09-02时间
https://stockapi.com.cn/v1/base/dragonTiger?date=2022-09-02

接口说明: 股票历史日线行情查询

地址:https://stockapi.com.cnv1/base/day
请求示例:

https://stockapi.com.cn/v1/base/day?token=你的token&code=600004&endDate=2021-10-15&startDate=2021-10-10

接口说明:分时kdj数据

地址:https://stockapi.com.cn/v1/base/minKdj
请求示例:

https://stockapi.com.cn/v1/base/minKdj?code=600004&cycle=9&cycle1=3&cycle2=3

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004.SH股票代码
cycleint99周期
cycle1int33周期1
cycle2int33周期2

接口说明:分时数据获取

地址:https://stockapi.com.cn/v1/base/min
请求示例:

https://stockapi.com.cn/v1/base/min?code=600004

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码

接口说明:主力资金流入流出指标

地址:https://stockapi.com.cn/v1/quota/capital
请求示例:

https://stockapi.com.cn/v1/quota/capital?code=600004&date=2021-10-10

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间

接口说明:量比指标

地址:https://stockapi.com.cn/v1/quota/lb
请求示例:

https://stockapi.com.cn/v1/quota/lb?code=600004&cycle=5&date=2021-10-10

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间
cyclestring5周期,默认值cycle=5

接口说明:抛物线SAR指标

地址:https://stockapi.com.cn/v1/quota/sar
请求示例:

https://stockapi.com.cn/v1/quota/sar?code=600004&cycle=4&date=2021-10-10&limit=10&step=2

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间
cyclestring4周期,默认值cycle=4
stepstring2步长,默认值step=2
limitstring10极值,默认值limit=10

接口说明:乖离率BIAS指标

地址:https://stockapi.com.cn/v1/quota/bias
请求示例:

https://stockapi.com.cn/v1/quota/bias?code=600004&cycle1=6&cycle2=12&cycle3=24&date=2021-10-10

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间
cycle1string66周期1,默认值cycle1=6
cycle2string1212周期2,默认值cycle2=12
cycle3string2424周期3,默认值cycle3=24

接口说明:RSI指标

地址:https://stockapi.com.cn/v1/quota/rsi
请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间
cycle1string66周期1,默认值cycle1=6
cycle2string1212周期2,默认值cycle2=12
cycle3string2424周期3,默认值cycle3=24
vipCycleFlagstring00是否需要返回所有周期数据,1:是;0:否。有token用户可以传1

请求示例:

https://stockapi.com.cn/v1/quota/rsi?code=601088&cycle1=6&cycle2=12&cycle3=24&date=2021-10-10&vipCycleFlag=0

接口说明:神奇九转指标

地址:https://stockapi.com.cn/v1/quota/nineTurn
请求示例:

https://stockapi.com.cn/v1/quota/nineTurn?code=600004&date=2021-10-10

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring600004股票代码
datestring2021-10-10交易时间

接口说明:所有A股列表数据查询

地址:https://stockapi.com.cn/v1/base/all
请求参数说明:
请求示例:

https://stockapi.com.cn/v1/base/all

接口说明:所有st股列表数据查询

地址:https://stockapi.com.cn/v1/base/st
请求参数说明:

https://stockapi.com.cn/v1/base/st

接口说明:十大成交活跃股

地址:https://stockapi.com.cn/v1/base/top10Active
请求示例:

https://stockapi.com.cn/v1/base/top10Active?endDate=2021-10-22&startDate=2021-10-20

请求参数说明:

参数名称类型默认值示例值是否必须描述
startDatestring2021-10-20交易开始时间,格式:2021-10-20
endDatestring2021-10-22交易结束时间,格式:2021-10-22

接口说明:查询当日是否为交易日

地址:https://stockapi.com.cn/v1/quota/nineTurn
请求示例:

https://stockapi.com.cn/v1/base/tradeDate?tradeDate=2021-10-20

请求参数说明:

参数名称类型默认值示例值是否必须描述
tradeDatestring2021-10-10交易时间

接口说明:查询上证指数

地址:https://stockapi.com.cn/v1/index/sh
请求示例:

https://stockapi.com.cn/v1/index/sh?startDate=2021-10-20&endDate=2021-10-30

请求参数说明:

参数名称类型默认值示例值是否必须描述
startDatestring2021-10-20交易开始时间,格式:2021-10-20
endDatestring2021-10-30交易结束时间,格式:2021-10-30

接口说明:查询深圳成指

地址:https://stockapi.com.cn/v1/index/sz
请求示例:

https://stockapi.com.cn/v1/index/sz?startDate=2021-10-20&endDate=2021-10-30

请求参数说明:

参数名称类型默认值示例值是否必须描述
startDatestring2021-10-20交易开始时间,格式:2021-10-20
endDatestring2021-10-30交易结束时间,格式:2021-10-30

接口说明:查询上证50

地址:https://stockapi.com.cn/v1/index/sh50
请求示例:

https://stockapi.com.cn/v1/index/sh50?startDate=2021-10-20&endDate=2021-10-30

请求参数说明:

参数名称类型默认值示例值是否必须描述
startDatestring2021-10-20交易开始时间,格式:2021-10-20
endDatestring2021-10-30交易结束时间,格式:2021-10-30

接口说明:基金分时数据

地址:https://stockapi.com.cn/v1/fund/min
请求示例:

https://stockapi.com.cn/v1/fund/min/v1/fund/min?code=159713

请求参数说明:

参数名称类型默认值示例值是否必须描述
codestring159713基金代码,格式:159713

接口说明:行业板块个股列表

地址:https://stockapi.com.cn/v1/base/bkList?bkCode=BK1036

参数名称类型默认值示例值是否必须描述
bkCodestringBK1036行业板块代码
pageNoint1页码
pageSizeint50每页行数

请求示例:

https://stockapi.com.cn/v1/base/bkList?bkCode=BK1036

接口说明:行业板块代码

地址:https://stockapi.com.cn/v1/base/bk

请求示例:

https://stockapi.com.cn/v1/base/bk

接口说明:板块历史资金流

地址:https://stockapi.com.cn/v1/base/bkFlowHistory

参数名称类型默认值示例值是否必须描述
bkCodestringBK1036行业板块代码

请求示例:

https://stockapi.com.cn/v1/base/bkFlowHistory?bkCode=BK1036

接口说明:涨停股池

地址:https://stockapi.com.cn/v1/base/ZTPool

参数名称类型默认值示例值是否必须描述
datestring2022-09-16交易时间,格式:2022-09-16

请求示例:

https://stockapi.com.cn/v1/base/ZTPool?date=2022-09-16

接口说明:强势股池

地址:https://stockapi.com.cn/v1/base/QSPool

参数名称类型默认值示例值是否必须描述
datestring2022-09-16交易时间,格式:2022-09-16

请求示例:

https://stockapi.com.cn/v1/base/QSPool?date=2022-09-16

接口说明:次新股池

地址:https://stockapi.com.cn/v1/base/CXPool

参数名称类型默认值示例值是否必须描述
datestring2022-09-16交易时间,格式:2022-09-16

请求示例:

https://stockapi.com.cn/v1/base/CXPool?date=2022-09-08

接口说明:炸板股池

地址:https://stockapi.com.cn/v1/base/ZBPool

参数名称类型默认值示例值是否必须描述
datestring2022-09-16交易时间,格式:2022-09-16

请求示例:

https://stockapi.com.cn/v1/base/ZBPool?date=2022-09-16

接口说明:跌停股池

地址:https://stockapi.com.cn/v1/base/DTPool

参数名称类型默认值示例值是否必须描述
datestring2022-09-16交易时间,格式:2022-09-16

请求示例:

https://stockapi.com.cn/v1/base/DTPool?date=2022-09-16

这篇关于KDJ指标的算法、原理和特性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/629533

相关文章

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

Python中的filter() 函数的工作原理及应用技巧

《Python中的filter()函数的工作原理及应用技巧》Python的filter()函数用于筛选序列元素,返回迭代器,适合函数式编程,相比列表推导式,内存更优,尤其适用于大数据集,结合lamb... 目录前言一、基本概念基本语法二、使用方式1. 使用 lambda 函数2. 使用普通函数3. 使用 N

MyBatis-Plus 与 Spring Boot 集成原理实战示例

《MyBatis-Plus与SpringBoot集成原理实战示例》MyBatis-Plus通过自动配置与核心组件集成SpringBoot实现零配置,提供分页、逻辑删除等插件化功能,增强MyBa... 目录 一、MyBATis-Plus 简介 二、集成方式(Spring Boot)1. 引入依赖 三、核心机制

redis和redission分布式锁原理及区别说明

《redis和redission分布式锁原理及区别说明》文章对比了synchronized、乐观锁、Redis分布式锁及Redission锁的原理与区别,指出在集群环境下synchronized失效,... 目录Redis和redission分布式锁原理及区别1、有的同伴想到了synchronized关键字

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、

setsid 命令工作原理和使用案例介绍

《setsid命令工作原理和使用案例介绍》setsid命令在Linux中创建独立会话,使进程脱离终端运行,适用于守护进程和后台任务,通过重定向输出和确保权限,可有效管理长时间运行的进程,本文给大家介... 目录setsid 命令介绍和使用案例基本介绍基本语法主要特点命令参数使用案例1. 在后台运行命令2.

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、