TA-Lib学习研究笔记(二)——Overlap Studies下

TA-Lib学习研究笔记(二)——Overlap Studies下

(11)SAR - Parabolic SAR 抛物线指标

函数名:SAR
名称: 抛物线指标
简介:抛物线转向也称停损点转向,是利用抛物线方式,随时调整停损点位置以观察买卖点。由于停损点(又称转向点SAR)以弧形的方式移动,故称之为抛物线转向指标 。

语法:

real = SAR(high, low, acceleration=0, maximum=0)

参数说明:

  • high:最高价序列,表示每个时间段的最高价格。
  • low:最低价序列,表示每个时间段的最低价格。
  • acceleration:加速度因子(可选参数),用于控制SAR靠近或远离价格的速度。默认值为0。
  • maximum:最大加速度(可选参数),限制SAR的最大步长。默认值为0。
df['SAR'] = tlb.SAR(df['high'], df['low'], acceleration=0, maximum=0)
# 做图
df[['high','low','SAR']].plot(title='抛物线指标')
plt.grid() #启用网格
plt.legend(['high','low','SAR']) # 设置图示
plt.show()

在这里插入图片描述
调整参数:acceleration=1, maximum=1
效果如下:

df['SAR'] = tlb.SAR(df['high'], df['low'], acceleration=1, maximum=1)
# 做图
df[['high','low','SAR']].plot(title='抛物线指标')
plt.grid() #启用网格
plt.legend(['high','low','SAR']) # 设置图示
plt.show()

在这里插入图片描述

(12)SAREXT - Parabolic SAR - Extended

计算扩展的抛物线停损反转(Extended Parabolic Stop and Reverse,SAR)指标的函数。该函数提供了更多的参数,以便更精确地调整SAR的计算方式。
参数如下:

  • high:最高价序列,表示每个时间段的最高价格。
  • low:最低价序列,表示每个时间段的最低价格。
  • startvalue:起始值(可选参数),用于指定SAR的初始位置。默认值为0。
  • offsetonreverse:反转偏移量(可选参数),在趋势反转时添加到SAR的值上的偏移量。默认值为0。
  • accelerationinitlong:多头初始加速度(可选参数),设置多头趋势开始时的初始加速度。默认值为0。
  • accelerationlong:多头加速度(可选参数),设置多头趋势中的加速度。默认值为0。
  • accelerationmaxlong:多头最大加速度(可选参数),限制多头趋势中的最大加速度。默认值为0。
  • accelerationinitshort:空头初始加速度(可选参数),设置空头趋势开始时的初始加速度。默认值为0。
  • accelerationshort:空头加速度(可选参数),设置空头趋势中的加速度。默认值为0。
  • accelerationmaxshort:空头最大加速度(可选参数),限制空头趋势中的最大加速度。默认值为0。
df['SAREXT'] = tlb.SAREXT(df['high'], df['low'], startvalue=0, offsetonreverse=0, accelerationinitlong=0, accelerationlong=0, accelerationmaxlong=0, accelerationinitshort=0, accelerationshort=0, accelerationmaxshort=0)
# 做图
df[['high','low','SAREXT']].plot(title='扩展抛物线指标')
plt.grid() #启用网格
plt.legend(['high','low','SAREXT']) # 设置图示
plt.show()

在这里插入图片描述
测试一下,参数都赋值1的效果。

df['SAREXT'] = tlb.SAREXT(df['high'], df['low'], startvalue=1, offsetonreverse=1, accelerationinitlong=1, accelerationlong=1,
            accelerationmaxlong=1, accelerationinitshort=1, accelerationshort=1, accelerationmaxshort=1)
# 做图
df[['high','low','SAREXT']].plot(title='扩展抛物线指标')
plt.grid() #启用网格
plt.legend(['high','low','SAREXT']) # 设置图示
plt.show()

在这里插入图片描述

(13)SMA

Simple Moving Average 简单移动平均线
函数名:SMA
名称: 简单移动平均线
简介:移动平均线,Moving Average,简称MA,原本的意思是移动平均,将其制作成线形,所以一般称之为移动平均线,简称均线。它是将某一段时间的收盘价之和除以该周期。 比如日线MA5指5天内的收盘价除以5 。
语法:

real = SMA(close, timeperiod=30)

df['SMA5'] = tlb.SMA(df['close'], timeperiod=5)
df['SMA10'] = tlb.SMA(df['close'], timeperiod=10)
df['SMA30'] = tlb.SMA(df['close'], timeperiod=30)
# 做图
df[['close','SMA5','SMA10','SMA30']].plot(title='简单移动平均线')
plt.grid() #启用网格
plt.legend(['close','SMA5','SMA10','SMA30']) # 设置图示
plt.show()

在这里插入图片描述

(14)T3

Triple Exponential Moving Average (T3) 三重指数移动平均线
函数名:T3
名称:三重指数移动平均线
简介:TRIX长线操作时采用本指标的讯号,长时间按照本指标讯号交易,获利百分比大于损失百分比,利润相当可观。 比如日线MA5指5天内的收盘价除以5 。
参数说明:

  • close:收盘价序列。
  • timeperiod:时间周期(例如5表示5天)。
  • vfactor:可变权重因子,通常设置为0。
