Skip to content

BenBenVibe/round-breakthrough

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💯 Round Breakthrough Strategy - 整数突破量化策略

License: MIT Python Code Style: Black

一个基于关键整数价位突破的量化投资策略系统

特性快速开始策略逻辑配置说明贡献指南

✨ 特性

  • 🎯 整数突破检测: 智能识别股价/市值在关键整数价位80-99%区间的股票
  • 📊 双重确认机制: 同时分析股价和市值两个维度,提高信号可靠性
  • 🔄 自动回测系统: 内置完整回测功能,历史数据验证策略有效性
  • 💼 投资组合管理: 智能资金分配、风险控制和行业分散化
  • 📈 实时数据接入: 基于TuShare API获取最新A股市场数据
  • 🛡️ 风险控制: 单股票、单行业、单策略多维度风险限制
  • 📋 详细报告: 生成完整的策略报告和投资组合分析

🚀 快速开始

1. 环境要求

  • Python 3.8+
  • 有效的TuShare Pro账户和token

2. 安装依赖

# 克隆项目
git clone https://github.com/your-username/round-breakthrough.git
cd round-breakthrough

# 安装依赖
pip install -r requirements.txt

3. 配置TuShare

# 复制配置模板
cp config.example.yaml config.yaml

# 编辑config.yaml,填入你的TuShare token
# 在 https://tushare.pro/ 注册获取token

4. 运行策略

# 使用默认参数运行(推荐新手)
python main.py

# 指定参数运行
python main.py --date 20250822 --capital 1000000 --backtest-end 20250829

# 查看帮助
python main.py --help

📊 输出结果

运行策略后,将在 results/ 目录下生成:

  • 选股结果: enhanced_breakout_enhanced_breakout_stocks_YYYYMMDD.csv - 策略筛选出的股票
  • 投资组合: enhanced_portfolio_YYYYMMDD.csv - 资金分配和权重配置
  • 回测报告: backtest_enhanced_breakout_*_YYYYMMDD_to_YYYYMMDD.csv - 历史收益分析
  • 日志文件: strategy.log - 详细的运行日志

🎯 策略逻辑

核心理念

整数价位(如100元、200元、500亿市值等)往往是重要的心理关口。当股价或市值接近这些整数关口时,往往面临较大的突破压力,一旦突破成功,可能带来较好的投资机会。

策略步骤

  1. 整数突破识别:

    • 筛选股价在目标整数价位80%-99%区间的股票
    • 筛选市值在目标整数市值80%-99%区间的股票
  2. 突破评分系统:

    • 基于距离整数价位的接近程度进行评分(0-100分)
    • 越接近突破点得分越高
  3. 双重确认机制:

    • 同时考虑股价和市值两个维度
    • 增强信号的可靠性
  4. 回测验证:

    • 自动计算持有期收益
    • 提供详细的表现分析

技术指标

  • 突破区间: 80%-99%(可配置)
  • 评分算法: 线性评分,接近突破点得分更高
  • 风险控制: 单股票最大仓位10%,单行业最大仓位30%

⚙️ 配置说明

基础配置

编辑 config.yaml 文件自定义策略参数:

# TuShare配置
tushare:
  token: "YOUR_TUSHARE_TOKEN_HERE"

# 策略配置
strategy:
  # 目标价格点位(元)
  target_prices: [100, 200, 300, 400, 500, 1000]
  
  # 目标市值点位(亿元)
  target_market_caps: [500, 1000, 2000, 3000, 5000]
  
  # 突破区间配置
  price_range_min: 0.80      # 最小突破比例 (80%)
  price_range_max: 0.99      # 最大突破比例 (99%)
  market_cap_range_min: 0.80 # 市值最小突破比例
  market_cap_range_max: 0.99 # 市值最大突破比例
  
  # 输出配置
  output:
    max_results_per_category: 20  # 每类最大结果数
    save_to_csv: true            # 是否保存CSV

命令行参数

python main.py [选项]

选项:
  --date DATE          策略执行日期 (YYYYMMDD格式)
  --backtest-end DATE  回测结束日期 (YYYYMMDD格式)  
  --capital FLOAT      总投资资金 (默认: 1000000)
  --config PATH        配置文件路径 (默认: config.yaml)
  --help              显示帮助信息

📈 历史表现

基于A股市场2025年8月22-29日的回测结果:

指标 数值
📊 总股票数 20只
🎯 胜率 65.0%
💰 平均收益 5.06%
🚀 最大收益 30.09% (新易盛)
🛡️ 最大亏损 -4.65% (德明利)
📊 收益标准差 9.08%

表现最佳股票:

  1. 新易盛 (300502.SZ): +30.09%
  2. 瑞芯微 (603893.SH): +25.65%
  3. 斯达半导 (603290.SH): +10.61%

🛠️ 项目结构

round-breakthrough/
├── 📄 main.py                    # 主程序入口
├── ⚙️ config.yaml                # 策略配置文件
├── 📋 config.example.yaml        # 配置模板
├── 📝 requirements.txt           # Python依赖
├── 📚 README.md                  # 项目文档
├── 📄 LICENSE                    # MIT许可证
├── 🔧 core/                      # 核心框架模块
│   ├── 📊 data_fetcher.py        # 数据获取模块
│   ├── 📈 backtest_analyzer.py   # 回测分析模块
│   ├── 🎯 base_strategy.py       # 策略基类
│   └── 💼 portfolio_manager.py   # 投资组合管理
├── 🎲 strategies/                # 策略实现模块
│   └── 🚀 enhanced_breakout_strategy.py  # 增强突破策略
└── 📊 results/                   # 结果输出目录
    ├── 📄 enhanced_breakout_*.csv      # 选股结果
    ├── 💼 enhanced_portfolio_*.csv     # 投资组合
    └── 📈 backtest_*.csv              # 回测结果

🧪 扩展开发

添加新策略

  1. 创建新的策略类,继承 BaseStrategy
  2. 实现必要的抽象方法:execute()get_stock_score()
  3. main.py 中注册新策略

自定义数据源

  1. 修改 core/data_fetcher.py
  2. 实现新的数据获取接口
  3. 确保数据格式兼容现有策略

🤝 贡献指南

我们欢迎所有形式的贡献!

如何贡献

  1. Fork 本项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 创建 Pull Request

开发指南

  • 遵循 PEP 8 代码风格
  • 添加适当的类型注解
  • 编写测试用例
  • 更新相关文档

报告问题

如果发现bug或有改进建议,请:

  1. 检查是否已有相关issue
  2. 创建新issue,详细描述问题
  3. 提供复现步骤和环境信息

📄 许可证

本项目采用 MIT License 开源许可证。

⚠️ 免责声明

重要提示: 本项目仅供学习和研究使用,不构成任何投资建议。

  • 📈 历史业绩不代表未来表现
  • 💰 投资有风险,可能面临本金损失
  • 🔍 使用前请充分了解策略逻辑和风险
  • 👨‍💼 建议咨询专业投资顾问

🙏 致谢


如果这个项目对你有帮助,请给个 ⭐️ Star!

🐛 报告Bug💡 功能建议📖 文档

Made with ❤️ by 开源社区

About

股价&市值,突破整数关口的量化策略

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages