Skip to content

hktime/quant-grid

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quant-grid — A 股指数网格交易系统

针对 A 股主要指数的网格交易工具,自动生成买入/卖出点位建议,并支持历史数据回测验证策略效果。

功能

  • 三种网格策略:等差网格、等比网格、自适应网格(ATR 驱动)
  • 历史回测:模拟网格交易在历史行情上的表现,输出收益率、最大回撤、夏普比率等指标
  • 点位推荐:根据当前价格和历史波动率,生成下一步买入/卖出点位
  • 策略对比:同一指数上横向对比三种策略的回测表现
  • 图表输出:网格叠加图、资金曲线、回撤曲线

安装

pip install -r requirements.txt

依赖:akshare, pandas, numpy, matplotlib, pyyaml

快速开始

回测

# 自适应网格,回测上证指数 2023 全年
python main.py backtest --index 上证指数 --strategy adaptive --start 20230101 --end 20240101

# 等比网格,指定 3% 间距和 20% 范围
python main.py backtest --index 沪深300 --strategy equal_percentage --grid-pct 0.03 --range-pct 0.20

# 等差网格,指定 50 点间距,保存图表
python main.py backtest --index 创业板指 --strategy equal_interval --grid-interval 50 --chart result

点位推荐

# 等比网格推荐,标记当前持有层级
python main.py recommend --index 沪深300 --strategy equal_percentage --grid-pct 0.03

# 自适应网格推荐,指定已持有层级 3,5,7
python main.py recommend --index 上证指数 --strategy adaptive --held-levels 3,5,7

策略对比

python main.py compare --index 上证指数 --start 20230101 --end 20240101

输出三种策略在同一时段的关键指标对比表。

支持的指数

名称 代码
上证指数 sh000001
沪深300 sh000300
中证500 sh000905
创业板指 sz399006
上证50 sh000016
中证1000 sh000852
中证传媒 sz399971

也可以直接用 akshare 的指数代码作为 --index 参数。

三种网格策略

等差网格(equal_interval)

相邻层级价差固定。适合波动较小、价格区间稳定的震荡市。

参数:--grid-interval(固定价差)或 --range-pct(总范围占比,默认 30%)

等比网格(equal_percentage)

相邻层级百分比间距固定,高位绝对价差更大。适合趋势性较强的指数。

参数:--grid-pct(百分比间距,如 0.03 = 3%)或 --range-pct

自适应网格(adaptive)

基于 ATR(平均真实波幅)自动计算网格间距和上下界,无需手动调参。

参数:--lookback-days(ATR 回望天数,默认 60)

回测指标说明

指标 含义
总收益率 期末资产相对初始资金的收益率
年化收益率 按回测天数折算的年化收益
最大回撤 从峰值到谷值的最大跌幅
夏普比率 风险调整后收益,>1 较好
卡尔玛比率 年化收益 / 最大回撤
胜率 盈利卖出占全部卖出的比例
资金利用率 平均持仓占总资产的比例

目录结构

quant-grid/
  config.yaml          # 指数映射与策略默认参数
  main.py              # CLI 入口
  requirements.txt
  data/                # 数据获取与缓存
  strategy/            # 网格策略实现
  backtest/            # 回测引擎与指标计算
  output/              # 终端输出与图表
  cache/               # 本地数据缓存(自动生成)

数据来源

通过 akshare 从东方财富获取指数日线数据,免费无需 API Key。首次获取后自动缓存到本地 CSV,后续只增量拉取缺失日期段。

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages