1.通达信也可以挑战talib技术分析库了
2.量化策略分享之TALIB指标策略
3.vn.py社区精选4 - 双均线策略深度解析
4.硬核福利量化交易神器talib中28个技术指标的Python实现(附全部源码)
5.手把手教你股市技术分析利器之TA-Lib(二)
通达信也可以挑战talib技术分析库了
TA-Lib,即技术分析库,是一个广泛流传的开源库,支持多种编程语言接口,如C/C++、Java、xCrash源码Perl、Python和% Managed .NET等。
TA-Lib库包含多种指标,涵盖了股票、期货交易软件中常用的技术分析指标,例如MACD、RSI、KDJ、动量指标和布林带等。
TA-Lib可分为个子板块:Overlap Studies(重叠指标)、Momentum Indicators(动量指标)、Volume Indicators(交易量指标)、Cycle Indicators(周期指标)、Price Transform(价格变换)、Volatility Indicators(波动率指标)、Pattern Recognition(模式识别)、Statistic Functions(统计函数)、Math Transform(数学变换)和Math Operators(数学运算)。
在Python环境下,微信点餐源码安装TA-Lib非常简单,只需一行命令即可完成。
在Python中,使用TA-Lib计算收盘价简单移动平均数SMA的方法如下:
计算收盘价动量,时间周期为5的方法如下:
TA-Lib还提供了一种统一的API调用接口,可以直接导入函数或通过名称实例化。
调用函数的方式与函数API相同。
TA-Lib支持的指标包括多个技术指标,分为不同的函数分类。
以下是TA-Lib的全部介绍和使用方法。
TA-Lib的缺点可能是性能问题。
我测试了另一款Tulip技术分析库的性能,发现tulip的性能远超TA-Lib。
关于Tulip如何战胜TA-Lib,原因有以下两点:
第一点:为了性能,Tulip在程序中广泛采用宏来替代常规函数,这可能导致代码难以理解,改bug复杂等问题。
第二点:Tulip为了保证接口的普适性,在正式计算之前进行了一系列的施法咏唱,导致代码冗长。
为了获取tulip的强大性能,设计了通达信适用的tulip技术分析dll,能够调用全部tulip的list源码函数。
通达信现在也能够享受到高级技术分析库的全部优点了。
Tulip的源码已经编写通用的DLL,能够在通达信和大智慧中随意调用。
以上DLL都是可以付费含代码出售的。
如果想学习DLL的编写方法,有付费的《通达信》编写DLL的教程。
量化策略分享之TALIB指标策略
本篇文章将介绍技术分析指标,并探讨一些基于技术指标构建的策略。
量化投资中的技术分析指的是利用数学模型和算法对市场数据进行分析和交易决策的投资方法。作为量化投资的一个重要分支,技术分析通过分析历史价格和交易量数据来预测未来的价格走势。技术分析的理论基础是市场信息都反映在价格中,价格走势存在一定的规律和模式,因此可以通过数学方法进行分析和预测。
技术分析运用多种数学方法和指标对市场数据进行分析,以帮助投资者识别市场趋势和交易信号。TA-Lib库提供了丰富的技术分析函数,便于投资者进行量化分析和策略开发。掌握这些技术指标的使用方法及其投资意义对于量化投资者来说至关重要。
常用的技术分析工具和指标包括移动平均线、相对强弱指数(RSI)、布林带(Bollinger Bands)等。这些工具帮助投资者识别市场趋势、超买超卖状态以及价格波动区间,试用源码从而制定相应的交易策略。
TA-Lib(Technical Analysis Library)是一个用于金融数据技术分析的开源库,它包含了众多常用的技术指标计算的Python函数。以下是一些常用函数的介绍。
BigQuant将常用的TA-Lib技术指标算子移植到了DAI平台,使得在编写策略时可以在“输入特征(DAI SQL)”模块中的“表达式特征”一栏中直接调用算子,计算出技术指标。这些技术指标算子都是以“m_ta”开头的,常见的有:
本文将详细介绍一个基于TALIB指标的选股策略,该策略的买入条件包括:(1)今日开盘价大于昨日收盘价;(2)5日收盘价均线大于日收盘价均线的股票。买入后,如果5日收盘价均线小于日收盘价均线,则次日卖出。
策略的具体实现过程包括筛选条件的实现和信号设定的实现。在“输入特征(DAI SQL)”模块中,“表达式过滤条件”一栏中添加相应的表达式即可实现筛选条件。信号设定的实现可以通过设置买入和卖出信号来实现。
在策略回测的实现过程中,可以在“BigTrader”模块中,选择调仓周期类型为“交易日”,并在“调仓周期日期”一栏中填入,表示持仓天数为。卖出操作针对已持仓且卖出信号为1的股票,买入操作针对未持仓且买入信号为1的map源码股票。
策略的源码可以在BigQuant平台中克隆。对于详细使用和策略分享,可以前往BigQuant平台进行模拟测试。BigQuant量化交易平台是一个AI人工智能量化投资交易平台。
vn.py社区精选4 - 双均线策略深度解析
策略原理
双均线策略作为基础的CTA策略,通过短周期与长周期均线的金叉或死叉信号进行交易决策,捕捉市场趋势。策略包含两个关键周期的移动平均线,短周期反映近期市场走势,长周期代表较长时段的趋势。
源码分析
以vn.py项目中的双均线策略源码为例,解析策略实现逻辑和内部代码。
创建策略实例
所有vn.py框架中的CTA策略类(包括内置和自定义)皆基于CTA策略模板类(CtaTemplate)实现子类。模板类为策略设计提供了通用结构,如同汽车设计图指导汽车制造。CtaTemplate定义了交易函数和策略逻辑框架,使得快速实现策略成为可能。
策略初始化
在策略实例创建时,设置参数和变量。参数由外部指定,变量随策略状态变化动态更新。参数列表中包括策略名称、设置信息等,系统自动从配置文件中加载。变量列表用于界面显示,并在策略停止、收到回报或同步数据时保存状态。
构造函数__init__
构造函数接收CTA引擎、策略名称、标的代码和设置信息作为参数,其中引擎对象自动传入。创建BarGenerator实例用于生成分钟级别K线数据,ArrayManager用于缓存K线数据,支持指标计算。
状态变量初始化
状态变量初始化并非在构造函数中完成,而是在创建策略实例后通过图形界面的初始化按钮触发on_init函数,加载历史数据回放给策略初始化变量。
启动自动交易
点击启动策略按钮,自动调用on_start函数,将交易状态变量设置为True,启动交易流程。确保在界面刷新策略状态相关显示时调用put_event函数。
接收Tick推送
CTP接口每0.5秒推送Tick数据,由事件引擎分发到策略中。Tick数据通过BarGenerator的update_tick函数处理,合成1分钟K线数据,供策略使用。
核心交易逻辑
接收到K线数据后,将数据放入ArrayManager容器中,确保至少个数据后初始化完毕。调用talib库计算技术指标,判断金叉或死叉触发交易逻辑。交易指令由策略模板封装,在on_bar函数中直接调用。
委托回报处理
on_order函数处理委托状态变化,on_trader和on_stop_order函数处理成交回报和停止单回报。双均线策略在这些函数中通常无操作。
停止自动交易
每日交易结束后,通过停止按钮关闭自动交易,策略引擎调整交易状态变量,撤销所有活动委托,并保存变量状态。
CTA交易流程梳理
使用思维导图整理vn.py中策略实现与执行流程,包括从创建策略实例到停止自动交易的完整步骤。
《vn.py全实战进阶》课程介绍
该课程提供节内容,涵盖策略设计、参数回测和实盘自动交易的CTA量化业务流程,适合深入学习vn.py应用。
更多vn.py精华内容
关注公众号以获取更多深入分析和实践技巧。
硬核福利量化交易神器talib中个技术指标的Python实现(附全部源码)
本文将带您深入学习纯Python、Pandas、Numpy与Math实现TALIB中的个金融技术指标,不再受限于库调用,从底层理解指标原理,提升量化交易能力。
所需核心库包括:Pandas、Numpy与Math。重要提示:若遇“ewma无法调用”错误,建议安装Pandas 0.版本,或调整调用方式。
我们逐一解析常见指标:
1. 移动平均(Moving Average)
2. 指数移动平均(Exponential Moving Average)
3. 动量(Momentum)
4. 变化率(Rate of Change)
5. 均幅指标(Average True Range)
6. 布林线(Bollinger Bands)
7. 转折、支撑、阻力点(Trend, Support & Resistance)
8. 随机振荡器(%K线)
9. 随机振荡器(%D线)
. 三重指数平滑平均线(Triple Exponential Moving Average)
. 平均定向运动指数(Average Directional Movement Index)
. MACD(Moving Average Convergence Divergence)
. 梅斯线(High-Low Trend Reversal)
. 涡旋指标(Vortex Indicator)
. KST振荡器(KST Oscillator)
. 相对强度指标(Relative Strength Index)
. 真实强度指标(True Strength Index)
. 吸筹/派发指标(Accumulation/Distribution)
. 佳庆指标(ChaiKIN Oscillator)
. 资金流量与比率指标(Money Flow & Ratio)
. 能量潮指标(Chande Momentum Oscillator)
. 强力指数指标(Force Index)
. 简易波动指标(Ease of Movement)
. 顺势指标(Directional Movement Index)
. 估波指标(Estimation Oscillator)
. 肯特纳通道(Keltner Channel)
. 终极指标(Ultimate Oscillator)
. 唐奇安通道指标(Donchian Channel)
参考资料:
乐学偶得系列笔记,开源项目ultrafinance。深入学习并应用这些指标,将大大提升您的量化交易与金融分析技能。
手把手教你股市技术分析利器之TA-Lib(二)
在投资领域,就像打牌需要仔细观察牌面一样,研究是必不可少的——彼得·林奇的教诲。TA-Lib,作为技术分析的强大工具,为Python金融量化提供了丰富的支持,包括MACD、RSI、KDJ等多种常用技术指标。它分为十个核心板块:重叠指标、动量、交易量、周期、价格变换、波动率、模式识别、统计函数、数学变换和运算。在前文我们探讨了重叠指标,本篇将着重介绍TA-Lib的数学运算、变换、统计和关键指标应用。
安装和使用TA-Lib可通过下载特定版本的whl文件并使用pip安装。一旦安装成功,便可通过导入talib模块进行操作。价格转换函数如开盘价和收盘价的平均值,是基础分析的一部分。
周期指标函数,如希尔伯特变换,能揭示市场的周期性,如在去除长期趋势后的短线择时策略。通过分析上证指数,可以实际演示其在股市中的应用。
波动率指标,如真实波幅和平均真实波幅,是衡量市场活跃度和趋势转变的指标,上证指数走势可以直观地展示波动率指标的作用。
数学运算和统计学函数则提供了向量计算和移动窗口统计,例如计算上证指数的移动平均值和相关系数,帮助理解市场动态。
数学转换函数如三角函数,对时间序列数据进行深入分析,虽然这里不再详述,但它们在金融市场分析中不可或缺。
Python金融量化不仅限于理论,通过参与知识星球,你可以获取丰富的学习资源,包括视频、源码和前沿分析框架,进一步提升你的投资技能。