大家好,分享一个我开发的轻量级 Python 量化回测工具 finquant。

3 月 9 日
 sunfinv

完全开源: https://github.com/finvfamily/finquant

特性

快速开始

from finquant import get_kline, MACrossStrategy, BacktestEngine

# 获取数据(支持短码)
data = get_kline(["000001", "600000"], start="2024-01-01", end="2025-01-01")

# 创建策略和回测引擎
engine = BacktestEngine(initial_capital=100000)
result = engine.run(data, MACrossStrategy(short_period=5, long_period=20))

# 查看结果
print(result.summary())

仓位控制示例

from finquant import (
    BacktestEngine,
    PyramidPositionSizer,  # 金字塔仓位(浮盈加仓)
)

engine = BacktestEngine(
    initial_capital=100000,
    position_sizer=PyramidPositionSizer(
        base_ratio=0.2,  # 基础仓位 20%
        max_ratio=1.0,   # 最大仓位 100%
        step=0.1,       # 每 10% 浮盈加仓一次
    ),
    max_positions=3,     # 最多 3 只持仓
    max_single_position=0.3,  # 单票最多 30%
)

安装

git clone https://github.com/finvfamily/finquant.git
cd finquant
pip install -r requirements.txt
pip install -e .

官方网站

https://meepoquant.com


欢迎 Star 和 Fork !


2194 次点击
所在节点    程序员
17 条回复
byaiu
3 月 9 日
赞!
sunfinv
3 月 9 日
@byaiu 希望对你有用哈
ykk
3 月 9 日
很不错,自己的策略都是用 backtrader 维护的,希望这个项目越来越好,未来可以替代 backtrader
LccU
3 月 9 日
能否提供 docker 部署?
flyhelan
3 月 9 日
有空支持一下
kuhung
3 月 9 日
支持 好奇老哥的盈利模式,这算是积累声誉吗
sunfinv
3 月 9 日
@LccU 后续我加下。
sunfinv
3 月 9 日
@kuhung 不盈利,主要是为那个回测网站积攒些种子用户,咋盈利暂时还没想清楚,估计也不能赚钱,估计就是闲着没事干吧
sunfinv
3 月 9 日
@flyhelan 感谢支持
sunfinv
3 月 9 日
@ykk 我研究研究两者区别
sunfinv
3 月 9 日
@ykk 有完整版,完整版没开源,这个是抽取的核心代码,抛除冗余也就是 稳定的数据+策略。其他都是修饰
940i3s34v4F1HW41
3 月 9 日
赞,但是官网不能正常访问
sunfinv
3 月 9 日
@sddyzm mongo 打满了 在修复中。。。
sunfinv
3 月 9 日
@sddyzm 可以用了 感谢提醒 真应该花点钱用云数据库啊 哈哈哈哈 还好不是经营性的不然这人得跑完了
a852695
3 月 10 日
量化网站也是自己做的吗,感觉很不错耶,希望能够竞争过市面上的传统量化网站。
byaiu
3 月 10 日
@sunfinv 很赞,其实就我之前的了解,写回测难度倒是不大,处理各种行情数据是个很烦人的事情,这个项目似乎把这个变的易用了很多
不过只用短码是怎么处理 sh/sz 都有的情况的?
sunfinv
3 月 10 日
@byaiu 不带 sz/sh,里面有处理函数

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1196926

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX