date: 2025-05-12 updated: 2025-05-12 conversation_id: 7dd89572-b177-47a5-bac1-0e3eb2a1ffe7 title: "Python库计算通达信指标算法" tags: [deepseek, conversation] ---
Python库计算通达信指标算法
创建时间: 2025-05-12 15:16
👤 用户:
有哪些python公共库可以直接计算使用通达信指标算法
🛠️ 使用工具中...
💭 思考过程
嗯,用户想知道有哪些Python的公共库可以直接计算通达信的指标算法。我需要根据提供的搜索结果来找出相关的库。首先,看看每个网页的内容。
网页1提到MyTT、TA-Lib和Pandas TA这三个库。MyTT特别强调能将通达信等指标移植到Python,且单文件,适合国内软件兼容性。TA-Lib虽然流行,但可能和国内结果有差异。Pandas TA是基于Pandas的,可能方便数据处理。
网页2讨论MyTT在DolphinDB中的性能提升,说明MyTT本身是一个Python库,后来被移植到DolphinDB。所以MyTT是其中一个选项。
网页3和4都是关于MyIndicator或MyTT的,看起来是同一个库的不同名称或版本。例如,网页3提到MyIndicator是一个轻量化的库,核心文件单个,不需要安装TA-Lib,和通达信兼容。网页4同样介绍MyTT,功能类似,可能这两个是同一个项目的不同名称或分支。
网页5详细说明如何将通达信公式改写为Python代码,并推荐MyTT,还给出了代码示例,进一步确认MyTT是可行的选择。
网页6提到fengwo模块,实现了COST和WINNER函数,并支持调用通达信DLL,这可能也是一个相关的库,虽然主要针对筹码峰函数,但可能包含其他指标。
网页7和8介绍Mootdx和pytdx,这两个库主要用于获取通达信数据,而不是直接计算指标,但可能结合其他库使用。
总结下来,主要的库有:
- MyTT(MyIndicator):多个网页提到,直接支持通达信指标,轻量,兼容国内结果。
- TA-Lib:传统库,但可能结果与国内有差异。
- Pandas TA:基于Pandas,方便数据处理。
- fengwo:支持特定函数如COST和WINNER,并调用DLL。
- pytdx/Mootdx:数据获取,可能需结合其他库计算指标。
需要确认每个库的具体功能,例如MyTT是否直接包含通达信的指标算法,TA-Lib是否有差异,fengwo是否补充了其他库未包含的函数等。根据搜索结果,MyTT被多次强调兼容国内软件,适合直接使用。TA-Lib虽然快但可能有差异。Pandas TA适合整合到数据流程中。fengwo补充了筹码函数。而pytdx和Mootdx更多是数据获取,可能需要结合其他库进行计算。
以下是几个可以直接计算通达信指标算法的Python公共库,结合了搜索结果中的相关信息:
1. MyTT / MyIndicator
- 特点:
- 核心库轻量化,仅需单个文件(
MyTT.py或MyIndicator.py),无需复杂安装,直接导入即可使用[citation:1][citation:3][citation:4]。 - 完全兼容通达信、同花顺等国内软件的指标算法(如MACD、RSI、BOLL等),结果精确到小数点后两位[citation:3][citation:4]。
- 基于
numpy和pandas实现,无需依赖TA-Lib,解决了TA-Lib安装困难的问题[citation:3][citation:5]。 - 提供丰富的工具函数(如
REF、MA、CROSS等),支持自定义指标扩展[citation:3][citation:4]。 - 示例:
`python from MyTT import * MA5 = MA(CLOSE, 5) # 计算5日均线 DIF, DEA, MACD = MACD(CLOSE) # 计算MACD指标 `
2. TA-Lib
- 特点:
- 支持150+技术指标,计算速度快(C语言底层实现),广泛用于量化交易[citation:1]。
- 部分指标(如MACD)与国内软件结果可能存在差异,需手动调整(例如MACD需乘以2以对齐国内结果)[citation:1]。
- 不支持自定义指标扩展,但适合对性能要求高的场景[citation:1][citation:4]。
- 示例:
`python import talib macd, signal, hist = talib.MACD(close, fastperiod=12, slowperiod=26, signalperiod=9) hist *= 2 # 调整以匹配国内软件结果 `
3. Pandas TA
- 特点:
- 基于
pandas的扩展库,无缝集成DataFrame,适合数据处理流程[citation:1]。 - 支持多种指标计算(如布林带、RSI),部分指标需调整参数以匹配国内算法[citation:1]。
- 支持自定义策略组合,适合复杂量化场景[citation:1]。
- 示例:
`python import pandas_ta as ta df.ta.bbands(length=20, std=2, append=True) # 计算布林带 `
4. fengwo模块
- 特点:
- 专注于实现通达信中特有的复杂函数(如筹码峰函数
COST和WINNER),弥补其他库的不足[citation:6]。 - 支持调用通达信DLL,兼容32/64位Python环境,计算效率高[citation:6]。
- 适合需要精确计算筹码分布和获利盘比例的场景[citation:6]。
- 示例:
`python import fengwo as fw cost90 = fw.COST(high, low, volume, turnoverrate, 90) # 计算90%筹码获利价格 `
5. DolphinDB mytt模块
- 特点:
- 基于数据库DolphinDB实现的MyTT移植版本,性能较Python原生库提升30倍以上[citation:2]。
- 支持流式计算,适用于实时数据处理和高频交易场景[citation:2]。
- 函数命名与参数默认值与Python版MyTT一致,便于迁移[citation:2]。
其他相关工具
- 数据获取库:
- pytdx / Mootdx:用于获取通达信本地或在线行情数据,需结合上述库进行指标计算[citation:7][citation:8]。
总结与选择建议
- 优先推荐MyTT:适合需要完全兼容国内软件指标、轻量级且易扩展的场景[citation:1][citation:3]。
- 高频或复杂计算:TA-Lib(性能优先)或DolphinDB mytt模块(流式计算)[citation:1][citation:2]。
- 筹码分析:使用fengwo模块补充特定函数[citation:6]。
更多细节可参考各库的官方文档或示例代码(来源链接见引用标注)。
👤 用户:
哪些模块支持计算WINNER呢
服务器繁忙,请稍后再试。