Python实现KDJ指标计算:股票技术分析的利器系列(3)

这篇具有很好参考价值的文章主要介绍了Python实现KDJ指标计算:股票技术分析的利器系列(3)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


介绍

先看看官方介绍:

KDJ(随机指标)
用法
1.D指标>80 时,回档机率大;D指标<20时,反弹机率大;
2.K在20左右向上交叉D时,视为买进信号;
3.K在80左右向下交叉D时,视为卖出信号;
4.J>100 时,股价易反转下跌;J<0 时,股价易反转上涨;
5.KDJ 波动于50左右的任何信号,其作用不大。

算法解释

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
J:3*K-2*D;
  1. RSV(Raw Stochastic Value):原始随机值。RSV是根据最近N个交易日内的收盘价,计算其相对于最高价和最低价的位置比例。公式为:RSV = (CLOSE - LLV(LOW, N)) / (HHV(HIGH, N) - LLV(LOW, N)) * 100。其中LLV代表最低价的最小值,HHV代表最高价的最大值。

  2. LLV(Lowest Value):最低价的最小值。LLV函数用于计算最近N个交易日内的最低价的最小值。

  3. HHV(Highest Value):最高价的最大值。HHV函数用于计算最近N个交易日内的最高价的最大值。

  4. SMA(Simple Moving Average):简单移动平均线。SMA是一种用于平滑数据的常见方法,通过计算一段时间内数据的平均值来观察价格的长期趋势。

KDJ指标中的K、D、J分别代表:

  • K:代表快速随机值,是RSV的平滑移动平均线,常用于观察价格的短期波动情况。
  • D:代表慢速随机值,是K的平滑移动平均线,用于观察价格的中期趋势。
  • J:代表J值,是根据K和D计算得出的一个值,常用于观察价格的长期趋势和判断超买超卖情况。

在KDJ指标中,通常会设定两个参数M1和M2,分别用于计算K和D的移动平均值。

代码

rolling函数介绍

rolling 函数通常与其他函数(如 meansumstd 等)一起使用,以计算滚动统计量,例如滚动均值、滚动总和等。

以下是 rolling 函数的基本语法:

DataFrame.rolling(window, min_periods=None, center=False, win_type=None, on=None, axis=0, closed=None)
  • window: 用于计算统计量的窗口大小。
  • min_periods: 每个窗口最少需要的非空观测值数量。
  • center: 确定窗口是否居中,默认为 False
  • win_type: 窗口类型,例如 Noneboxcartriang 等,默认为 None
  • on: 在数据帧中执行滚动操作的列,默认为 None,表示对整个数据帧执行操作。
  • axis: 执行滚动操作的轴,默认为 0,表示按列执行操作。
  • closed: 确定窗口的哪一端是闭合的,默认为 None

计算LLV(最低价最小值)和HHV(最高价最大值)

# 定义函数计算LLV(最低价最小值)和HHV(最高价最大值)
def calculate_llv_high_low(high, low, n):
    return low.rolling(window=n).min(), high.rolling(window=n).max()

计算RSV

# 定义函数计算RSV
def calculate_rsv(close, llv_low, hhv_high):
    return (close - llv_low) / (hhv_high - llv_low) * 100

计算SMA(简单移动平均)

# 定义函数计算SMA(简单移动平均)
def calculate_sma(data, window):
    return data.rolling(window=window).mean()

完整代码

import pandas as pd


# 定义函数计算LLV(最低价最小值)和HHV(最高价最大值)
def calculate_llv_high_low(high, low, n):
    return low.rolling(window=n).min(), high.rolling(window=n).max()


# 定义函数计算RSV
def calculate_rsv(close, llv_low, hhv_high):
    return (close - llv_low) / (hhv_high - llv_low) * 100


# 定义函数计算SMA(简单移动平均)
def calculate_sma(data, window):
    return data.rolling(window=window).mean()


# 示例数据
data = {
    'CLOSE': 填每日收盘的数据,
    'HIGH': 填每日最高的数据,
    'LOW': 填每日最低的数据
}
df = pd.DataFrame(data)

# 设置参数
N = 9
M1 = 3
M2 = 3

# 计算LLV和HHV
df['LLV_LOW'], df['HHV_HIGH'] = calculate_llv_high_low(df['HIGH'], df['LOW'], N)

# 计算RSV
df['RSV'] = calculate_rsv(df['CLOSE'], df['LLV_LOW'], df['HHV_HIGH'])

# 计算K
df['K'] = calculate_sma(df['RSV'], M1)

# 计算D
df['D'] = calculate_sma(df['K'], M2)

# 计算J
df['J'] = 3 * df['K'] - 2 * df['D']

print(df)

计算结果