df['T3-5'] = tlb.T3(df['close'], timeperiod=5, vfactor=0)
df['T3-10'] = tlb.T3(df['close'], timeperiod=10, vfactor=0)

# 做图
df[['close','T3-5','T3-10']].plot(title='三重指数移动平均线')
plt.grid() #启用网格
plt.legend(['close','T3-5','T3-10']) # 设置图示
plt.show()

在这里插入图片描述

15.TEMA

Triple Exponential Moving Average
名称:三重指数移动平均线
TA-Lib 中并未明确给出定义或解释,无法直接与 TEMA 进行比较。从名称上看它可能是一种基于不同算法的三重移动平均线。TEMA 和 T3 可能在计算方法和用途上存在差异,具体区别估计只能看源代码。

只能通过测试对比效果:

df['TEMA-5'] = tlb.TEMA(df['close'], timeperiod=5)
df['TEMA-10'] = tlb.TEMA(df['close'], timeperiod=10)

# 做图
df[['close','TEMA-5','TEMA-10']].plot(title='三重指数移动平均线')
plt.grid() #启用网格
plt.legend(['close','TEMA-5','TEMA-10']) # 设置图示
plt.show()

在这里插入图片描述
通过图示可以看出TEMA在周期5 、10 天的参数,TEMA比T3 与 close的拟合度更好。

16.TRIMA

Triangular Moving Average(三角形移动平均线)。TRIMA 是一种加权移动平均线,它使用类似于三角形的方式对价格数据进行加权平均。TRIMA 的计算方式相对于传统的简单移动平均线(SMA)或指数移动平均线(EMA)而言,考虑了更大的时间周期权重,从而提供更为平滑的趋势指示。

df['TRIMA5'] = tlb.TRIMA(df['close'], timeperiod=5)
df['TRIMA10'] = tlb.TRIMA(df['close'], timeperiod=10)

# 做图
df[['close','TRIMA5','TRIMA10']].plot(title='三角形移动平均线')
plt.grid() #启用网格
plt.legend(['close','TRIMA5','TRIMA10']) # 设置图示
plt.show()

在这里插入图片描述

(17)WMA

函数名:WMA Weighted Moving Average 移动加权平均
名称:加权移动平均线
简介:移动加权平均法是指以每次进货的成本加上原有库存存货的成本,除以每次进货数量与原有库存存货的数量之和,据以计算加权平均单位成本,以此为基础计算当月发出存货的成本和期末存货的成本的一种方法。

语法:

real = WMA(close, timeperiod=30)

df['WMA15'] = tlb.WMA(df['close'], timeperiod=15)
df['WMA30'] = tlb.WMA(df['close'], timeperiod=30)

# 做图
df[['close','WMA15','WMA30']].plot(title='加权移动平均线')
plt.grid() #启用网格
plt.legend(['close','WMA15','WMA30']) # 设置图示
plt.show()

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

机器学习-回归问题(Regression)

前言 与KNN分类任务预测的输出为离散型不同. 在机器学习中,回归任务是用于预测连续数值型变量的任务。回归任务在很多领域都有着广泛的应用. 简单的线性回归 在一个回归问题中,很显然模型选择和好坏会直接关系到将来预测结果的接近程度.即寻找到一条直…

苹果输入法怎么换行?3个换行技巧,速速掌握!

在日常打字的时候,我们经常会遇到需要换行的情况。比如,在聊天、写作、编辑文档等场景下,当一行文字输入完成后,我们通常需要将光标移动到下一行再继续输入文字。那么这时候就需要我们进行换行操作。 然而,很多用户对…

Web安全漏洞分析-XSS(上)

随着互联网的迅猛发展,Web应用的普及程度也愈发广泛。然而,随之而来的是各种安全威胁的不断涌现,其中最为常见而危险的之一就是跨站脚本攻击(Cross-Site Scripting,简称XSS)。XSS攻击一直以来都是Web安全领…

HMM(Hidden Markov Model)详解——语音信号处理学习(三)(选修一)

参考文献: Speech Recognition (Option) - HMM哔哩哔哩bilibili 2020 年 3月 新番 李宏毅 人类语言处理 独家笔记 HMM - 6 - 知乎 (zhihu.com) 隐马尔可夫(HMM)的解码问题维特比算法 - 知乎 (zhihu.com) 本次省略所有引用论文 目录 一、介绍 二、建模单…

MATLAB中imbothat函数用法

目录 语法 说明 示例 使用底帽和顶帽滤波增强对比度 imbothat函数的功能是对图像进行底帽滤波。 语法 J imbothat(I,SE) J imbothat(I,nhood) 说明 J imbothat(I,SE) 使用结构元素 SE 对灰度或二值图像 I 执行形态学底帽滤波。底帽滤波计算图像的形态学闭运算&#…

从零开始,轻松打造个人化Chrome浏览器插件

说在前面 在我日常开发以及娱乐生活中,浏览器是我使用频率较高的一个应用,当我大学拥有第一部电脑开始,之后不论电脑换成什么,以及使用的是什么系统,我的首选浏览器都是Chrome,不仅仅是因为其速度快&#x…

Redis中的缓存穿透、雪崩、击穿(详细)

目录 一、概念 1. 缓存穿透(Cache Penetration) 解决方案: 2. 缓存雪崩(Cache Avalanche) 解决方案: 3. 缓存击穿(Cache Breakdown) 解决方案: 二、三者出现的根本原…

dbeaver连接amabri-hbase

目录 尝试过程 解决之道 总结 尝试过程 注意此章节为记录试错过程,无需跟随操作,仅作试错记录。真正操作方法请看“解决之道”章节 环境ambari安装的hbase2.1.6 使用apche phoenix默认驱动配置 备注:Apache Phoenix 是一个开源的、基于…

Amazon CodeWhisperer 使用体验

文章作者:STRIVE Amazon CodeWhisperer 是最新的代码生成工具,支持多种编程语言,如 java,js,Python 等,能减少开发人员手敲代码时间,提升工作效率。PS:本人是一名 CodeWhisperer 业余爱好者 亚马逊云科技开发者社区为开…

文件中找TopK问题

目录 1.解题思路2.创建一个文件并在文件中写入数据3.为什么要建立小堆而不建立大堆?4.如何在现有的数据中建立适合的大堆?5.代码实现 1.解题思路 TopK问题即是在众多数据中找出前K大的值,则可以根据堆的性质来实现,但在使用堆之前…

R语言gWQS包在加权分位数和回归模型的应用

在流行病学研究中,相较于单一因素的暴露,多因素同时暴露的情况更为常见。传统模型在评价多因素联合暴露时存在数据维度高、多重共线性等问题. WQS 回归模型的基本原理是通过分位数间距及加权的方法,将多种研究因素的效应综合成为一个指数&…

华为云cce负载配置时间同步

华为云cce将负载配置好之后,发现里面的时间与真实时间不同步,差了12小时,怎么办? 这时候就需要配置时间同步了。 华为云cce里面通过配置数据存储的路径来解决这个问题的,配置后,需要重启负载。 新建负载…

python实验3 石头剪刀布游戏

实验3:石头剪刀布游戏 一、实验目的二、知识要点图三、实验1. 石头剪刀布2. 实现大侠个人信息 一、实验目的 了解3类基本组合数据类型。理解列表概念并掌握Python中列表的使用。理解字典概念并掌握Python中字典的使用。运用jieba库进行中文分词并进行文本词频统计。…

JSON.stringify方法详解 后端接受JSON数据格式

1、方法定义:JSON.stringify(value, replacer, space) 参数说明: value:js对象 replacer:替换对象,可以是一个方法、对象或数组,将value按照替换规则展示。 space:填充参数,可以是数…

Protocol handler start failed

背景 上一次启动项目还好好的,关闭项目重新打开时,报错了! 报错提示 英文:Protocol handler start failed 翻译:协议处理程序启动失败 原因 端口被其他程用了,导致端口冲突。 解决方案 打开任务管理…

深入理解Java中的String、StringBuilder和StringBuffer(每天一个技术点,第一天)

大家好,我是你们的博主每天一个技术点。今天,我们将探讨Java中的一个重要主题:String、StringBuilder和StringBuffer。这些类在Java编程中无处不在,但它们之间的区别和用法可能并不是所有人都清楚。所以,让我们深入了解…

10分钟的时间,带你彻底搞懂JavaScript数据类型转换

前言 📫 大家好,我是南木元元,热衷分享有趣实用的文章,希望大家多多支持,一起进步! 🍅 个人主页:南木元元 目录 JS数据类型 3种转换类型 ToBoolean ToString ToNumber 对象转原…

Flutter加固原理及加密处理

​ 引言 为了保护Flutter应用免受潜在的漏洞和攻击威胁,加固是必不可少的措施之一。Flutter加固原理主要包括代码混淆、数据加密、安全存储、反调试与反分析、动态加载和安全通信等多个方面。通过综合运用这些措施,可以提高Flutter应用的安全性&#xf…

【UE】热成像效果

效果 步骤 1. 新建一个空白项目,勾选“光线追踪”选项 2. 添加一个第一人称游戏内容包到项目 3. 打开第一人称角色蓝图“BP_FirstPersonCharacter”,添加一个后期处理组件 在事件图表中设置通过按键N来切换不同的后期处理效果 将后期处理设置引脚提升为…

golang—kafka架构原理快速入门以及自测环境搭建(docker单节点部署)

kafka Apache Kafka 是一个分布式的流处理平台。它具有以下特点: 支持消息的发布和订阅,类似于 RabbtMQ、ActiveMQ 等消息队列支持数据实时处理能保证消息的可靠性投递支持消息的持久化存储,并通过多副本分布式的存储方案来保证消息的容错高…