QF-Lib:用一个库搞定Python量化回测和策略开发

简介: QF-Lib 是一个一体化的量化金融研究工具库,涵盖数据获取、策略回测、风险分析到报告生成全流程。支持多数据源接入与前瞻偏差防护,基于事件驱动架构,内置专业金融函数,模块化设计便于扩展,可快速搭建策略原型并自动生成PDF/Excel报告,提升量化研究效率。

搞过量化交易的人都清楚,测试策略的时候流程能有多乱:Pandas 管数据、Matplotlib 画图、Backtrader 跑回测,最后还要再用 Excel 做汇总。本来想简单验证个想法,结果工具链越搞越复杂,最后自己都不知道在干什么了。

QF-Lib(Quantitative Finance Library)是个金融研究和回测工具包。从数据获取到策略模拟、风险评估,再到最后的报告生成,基本能在这一个工具里搞定。

而且它还包含了的事件驱动机制,不是简单粗暴地循环价格数据,而是模拟市场开盘、交易执行、日终清算这些真实流程,基本上达到了专业回测系统的最低要求。

主要特性

数据源接入灵活

Bloomberg、Quandl、Haver 都能接,本地 Excel 文件也行。

连接方式非常简单:

 from qf_lib.data_providers.quandl.quandl_data_provider import QuandlDataProvider  
 data_provider = QuandlDataProvider(api_key="YOUR_API_KEY")

配置完就能用了。

内置前瞻偏差检测

写交易模型时最容易犯的错误就是前瞻偏差——代码里不小心用了未来数据。QF-Lib 在设计上就考虑了这个问题,能保证回测的时间逻辑不出错。

基于 Pandas 但功能更专业

底层用的是 Pandas,所以学习成本不高。但针对金融数据做了很多扩展,收益率计算、最大回撤、累计表现这些都是现成的。

 from qf_lib.common.utils.returns import calculate_cumulative_returns  

 daily_returns = [0.01, -0.005, 0.002, 0.004]  
 cumulative = calculate_cumulative_returns(daily_returns)  
 print(cumulative)

输出:

 [1.01, 1.00495, 1.00794, 1.01196]

这就是策略的累计净值曲线,代码很简洁。

回测模块设计合理

很多回测框架配置起来特别麻烦光搭环境就要半天,而QF-Lib 的回测器是模块化的,接口设计得比较直观,几分钟就能跑起来一个原型。

 from qf_lib.backtesting import Backtester  
 from qf_lib.strategy.simple_moving_average import SimpleMovingAverageStrategy  

 backtester = Backtester(initial_cash=100000)  
 strategy = SimpleMovingAverageStrategy(short_window=20, long_window=50)  
 results = backtester.run(strategy)  
 results.create_report("sma_backtest.pdf")

交易管理、日志记录都可以自动处理,最后还能生成 PDF 报告。

报告生成

QF-Lib 集成了 WeasyPrint,可以自动输出 PDF 或 Excel 格式的分析报告。图表、统计指标、绩效分解都整理得很清楚。

如果要给客户看结果,或者自己做策略记录,这个功能可以节省大量时间

安装

PyPI 直接装:

 pip install qf-lib

或者从源码编译:

 git clone https://github.com/quarkfin/qf-lib.git  
 cd qf-lib  
 python setup.py install

支持 Python 3.8 到 3.11,Windows、macOS、Ubuntu 都能跑。

总结

QF-Lib 除了策略回测,还能用在:

时间序列分析、组合管理、衍生品定价、风险度量、学术研究等场景。基本上涉及金融数据处理的工作都能覆盖。

Backtrader、Zipline 这些库用过一圈下来,各有各的优势,但也各有各的问题。有些功能强但太复杂,有些简单但扩展性差。

QF-Lib 在这方面平衡得比较好。模块化设计保证了灵活性,同时支持主流数据源,代码风格也比较 Pythonic。特别是自动报告这个功能,实际工作中确实省了不少事。

如果正在做量化研究或者策略开发,可以考虑用用看。

文档:

https://avoid.overfit.cn/post/b0196ea42b9847e8ae670d905526214f

作者:Civil Learning

目录
相关文章
|
20天前
|
人工智能 JSON 缓存
CrewAI 上手攻略:多 Agent 自动化处理复杂任务,让 AI 像员工一样分工协作
CrewAI 是一个基于 Python 的自主 AI 智能体编排框架,可构建“虚拟团队”协同完成复杂任务。通过定义角色明确的 Agents、任务流 Tasks、协作流程 Processes 及可用工具 Tools,实现研究、写作、开发等多环节自动化。适用于长链条工作流,如研报生成、竞品分析、软件开发等,支持异步执行、人工介入与结构化输出,集成主流大模型与工具生态,是处理复杂知识型任务的高效选择。(238 字)
157 0
CrewAI 上手攻略:多 Agent 自动化处理复杂任务,让 AI 像员工一样分工协作
|
23天前
|
人工智能 自然语言处理 监控
构建AI智能体:二十七、大模型如何“考出好成绩”:详解内在评测与外在评测方法
本文系统介绍了语言模型评测的两种主要方法:内在评测和外在评测。内在评测聚焦模型基础语言能力,核心指标困惑度(PPL)反映模型预测准确性,计算过程包括条件概率、对数概率和及指数转换。外在评测通过具体任务表现评估模型实用性,采用多层级评估策略(精确匹配、变体匹配、关键词分析和语义评估)。文章详细阐述了评测流程、指标计算方法和代码实现,强调两者结合使用的重要性:内在评测看基本功,外在评测检验实战能力。评测应持续进行,为模型选型、优化部署提供客观依据,同时关注公平性和领域适应性。
214 10
|
28天前
|
开发框架 Java 测试技术
领域驱动设计(DDD)在中小型项目中的落地实践
本文探讨领域驱动设计(DDD)在中小型项目中的落地实践,涵盖核心概念如领域模型、聚合、限界上下文与事件驱动架构,并结合电商订单系统案例,展示分层架构、仓储模式与领域服务的实际应用,助力团队构建高内聚、易维护的业务系统。
366 10
|
22天前
|
存储 人工智能 搜索推荐
LEANN:一个极简的本地向量数据库
LEANN是面向RAG的轻量级嵌入式向量数据库,如SQLite般无需服务依赖,可在本地运行。它通过图结构与选择性重计算,节省97%存储且不损精度,让笔记本也能高效检索百万文档,兼顾隐私与性能,堪称个人AI搜索引擎。
103 4
LEANN:一个极简的本地向量数据库
|
1月前
|
人工智能 监控 安全
AI智能体落地:Agent-Assist vs 全自动化完整决策指南
2025年Agentic AI迅猛发展,但全自主智能体风险难控。Agent-Assist(人机协同)模式兼顾效率与安全,通过人类反馈持续学习,结合RAG构建组织知识库,实现AI越用越聪明。适合高风险、强依赖上下文的场景,是企业智能化升级的更优路径。
164 4
AI智能体落地:Agent-Assist vs 全自动化完整决策指南
|
25天前
|
XML JSON 数据格式
Python 3.14 实用技巧:10个让代码更清晰的小改进
Python 3.14 带来10项实用改进:类型系统增强、错误提示更清晰、导入优化、异步任务取消更稳定,并新增 `chdir()` 上下文管理器等。虽改动细微,却显著提升代码可读性、调试效率与运行稳定性,适合自动化脚本与日常开发。升级即享,无需额外成本。
188 10
Python 3.14 实用技巧:10个让代码更清晰的小改进
|
3月前
|
存储 人工智能 监控
LangGraph实战:从零构建智能交易机器人,让多个AI智能体像投资团队一样协作
如今的量化交易已远超传统技术指标,迈向多智能体协作的新时代。本文介绍了一个基于 **LangGraph** 构建的多智能体交易系统,模拟真实投资机构的运作流程:数据分析师收集市场情报,研究员展开多空辩论,交易员制定策略,风险团队多角度评估,最终由投资组合经理做出决策。系统具备记忆学习能力,通过每次交易积累经验,持续优化决策质量。
676 8
LangGraph实战:从零构建智能交易机器人,让多个AI智能体像投资团队一样协作
|
26天前
|
存储 安全 大数据
Python 开发必备:tempfile 模块深度解析
Python的`tempfile`模块可自动创建并清理临时文件和目录,适用于处理大数据、生成报告或单元测试等场景。无需手动删除,避免命名冲突,提升代码安全与简洁性。
84 5
Python 开发必备:tempfile 模块深度解析
|
人工智能 自然语言处理 测试技术
中文大模型体验测评系列(一)
本文主要通过体验中文竞技场大模型,并详细记录体验过程及感受。
100213 84

热门文章

最新文章