TA-Lib学习研究笔记(八)——Momentum Indicators 上

news2025/1/10 11:16:17

TA-Lib学习研究笔记(八)——Momentum Indicators 上

Momentum Indicators 动量指标,是最重要的股票分析指标,能够通过数据量化分析价格、成交量,预测股票走势和强度,大部分指标都在股票软件中提供。

1. ADX-Average Directional Movement Index

函数名:ADX
名称:平均趋向指数
简介:使用ADX指标,指标判断盘整、振荡和单边趋势。
特点:

  • ADX无法告诉你趋势的发展方向。
  • 如果趋势存在,ADX可以衡量趋势的强度。不论上升趋势或下降趋势,ADX看起来都一样。
  • ADX的读数越大,趋势越明显。衡量趋势强度时,需要比较几天的ADX 读数,观察ADX究竟是上升或下降。ADX读数上升,代表趋势转强;如果ADX读数下降,意味着趋势转弱。
  • 当ADX曲线向上攀升,趋势越来越强,应该会持续发展。如果ADX曲线下滑,代表趋势开始转弱,反转的可能性增加。
  • 单就ADX本身来说,由于指标落后价格走势,所以算不上是很好的指标,不适合单就ADX进行操作。可是,如果与其他指标配合运用,ADX可以确认市场是否存在趋势,并衡量趋势的强度。

指标应用:

  • +DI与–DI表示多空相反的二个动向,当据此绘出的两条曲线彼此纠结相缠时,代表上涨力道与下跌力道相当,多空势均力敌。当 +DI与–DI彼此穿越时,由下往上的一方其力道开始压过由上往下的另一方,此时出现买卖讯号。
  • ADX可作为趋势行情的判断依据,当行情明显朝多空任一方向进行时,ADX数值都会显著上升,趋势走强。若行情呈现盘整格局时,ADX会低于 +DI与–DI二条线。若ADX数值低于20,则不论DI表现如何,均显示市场没有明显趋势。
  • ADX持续偏高时,代表“超买”(Overbought)或“超卖”(Oversold)的现象,行情反转的机会将增加,此时则不适宜顺势操作。当ADX数值从上升趋势转为下跌时,则代表行情即将反转;若ADX数值由下跌趋势转为上升时,行情将止跌回升。
  • 总言之,DMI指标包含4条线:+DI、-DI、ADX和ADXR。+DI代表买盘的强度、-DI代表卖盘的强度;ADX代表趋势的强度、ADXR则为ADX的移动平均。
    语法:

real = ADX(high, low, close, timeperiod=14)

df['ADX'] = tlb.ADX(df['high'],df['low'],df['close'], timeperiod=14)
df['PLUS_DI'] = tlb.PLUS_DI(df['high'],df['low'],df['close'], timeperiod=14)
df['MINUS_DI'] = tlb.MINUS_DI(df['high'],df['low'],df['close'], timeperiod=14)

# 做图
# ,'close'
df[['ADX','PLUS_DI','MINUS_DI','close']].plot(figsize=(6, 4),title='ADX',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

2. ADXR-Average Directional Movement Index Rating

函数名:ADXR
名称:平均趋向指数的趋向指数
简介:使用ADXR指标,指标判断ADX趋势。
语法:

real = ADXR(high, low, close, timeperiod=14)

df['ADX'] = tlb.ADX(df['high'],df['low'],df['close'], timeperiod=14)
df['ADXR'] = tlb.ADXR(df['high'],df['low'],df['close'], timeperiod=14)
#df['PLUS_DI'] = tlb.PLUS_DI(df['high'],df['low'],df['close'], timeperiod=14)
#df['MINUS_DI'] = tlb.MINUS_DI(df['high'],df['low'],df['close'], timeperiod=14)

# 做图
#df[['ADX','ADXR','PLUS_DI','MINUS_DI','close']].plot(figsize=(6, 4),title='ADXR',grid=True)
df[['ADX','ADXR','close']].plot(figsize=(6, 4),title='ADXR',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

3. APO-Absolute Price Oscillator

函数名:APO
名称:绝对价格振荡器
简介:该函数接收几个参数并返回一个表示振荡器的实数序列。
参数说明:

  • close: 这是表示收盘价的序列。通常,这是一个 Pandas Series 或 NumPy 数组,其中包含了金融时间序列的收盘价。
  • fastperiod: 这是一个整数,表示短期EMA(指数移动平均线)的时间周期。在这个例子中,它被设置为12。
  • slowperiod: 这是一个整数,表示长期EMA的时间周期。在这个例子中,它被设置为26。
  • matype: 这是一个整数,用于指定EMA的计算类型。TA-Lib支持多种类型的移动平均线计算,matype 参数允许你选择其中的一种。在这个例子中,matype 被设置为0,表示使用简单的EMA计算。

语法:

real = APO(close, fastperiod=12, slowperiod=26, matype=0)


df['APO'] = tlb.APO(df['close'], fastperiod=12, slowperiod=26, matype=0)

# 做图
df[['APO','close']].plot(subplots=True,figsize=(6, 4),title='APO',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

4. AROON-Aroon

函数名:AROON
名称:阿隆指标
简介:该指标是通过计算自价格达到近期最高值和最低值以来所经过的期间数,阿隆指标帮助你预测价格趋势到趋势区域(或者反过来,从趋势区域到趋势)的变化。
指数应用:
1、极值0和100
当UP线达到100时,市场处于强势;如果维持在70100之间,表示一个上升趋势。同样,如果Down线达到0,表示处于弱势,如果维持在030之间,表示处于下跌趋势。如果两条线同处于极值水平,则表明一个更强的趋势。
2、平行运动
如果两条线平行运动时,表明市场趋势被打破。可以预期该状况将持续下去,只到由极值水平或交叉穿行西安市出方向性运动为止。
3、交叉穿行
当下行线上穿上行线时,表明潜在弱势,预期价格开始趋于下跌。反之,表明潜在强势,预期价格趋于走高。
语法:

aroondown, aroonup = AROON(high, low, timeperiod=14)

df['aroondown'],df['aroonup'] = tlb.AROON(df['high'],df['low'], timeperiod=14)

# 做图
df[['aroondown','aroonup','close']].plot(figsize=(6, 4),title='AROON',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

5. AROONOSC-Aroon Oscillator

函数名:AROONOSC
名称:阿隆振荡
语法:

real = AROONOSC(high, low, timeperiod=14)

df['AROONOSC'] = tlb.AROONOSC(df['high'],df['low'], timeperiod=14)

# 做图
df[['AROONOSC','close']].plot(subplots=True,figsize=(6, 4),title='AROONOSC',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

6. BOP-Balance Of Power

函数名:BOP
名称:均势指标
简介:是一种投资策略,其核心思想是在选择投资标的时,要关注市场上的“力量平衡”,即买方力量和卖方力量之间的关系。在股市中,买方力量和卖方力量的对比将直接影响股价的走势。当买方力量大于卖方力量时,股价将上涨;相反,当卖方力量大于买方力量时,股价将下跌。
语法:

real = BOP(open, high, low, close)

df['BOP'] = tlb.BOP(df['open'],df['high'],df['low'],df['close'])

# 做图
df[['BOP','close']].plot(subplots=True,figsize=(6, 4),title='BOP',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

7. CCI-Commodity Channel Index

函数名:CCI
名称:顺势指标
简介:CCI指标专门测量股价是否已超出常态分布范围
指标应用:

  • 1.当CCI指标曲线在+100线~-100线的常态区间里运行时,CCI指标参考意义不大,可以用KDJ等其它技术指标进行研判。
  • 2.当CCI指标曲线从上向下突破+100线而重新进入常态区间时,表明市场价格的上涨阶段可能结束,将进入一个比较长时间的震荡整理阶段,应及时平多做空。
  • 3.当CCI指标曲线从上向下突破-100线而进入另一个非常态区间(超卖区)时,表明市场价格的弱势状态已经形成,将进入一个比较长的寻底过程,可以持有空单等待更高利润。如果CCI指标曲线在超卖区运行了相当长的一段时间后开始掉头向上,表明价格的短期底部初步探明,可以少量建仓。CCI指标曲线在超卖区运行的时间越长,确认短期的底部的准确度越高。
  • 4.CCI指标曲线从下向上突破-100线而重新进入常态区间时,表明市场价格的探底阶段可能结束,有可能进入一个盘整阶段,可以逢低少量做多。
  • 5.CCI指标曲线从下向上突破+100线而进入非常态区间(超买区)时,表明市场价格已经脱离常态而进入强势状态,如果伴随较大的市场交投,应及时介入成功率将很大。
  • 6.CCI指标曲线从下向上突破+100线而进入非常态区间(超买区)后,只要CCI指标曲线一直朝上运行,表明价格依然保持强势可以继续持有待涨。但是,如果在远离+100线的地方开始掉头向下时,则表明市场价格的强势状态将可能难以维持,涨势可能转弱,应考虑卖出。如果前期的短期涨幅过高同时价格回落时交投活跃,则应该果断逢高卖出或做空。
  • CCI主要是在超买和超卖区域发生作用,对急涨急跌的行情检测性相对准确。非常适用于股票、外汇、贵金属等市场的短期操作。
    语法:

real = CCI(high, low, close, timeperiod=14)

df['CCI'] = tlb.CCI(df['high'],df['low'],df['close'], timeperiod=14)

# 做图
df[['CCI','close']].plot(subplots=True,figsize=(6, 4),title='CCI',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

8. CMO-Chande Momentum Oscillator

函数名:CMO
名称:钱德动量摆动指标
简介:与其他动量指标摆动指标如相对强弱指标(RSI)和随机指标(KDJ)不同,钱德动量指标在计算公式的分子中采用上涨日和下跌日的数据。
计算公式:CMO=(Su-Sd)*100/(Su+Sd)
其中:Su是今日收盘价与昨日收盘价(上涨日)差值加总。若当日下跌,则增加值为0;Sd是今日收盘价与做日收盘价(下跌日)差值的绝对值加总。若当日上涨,则增加值为0;

指标应用:

  • 本指标类似RSI指标。
  • 当本指标下穿-50水平时是买入信号,上穿+50水平是卖出信号。
  • 钱德动量摆动指标的取值介于-100和100之间。
  • 本指标也能给出良好的背离信号。
  • 当股票价格创出新低而本指标未能创出新低时,出现牛市背离;
  • 当股票价格创出新高而本指标未能创出新高时,当出现熊市背离时。
  • 可以用移动均值对该指标进行平滑。

语法:

real = CMO(close, timeperiod=14)

df['CMO'] = tlb.CMO(df['close'], timeperiod=14)

# 做图
df[['CMO','close']].plot(subplots=True,figsize=(6, 4),title='CMO',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

9. DX- Directional Movement Index

函数名:DX
名称:动向指标或趋向指标
简介:通过分析股票价格在涨跌过程中买卖双方力量均衡点的变化情况,即多空双方的力量的变化受价格波动的影响而发生由均衡到失衡的循环过程,从而提供对趋势判断依据的一种技术指标。

语法:

real = DX(high, low, close, timeperiod=14)

df['DX'] = tlb.DX(df['high'],df['low'],df['close'], timeperiod=14)

# 做图
df[['DX','close']].plot(subplots=True,figsize=(6, 4),title='DX',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

10. MACD-Moving Average Convergence/Divergence

函数名:MACD
名称:平滑异同移动平均线
简介:利用收盘价的短期(常用为12日)指数移动平均线与长期(常用为26日)指数移动平均线之间的聚合与分离状况,对买进、卖出时机作出研判的技术指标。
参数说明:
close: 这是表示收盘价的序列。通常,这是一个 Pandas Series 或 NumPy 数组,其中包含了金融时间序列的收盘价。
fastperiod: 这是短期 EMA(指数移动平均线)的时间周期。在示例中,它被设置为 12。
slowperiod: 这是长期 EMA 的时间周期。在示例中,它被设置为 26。
signalperiod: 这是 MACD 线(信号线)的时间周期。在示例中,它被设置为 9。

输出参数说明:
输出三个值:dif(差离值)、dem(离散移动平均线)和 histogram(直方图)。这些值分别表示了 MACD 指标的计算结果,其中 dif 是两个 EMA 的差离值,dem 是 dif 的离散移动平均线,而 histogram 是 dif 和 dem 的差离值。

通过观察这些值的变化趋势,您可以判断股票的趋势以及潜在的买卖信号。一般来说,当 DIF 线向上穿过 DEMA 线时,被视为买入信号;而当 DIF 线向下穿过 DEMA 线时,被视为卖出信号。直方图的值表示了 MACD 指标相对于零线的偏离程度,可以辅助判断趋势的强度和可能的转折点。

语法:

dif, dem, histogram = MACD(close, fastperiod=12, slowperiod=26, signalperiod=9)

df['dif'],df['dem'],df['histogram'] = tlb.MACD(df['close'], fastperiod=12, slowperiod=26, signalperiod=9)

# 做图
df[['dif','dem','histogram','close']].plot(subplots=True,figsize=(6, 4),title='MACD',grid=True)
plt.legend() # 设置图示
plt.show()

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1275139.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python函数专题(下)侯小啾python领航班系列(十三)】

Python函数专题(下)侯小啾python领航班系列(十三)】 大家好,我是博主侯小啾, 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

不会代码(零基础)学语音开发(语音开发板)

语音开发板板载资源介绍 通过上图可以看到VDB-150S语音开发板应该是集目前上市的所有语音开发板中板载资源最为丰富的一款开发板。板载的主要资源有: 双色LED状态指示灯;两个测试时使用的按键开关;红外寻迹/接近传感器;固件烧录器…

初识Linux:权限

目录 提示:以下指令均在Xshell 7 中进行 Linux 的权限 内核: 查看操作系统版本 查看cpu信息 查看内存信息 外部程序: 用户: 普通用户变为超级用户: su 和 su-的区别: root用户变成普通用户&#…

管理员配置Jupterhub

在Ubuntu上演示如何部署R语言环境,包括 posit的已经编译了一些R的安装 系统已经装了R,我额外编译的R如何让大家都能用到 如何配置RStudio jupyterhub的配置和使用 管理员如何配置jupyterhub 用户如何配置自己的jupyter环境 Ubuntu上的R部署 这一次…

OSI七层模型与TCP/IP四层模型

一、OSI七层模型简述 OSI 模型的七层是什么?在 OSI 模型中如何进行通信?OSI 模型有哪些替代方案? TCP/IP 模型关于专有协议和模型的说明 二、七层模型详解(DNS、CDN、OSI) 状态码DNS nslookup命令 CDN whois命令 …

java商城系统选型技巧

近期有很多网友在知乎、百度上咨询如何选择java商城系统,本文我们介绍目前有哪些java商城系统,如何选择商城系统,希望有所帮助。 我们之前做过调研,目前java语言开发的商城系统主要有shop、javashop、ejavashop、远丰、mall4j、li…

【【FPGA 之 MicroBlaze定时器中断实验】】

FPGA 之 MicroBlaze定时器中断实验 AXI Timer 具有 AXI 总线接口,能够产生不同时间周期和占空比的时钟、脉冲产生电路、产生与时间有关的中断和用于电机控制的脉宽调制信号。 AXI Timer IP 核提供了一个 AXI4 Lite 接口用于与处理器通信;它内部有两个可…

美国站卖家请在今年12/28前更新W-8税务信息

美国税务信息采集指南 根据美国国家税务局的规定,非美国纳税人需要向亚马逊提供W-8BEN表格,以豁免美国报税要求。美国国家税务局W-8BEN表格将在卖家向亚马逊提供此表格三年后过期。收到提示时,海外卖家需要重新接受税务信息采集以提交新表格。…

探索APP自动化测试工具的重要作用是什么?

随着移动应用市场的蓬勃发展,保障应用程序的质量和性能成为开发团队至关重要的任务。在这个背景下,APP自动化测试工具崭露头角,成为提高开发效率、减少错误率的关键工具。本文将探讨APP自动化测试工具的用途,以及它们在移动应用开…

Qt开发 之 安装程序错误--安装进程(qt.tool.perl)的解决办法

文章目录 1、问题描述2、问题原因3、解决方案3.1、不关闭错误弹出窗口3.2、手动安装Perl3.3、安装Perl完成后,点击“ignore”继续安装 1、问题描述 Win11下,安装qt5.12.12时遇到“安装进程(qt.tools.perl)运行期间出现错误” 问题描述: Err…

C++-详解智能指针

目录 ​编辑 一.什么是智能指针 1.RAII 2.智能智能指针 二.为什么需要智能指针 1.内存泄漏 a. 什么是内存泄漏,内存泄漏的危害 b.内存泄漏分类 c.如何检测内存泄漏 d.如何避免内存泄漏 总结一下: 2.为什么需要智能指针以及智能指针的原理 三.智能指针的使用 1.C…

程序员养生之道:延寿不忘初心——延寿必备

文章目录 每日一句正能量前言如何养生饮食篇运动篇休息篇后记 每日一句正能量 现代社会已不是大鱼吃小鱼的年代,而是快鱼吃慢鱼的年代。 前言 在IT行业中,程序员是一个重要的职业群体。由于长时间的繁重编程工作,程序员们常常忽略了身体健康…

(Python) 字典dict的使用

a dict(namekl_pen, kl_target0.01, lam0.5) print(类型:, type(a)) print(数值:, a) print(name键的值:, a[name]) print(键:, a.keys()) print(值:, a.values())

知虾平台丨优化Shopee店铺运营,提升销售利润——了解知虾平台

在如今竞争激烈的电商市场中,Shopee作为一家快速发展的平台,吸引了众多卖家加入。然而,要在Shopee上取得成功并实现可观的销售利润,并不是一件容易的事情。为了帮助卖家更好地了解市场趋势、优化商品关键词、监控竞争对手等&#…

Java中的异常你了解多少?

目录 一.认识异常二.异常分类三.异常的分类1.编译时异常2.运行时异常 四.异常的处理1.LYBL:事前防御型2.EAFP:事后认错型 五.异常的抛出Throw注意事项 六.异常的捕获1.异常的捕获2.异常声明throws3.try-catch捕获并处理 七.自定义异常 一.认识异常 在Jav…

MySQL实现(免密登录)

简介: MySQL免密登录是一种允许用户在没有输入密码的情况下直接登录到MySQL服务器的配置。这通常是通过在登录时跳过密码验证来实现的。 1、修改MySQL的配置文件 使用vi /etc/my.cnf,添加到【mysqld】后面 skip-grant-tables #配置项告诉mysql跳过权限验证&#…

避免客户开发信被限制的方法与策略

开发信是外贸或者出海企业常用的一种开发客户的方式。相较于其他的获客方式,开发信能够更加精准地投放到客户中,并且只需承担较低的成本。但是,由于一些限制管制要求,外贸人员可能会遇到开发新被限制的情况。今天,小编…

元宇宙时代CSGO游戏装备市场如何迎合年轻人的需求?

元宇宙时代游戏装备市场如何迎合年轻人的需求?游戏装备市场的主要消费者是年轻人,他们对于游戏装备有着自己的需求和偏好。 为了迎合年轻人的需求,游戏装备需要具备以下几个特点: 1、个性化。年轻人喜欢表达自己的个性和风格&am…

Ubuntu18.04 Udacity project_9_PID_control 如何运行

工程源码和仿真器下载: 源码 仿真器 --- Ubuntu就下载 term2_sim_linux.zip 这个压缩文件即可 紧接着给方框中的文件赋可执行权限 打开project_9_PID_control文件夹 执行如下脚本,安装必要的库,比如websocket(程序生成的可执行…

Python秘籍:圆周率不只是3.14,更多玩法让你大开眼界!

更多资料获取 📚 个人网站:ipengtao.com 在数学领域,圆周率(π)是一个充满神秘和无限循环的数字,其奇妙性质一直以来都令人着迷。而在Python这个多才多艺的编程语言中,我们有机会以更深入的方式…