Talib技术因子详解(一)
talib安装方式:pip install Ta-lib
Tushare数据获取请参考:金融量化分析基础环境搭建
数据获取代码
import tushare as ts
ts.set_token('Tushare的token')
pro = ts.pro_api()#使用tushare旧版接口获取数据
def get_data(code, start, end):df = pro.daily(ts_code=code, start_date=start, end_date=end)df.index = pd.to_datetime(df.trade_date)df=df[['open', 'high', 'low', 'close', 'pre_close', 'change', 'pct_chg', 'vol', 'amount']]df = df.rename(columns={"vol": "volume"})df = df.iloc[::-1]return df
1、布林线 (买卖指标),调用方式为:
upper, middle, lower = talib.BBANDS(close, timeperiod=20, nbdevup=2, nbdevdn=2, matype=0)
根据历史数据画出一个通道,upper为上限,lower为下限,middle为平均位置。调用参数:
(1)close:收盘价。
(2)timeperiod:计算的周期,通常选择20天。
(3) nbdevup:上限价格相对于周期内标准偏差的倍数,取值越大,则上限越大,通道越宽。
(4)nbdevdn:下限价格相对于周期内标准偏差的倍数,取值越大,则下限越大,通道越宽。
(5)matype:平均值计算类型,0代表简单一定平均,还可以有加权平均等方式。
2、双指数平均线DEA,调用方式为:
output = talib.DEMA(close, timeperiod)
双指数平均线大幅度的改善了传统平均线的延迟效应,可以较早的显示出价格反转的可能性,这个指标不仅只是当投资人在使用葛兰碧移动平均线八大法则时,能够更快的获知价格突破或跌破的反转点,同时,将这个双指数用在MACD理论时,可用以替代传统的单指数EMA线上,而获得更早的买卖进出时点的讯号。
3、指数平均线,EMA,平均线的一种,调用方式为:
output = talib.DEMA(close, timeperiod)
4、HT_TRENDLINE希尔伯特瞬时变换,调用方式为:
output = talib.HT_TRENDLINE(close)
趋向类指标,其构造原理是仍然对价格收盘价进行算术平均,并根据计算结果来进行分析,用于判断价格未来走势的变动趋势。
5、KAMA 卡芙曼自适应移动平均线,调用方式为:
output = talib.KAMA(close, timeperiod)
6、MA 移动平均线,调用方式如下:
output = talib.MA(close_price_arr, 14)
7、MAMA MESA自适应移动平均线,调用方式如下:
8、MAVP 变周期移动平均线, 调用方式:
output = talib.MAVP(close, periods, minperiod=2, maxperiod=30, matype=0)
periods的维度需与close一致,也就是为每个价格设置不同的平均线周期。
9、MIDPOINT 阶段中点价格 ,调用方式如下:
output = talib.MIDPOINT(close, timeperiod)
10、MIDPRICE 阶段中点价格 ,调用方式如下:
output = talib.MIDPRICE(high, low, timeperiod)
全部代码
# -*- coding: utf-8 -*-
"""
Created on Wed Jul 7 22:45:25 2021@author: Administrator
"""import numpy as np
import talib as tl
import matplotlib.pyplot as plt
import pandas as pd import tushare as ts
ts.set_token('自己申请的token')
pro = ts.pro_api()#使用tushare旧版接口获取数据
def get_data(code, start, end):df = pro.daily(ts_code=code, start_date=start, end_date=end)df.index = pd.to_datetime(df.trade_date)df=df[['open', 'high', 'low', 'close', 'pre_close', 'change', 'pct_chg', 'vol', 'amount']]df = df.rename(columns={"vol": "volume"})df = df.iloc[::-1]return dfif __name__ == '__main__':#matplotlib作图plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号#Tushare数据获取start_date = '20200701'end_date = '20210701'df = get_data('000001.SZ', start_date, end_date)open_price_arr = df['open'].valuesclose_price_arr = df['close'].valueshigh_price_arr = df['high'].valueslow_price_arr = df['low'].valuesvolume_arr = df['volume'].values#1、BBANDS upper, middle, lower = BBANDS(input_arrays, 20, 2, 2) 布林线 (买卖指标)# upper, middle, lower = tl.BBANDS(close_price_arr, 20, 2, 2, 0)# plt.plot(close_price_arr)# plt.plot(upper)# plt.plot(middle)# plt.plot(lower)# plt.legend(['close', 'upper', 'middle', 'lower'])# plt.show()#2、DEMA dema = DEMA(close, timeperiod)# output = tl.DEMA(close_price_arr, 14)#3、EMA ,指数平均线 output = DEMA(close, timeperiod)# output = tl.EMA(close_price_arr, 14)#4、HT_TRENDLINE希尔伯特瞬时变换# output = tl.HT_TRENDLINE(close_price_arr)#5、KAMA 卡芙曼自适应移动平均线 output = tl.KAMA(close, timeperiod)# output = tl.KAMA(close_price_arr, 14)#6、MA 移动平均线 output = tl.MA(close, timeperiod)# output = tl.MA(close_price_arr, 14)#7、MAMA MESA自适应移动平均线 mama, fama = tl.MAMA(close)# mama, fama = tl.MAMA(close_price_arr)# plt.plot(close_price_arr)# plt.plot(mama)# plt.plot(fama)# plt.legend(['close', 'mama', 'fama'])# plt.show()#8、MAVP 变周期移动平均线, MAVP(close, periods, minperiod=2, maxperiod=30, matype=0)# close_price_arr = np.array([1,5,7,8], dtype=float)# periods =np.array([2,3,3,2], dtype=float)# output = tl.MAVP(close_price_arr, periods, maxperiod=3)#9、MIDPOINT 阶段中点价格 mid = tl.MIDPOINT(close, timeperiod)# output = tl.MIDPOINT(close_price_arr, 14)#10、MIDPRICE 阶段中点价格 output = tl.MIDPRICE(high, low, 14)# output = tl.MIDPRICE(high_price_arr, low_price_arr, 14)# plt.plot(high_price_arr)# plt.plot(low_price_arr)# plt.plot(output)# plt.legend(['high', 'low', 'output'])# plt.show()plt.plot(close_price_arr)plt.plot(output)plt.legend(['close', 'output'])plt.show()
Talib技术因子详解(一)相关推荐
- Talib技术因子详解(四)
talib安装方式:pip install Ta-lib Tushare数据获取请参考:金融量化分析基础环境搭建 数据获取代码请参考:Talib技术因子详解(一) 26.MACD 异同移动平均线,调用 ...
- Talib技术因子详解(三)
talib安装方式:pip install Ta-lib Tushare数据获取请参考:金融量化分析基础环境搭建 数据获取代码请参考:Talib技术因子详解(一) 17.ADX 平均趋向指数,调用方式 ...
- Talib技术因子详解(二)
talib安装方式:pip install Ta-lib Tushare数据获取请参考:金融量化分析基础环境搭建 数据获取代码请参考:Talib技术因子详解(一) 11.SAR 阶段中点价格SAR指标 ...
- 【干货】PMcaff干货课程学习精彩分享:Apple Watch 技术特性详解
昨天PMcaff给大家推荐了Apple Watch的发布会,好多小伙伴们在后台留言,所以PMcaff小咖今天给大家找来一篇干货,看完感觉还不错,在这里分享给大家. 作为苹果主推的智能穿戴产品,Appl ...
- [Python从零到壹] 九.网络爬虫之Selenium基础技术万字详解(定位元素、常用方法、键盘鼠标操作)
欢迎大家来到"Python从零到壹",在这里我将分享约200篇Python系列文章,带大家一起去学习和玩耍,看看Python这个有趣的世界.所有文章都将结合案例.代码和作者的经验讲 ...
- nmos导通流向_技术参数详解,MOS管知识最全收录!
原标题:技术参数详解,MOS管知识最全收录! MOS管,即金属(Metal)-氧化物(Oxide)-半导体(Semiconductor)场效应晶体管,是一种应用场效应原理工作的半导体器件:和普通双极型 ...
- 计算机三级网络技术知识点cn,计算机等级三级网络技术考试详解
首页 > 办公休闲手游 计算机等级三级网络技术考试详解 一.基本知识 1.具有计算机软件及 应用的基本知识 2.掌握操作系统的基 本知识 3.掌握计算机网络的基本概念与基 本工作原理 4.掌握I ...
- 交换机最多可以接几个_【技术】详解一个交换机能带动多少个网络监控摄像头?...
原标题:[技术]详解一个交换机能带动多少个网络监控摄像头? 一个交换机能带动多少个网络监控摄像头?千兆交换机一般接200万网络摄像机能接几个?24个网络头,用一台24口百兆交换机行不行?下面就这类问题 ...
- Android网络开发技术实战详解
<Android网络开发技术实战详解> 基本信息 作者: 朱桂英 丛书名: Android移动开发技术丛书 出版社:电子工业出版社 ISBN:9787121173493 上架时间:2012 ...
- 知识图谱技术发展详解(一)
一.万维网现状 1.当前的Web是一种面向人的网络,很多繁琐的过程依旧需要人工的参与. 2.以搜索引擎为例,目前的搜索引擎主要依靠关键字匹配,因此存在如下问题: (1)高匹配.低精度,搜索出来的内容中 ...
最新文章
- python中options类_python中的optionParser模块
- ORA-12012: error on auto execute of job quot;ORACLE_OCM
- 安卓期末项目源码_手机随时随地写Python,还可以开发安卓APP,太厉害了!
- [Python]linux自己定义Python脚本命令
- java char 空_2020重新出发,JAVA入门,数据类型
- sort,uniq命令
- Java小项目:坦克大战(二)
- 22. DOM 简介
- 电机与拖动基础--第一章
- WPS参考文献编号及超链接
- 半导体车间净化工程的空气洁净度划分等级
- 基于51单片机的智能窗帘设计
- python cadn面试题(摘抄)
- 185电缆的接法图解_三相电缆线的接法图解
- [翼灵物联网工作室例会分享]
- ubuntu下使用github安装R Packages[已解决]
- Revit结合Dynamo建立某大桥下部结构-承台
- JZ2440恢复出产设置
- 宝塔邮局邮箱设置成功后能发送不能接收问题处理
- 市值超阿迪达斯,安踏四次“豪赌”的底层方法论
热门文章
- Java视频文件上传
- python办公软件教程书籍_针对office办公软件初学者有什么推荐书籍?
- wiley期刊AMA-lato,latex字体安装问题
- 产品经理面试问题及答案大全《一》
- GPS距离测量与定位方法概述
- C#+AE 地图制图(二)
- linux运行getch吗,怎么样在linux下,实现getch函数功能
- 网络编程 socket详解 TCP socket和UDP socket
- 2019电子设计大赛电磁曲射炮制作分享
- c++ 读取html,C++ 使用MSHTML分析html 转发