8 个最佳算法交易 Python 库

2025-06-10

8 个最佳算法交易 Python 库

即使我拥有丰富的软件工程经验和一些数据科学知识,在开始算法交易时,我也经历了一段学习曲线。感觉自己高效需要一些时间。我发现自己不得不编写自己的布林线指标,或者四处寻找交易日历,或者使用每个加密货币交易所特有的 API,而不是对所有 API 进行抽象。这些是我希望在开始追逐 alpha 的时候就知道的 Python 库。它们能帮助你更快地赚钱。

1. 金融技术援助

FinTA(金融技术分析)在 Pandas 中实现了 80 多个交易指标。与许多其他试图包罗万象的交易库不同,FinTA 只提取数据帧并输出交易指标。甚至每个方法上方的注释都很有指导意义,例如这条注释 MACD 的注释。您可能会看到一些甚至不认识的指标,而技术分析的广度也鼓励您进行尝试。

2. 滑索

Zipline是通用交易库中最好的。它拥有近 1.3 万颗星(请参阅我关于使用数据评估软件包的文章 ,并且为最受欢迎的量化金融社区之一Quantopian提供支持,至少在 Robinhood 最近收购它之前是如此。Zipline 允许你从命令行(或 Jupyter Notebook)提取数据,并内置了一些方法,方便编写复杂的策略并进行回测。

3. CCXT

如果您以编程方式交易加密货币, CCXT(加密货币交易所交易)将是您的理想之选。您无需再为每个交易所编写自定义逻辑。CCXT 通过统一的接口抽象了各个交易所 API 之间的差异。它支持超过 120 家交易所。如果您不是 Python 开发者,甚至可以使用 CCXT 的 JavaScript 和 PHP 实现(不过您需要更深入地了解编程语言)。

4. Freqtrade

Freqtrade是另一个支持众多交易所的加密货币交易库。它支持回测、绘图、机器学习、性能状态、报告等功能。看到这里,你可能会感叹:一个算法交易爱好者到底需要多少个加密货币交易库呢?Freqtrade 的神奇之处在于,你可以使用Telegram来控制它。没错:从此以后,你可以直接给你的机器人投资经理发私信了。以下是一些很棒的 Telegram 命令:

  • /status [table]:列出所有未平仓交易;
  • /profit:列出累计利润;
  • /forcesell <trade_id>|all:出售给定的交易;
  • /performance:按货币对分组的每笔已完成交易的表现;
  • /balance:各货币的账户余额;
  • /daily <n>:过去 n 天每天的盈利或亏损。

如果您想增强您的 Freqtrade 交易机器人并将其变成一个随时准备为您摧毁金融市场的高达,请查看Freqtrade Strategies,正如其名称所暗示的那样。

5. YFinance

如果您长期从事交易,您可能听说过雅虎财经 (Yahoo! Finance)。YFinance允许您可靠高效地从雅虎财经下载市场数据。该库的诞生源于雅虎停用其历史数据 API 后的迫切需求。该库的创建者在这里撰写了一个实用的教程

6. Backtrader

Backtrader是一个流行的 Python 回测和交易框架,包含数据馈送、重采样工具、交易日历等功能。除了功能强大、可靠性高之外,Backtrader 的一大优势在于其活跃的社区博客。鉴于 Quantopian 最近关闭,Backtrader 的社区或许可以填补这一空缺。

7. TensorTrade

TensorTrade是一个基于深度强化学习构建交易算法的框架。它提供了对、、、和的抽象numpy加速开发。TensorTrade 仍处于测试阶段pandas但它正在迅速获得关注,并有望成为量化社区的中流砥柱。Tensor Trade 的创始人 Adam King 撰写了一篇精彩的教程gymkerastensorflow

8. Trump2Cash

我把最搞笑的库留到最后。Trump2Cash会监控唐纳德·特朗普的推文。当他提到上市公司时,它会分析推文的情绪并据此执行交易。该库甚至包含一个实用程序来基准测试其历史性能。我不是在推荐什么,但这个算法出人意料地成功了。

即使假设特朗普对金融市场的影响力即将减弱,该源代码也可以轻松移植到其他推特账户。如果您对将推特情绪作为交易策略功能感兴趣,那么该代码库非常值得一看。

关于我们

Carrots正在打造一个专为软件工程师打造的招聘平台。您可以连接 GitHub、Stack Overflow 等平台,让您的简历更加丰富。我们的算法会显示您在世界一流人才中的排名,并将您的个人资料推荐给顶尖公司。欢迎访问我们的Telegram频道,获取开发者职位的实时动态。

鏂囩珷鏉ユ簮锛�https://dev.to/sewinter/8-best-python-libraries-for-algorithmic-trading-1af8
PREV
面向对象设计的 SOLID 原则
NEXT
2020 年如何开始 Web 开发