Python实现KDJ指标计算:股票技术分析的利器系列(3),Python,python,开发语言文章来源地址https://www.toymoban.com/news/detail-825684.html

到了这里,关于Python实现KDJ指标计算:股票技术分析的利器系列(3)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 风控系统指标计算/特征提取分析与实现01,Redis、Zset、模版方法

    个人博客:无奈何杨(wnhyang) 个人语雀:wnhyang 共享语雀:在线知识共享 Github:wnhyang - Overview 引用 AI 对于风控系统的介绍 风控系统是一种用于在线业务的安全管理系统,它帮助企业和平台防范潜在的欺诈、信用风险以及不合规行为。简单来说,它的核心作用就是“保安全

    2024年03月14日
    浏览(33)
  • PythonStock(37)股票系统:Python股票系统发布V2.0版本,改个名字吧,叫Python全栈股票系统2.0,可以实现数据的抓取(akshare),统计分析,数据报表展示。

    使用Python开发一个web股票项目。 【github项目地址】: https://github.com/pythonstock/stock 【知乎专栏地址】: https://zhuanlan.zhihu.com/pythonstock 【docker hub地址下载】: https://hub.docker.com/r/pythonstock/pythonstock 【相关stock资料分类】: http://blog.csdn.net/freewebsys/article/category/7076584 主要使用开发

    2023年04月08日
    浏览(33)
  • [][R语言]股票分析实战[7]:时间转换 与 股票涨幅计算

    [简介] 常用网名: 猪头三 出生日期: 1981.XX.XX QQ联系: 643439947 个人网站: 80x86汇编小站 https://www.x86asm.org 编程生涯: 2001年~至今[共22年] 职业生涯: 20年 开发语言: C/C++、80x86ASM、PHP、Perl、Objective-C、Object Pascal、C#、Python 开发工具: Visual Studio、Delphi、XCode、Eclipse、C++ Builder 技能种类

    2024年02月03日
    浏览(27)
  • 金融时间序列预测方法合集:CNN、LSTM、随机森林、ARMA预测股票价格(适用于时序问题)、相似度计算、各类评判指标绘图(数学建模科研适用)

    项目设计集合(人工智能方向):助力新人快速实战掌握技能、自主完成项目设计升级,提升自身的硬实力(不仅限NLP、知识图谱、计算机视觉等领域) :汇总有意义的项目设计集合,助力新人快速实战掌握技能,助力用户更好利用 CSDN 平台,自主完成项目设计升级,提升自

    2024年02月13日
    浏览(29)
  • Python实现四种网络模型的生成、平均度等指标的计算及度分布函数的展示

    目录 一、前言 二、建模工具库Networkx的下载安装 三、规则图 四、ER随机图 五、WS小世界网络 六、BA无标度网络 七、补充 参考文献 最近用Python实现了四种网络模型(规则图,ER随机图,WS小世界网络和BA无标度网络)的复现,具体内容为使用建模工具库Networkx实现网络模型的生

    2023年04月26日
    浏览(31)
  • 性能测试监控指标及分析调优 | 京东云技术团队

    1、CPU,如果存在大量的计算,他们会长时间不间断的占用CPU资源,导致其他资源无法争夺到CPU而响应缓慢,从而带来系统性能问题,例如频繁的FullGC,以及多线程造成的上下文频繁的切换,都会导致CPU繁忙,一般情况下CPU使用率75%比较合适。 2、内存,Java内存一般是通过jv

    2024年02月06日
    浏览(67)
  • 干货丨 用 Python 进行股票分析

    人们很容易被丰富的数据和各种免费开源工具所吸引。在研究了quandl financial library和prophet modeling library之后,我打算试着探究简单的股票数据。我花了几天的时间,前后写了1000多行Python代码,最终得出了一个完整的股票分析预测工具。虽然我没有自信用这个来投资某些个股,

    2024年02月07日
    浏览(27)
  • 用python做股票数据分析

    本文我们一起用python来对某只股票的所有历史日数据,做一个探索性的分析,看看能不能有一些有趣的发现,希望能激起你对金融数据分析的兴趣。主要用到numpy,pandas模块的一些基本用法。本文的所有数据,包含所有A股的日数据,在文末有下载。 我们先导入需要的模块,然

    2024年02月08日
    浏览(27)
  • 【计算机毕设选题】基于大数据的股票量化分析与股价预测系统

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年01月20日
    浏览(44)
  • chatgpt赋能python:用Python做股票分析

    在当今的股市中,数据分析和预测已经变得十分重要。Python作为最流行的编程语言之一,不仅易于学习,还有非常强大的数据处理和分析能力。在本文中,我们将探讨如何用Python进行股票分析。 要进行股票分析,我们首先需要收集数据。有许多金融网站可提供免费的股票数据

    2024年02月07日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包