V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
sunfinv
V2EX  ›  程序员

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

  •  
  •   sunfinv · 13 小时 32 分钟前 · 575 次点击

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

    特性

    • 纯 Python 脚本:无需数据库、无需服务端,开箱即用
    • 数据源:使用 finshare 获取实时股票数据,支持 A 股
    • 内置策略:均线交叉、RSI 、MACD 、布林带、双 EMA 等
    • 仓位控制:固定仓位、金字塔、倒金字塔、ATR 波动率仓位
    • 参数优化:网格搜索参数优化

    快速开始

    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 !


    14 条回复    2026-03-09 20:17:41 +08:00
    byaiu
        1
    byaiu  
       13 小时 18 分钟前
    赞!
    sunfinv
        2
    sunfinv  
    OP
       13 小时 17 分钟前
    @byaiu 希望对你有用哈
    ykk
        3
    ykk  
       13 小时 13 分钟前
    很不错,自己的策略都是用 backtrader 维护的,希望这个项目越来越好,未来可以替代 backtrader
    LccU
        4
    LccU  
       13 小时 13 分钟前
    能否提供 docker 部署?
    flyhelan
        5
    flyhelan  
       13 小时 12 分钟前
    有空支持一下
    kuhung
        6
    kuhung  
       13 小时 11 分钟前
    支持 好奇老哥的盈利模式,这算是积累声誉吗
    sunfinv
        7
    sunfinv  
    OP
       13 小时 9 分钟前
    @LccU 后续我加下。
    sunfinv
        8
    sunfinv  
    OP
       13 小时 8 分钟前
    @kuhung 不盈利,主要是为那个回测网站积攒些种子用户,咋盈利暂时还没想清楚,估计也不能赚钱,估计就是闲着没事干吧
    sunfinv
        9
    sunfinv  
    OP
       13 小时 8 分钟前
    @flyhelan 感谢支持
    sunfinv
        10
    sunfinv  
    OP
       13 小时 8 分钟前
    @ykk 我研究研究两者区别
    sunfinv
        11
    sunfinv  
    OP
       12 小时 58 分钟前
    @ykk 有完整版,完整版没开源,这个是抽取的核心代码,抛除冗余也就是 稳定的数据+策略。其他都是修饰
    sddyzm
        12
    sddyzm  
       11 小时 21 分钟前
    赞,但是官网不能正常访问
    sunfinv
        13
    sunfinv  
    OP
       10 小时 45 分钟前
    @sddyzm mongo 打满了 在修复中。。。
    sunfinv
        14
    sunfinv  
    OP
       10 小时 27 分钟前   ❤️ 1
    @sddyzm 可以用了 感谢提醒 真应该花点钱用云数据库啊 哈哈哈哈 还好不是经营性的不然这人得跑完了
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1062 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 22:45 · PVG 06:45 · LAX 15:45 · JFK 18:45
    ♥ Do have faith in what you're doing.