# 言三 **Repository Path**: ckyan3/y3 ## Basic Information - **Project Name**: 言三 - **Description**: 量化交易相关 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-29 - **Last Updated**: 2025-05-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 量化策略仓库 ## 项目简介 本仓库是基于迅投QMT交易终端的量化策略集合,包含多种成熟的交易策略实现和相关工具。项目采用模块化设计,支持实盘交易、回测分析和策略优化。 ## 核心特性 ### 🚀 多策略支持 - **高频交易策略**: 基于1分钟K线的短线交易 - **T0策略**: 日内回转交易策略 - **回本减半策略**: 风险控制型策略 - **网格策略**: 震荡市场套利策略 - **国债逆回购**: 资金管理策略 ### 📊 数据处理 - 实时行情数据获取和处理 - K线数据连续性检查和修复 - UP值计算和技术指标分析 - 成交量监控和异常检测 ### 🛡️ 风险控制 - 多层次风险控制机制 - 止损止盈自动执行 - 持仓限制和资金管理 - 委托状态实时监控 ### 🔧 系统功能 - 模块化架构设计 - 完善的日志系统 - 数据库持久化存储 - 可视化界面显示 ## 项目结构 ``` 量化策略仓库/ ├── README.md # 项目说明文档 ├── requirements.txt # 依赖包列表 ├── config/ # 配置文件目录 │ ├── strategy_config.json # 策略配置 │ ├── risk_config.json # 风控配置 │ └── database_config.json # 数据库配置 ├── core/ # 核心模块 │ ├── __init__.py │ ├── data_manager.py # 数据管理器 │ ├── trading_engine.py # 交易引擎 │ ├── risk_manager.py # 风险管理器 │ └── order_manager.py # 订单管理器 ├── strategies/ # 策略模块 │ ├── __init__.py │ ├── base_strategy.py # 策略基类 │ ├── high_frequency.py # 高频策略 │ ├── t0_strategy.py # T0策略 │ ├── grid_strategy.py # 网格策略 │ └── mean_reversion.py # 回本减半策略 ├── utils/ # 工具模块 │ ├── __init__.py │ ├── indicators.py # 技术指标 │ ├── logger.py # 日志工具 │ ├── database.py # 数据库工具 │ └── visualization.py # 可视化工具 ├── backtest/ # 回测模块 │ ├── __init__.py │ ├── backtest_engine.py # 回测引擎 │ ├── performance_analysis.py # 绩效分析 │ └── report_generator.py # 报告生成器 ├── data/ # 数据目录 │ ├── market_data/ # 市场数据 │ ├── trade_records/ # 交易记录 │ └── backtest_results/ # 回测结果 ├── logs/ # 日志目录 ├── tests/ # 测试目录 │ ├── test_strategies.py # 策略测试 │ ├── test_data_manager.py # 数据管理测试 │ └── test_risk_manager.py # 风控测试 ├── docs/ # 文档目录 │ ├── strategy_guide.md # 策略指南 │ ├── api_reference.md # API参考 │ └── deployment_guide.md # 部署指南 └── examples/ # 示例代码 ├── simple_strategy.py # 简单策略示例 ├── backtest_example.py # 回测示例 └── live_trading_example.py # 实盘交易示例 ``` ## 快速开始 ### 环境要求 - Python 3.8+ - QMT交易端 - MySQL数据库 - 相关Python依赖包 ### 安装步骤 1. **克隆仓库** ```bash git clone cd 量化策略仓库 ``` 2. **安装依赖** ```bash pip install -r requirements.txt ``` 3. **配置数据库** ```sql CREATE DATABASE y3_database; ``` 4. **配置文件设置** - 复制配置模板文件并修改敏感信息 - 参考 `docs/SECURITY.md` 进行安全配置 - 确保所有敏感信息使用环境变量或私有配置文件 5. **安全检查** ```bash # Windows用户 scripts\quick_security_check.bat # 或使用Python脚本 python scripts/security_check.py --check . ``` 6. **运行系统** ```bash python main.py ``` ## 策略说明 ### 高频交易策略 - **适用市场**: 活跃股票、ETF - **交易周期**: 1-5分钟 - **核心逻辑**: 基于UP值和价格动量 - **风险控制**: 严格止损,快速止盈 ### T0策略 - **适用市场**: 有T0交易权限的品种 - **交易周期**: 日内 - **核心逻辑**: 日内波动套利 - **风险控制**: 当日平仓,控制隔夜风险 ### 网格策略 - **适用市场**: 震荡行情 - **交易周期**: 中长期 - **核心逻辑**: 区间内高抛低吸 - **风险控制**: 分批建仓,动态调整 ## 技术指标 ### UP值计算 UP值是本系统的核心技术指标,用于判断股票的买卖时机: ```python def calculate_up_value(high, low, close, volume): """ 计算UP值 Args: high: 最高价 low: 最低价 close: 收盘价 volume: 成交量 Returns: float: UP值 """ # UP值计算逻辑 price_range = high - low price_position = (close - low) / price_range if price_range > 0 else 0.5 volume_factor = volume / volume.rolling(20).mean() up_value = price_position * volume_factor return up_value ``` ## 风险管理 ### 多层次风险控制 1. **策略层面**: 单策略最大持仓限制 2. **品种层面**: 单品种最大持仓限制 3. **账户层面**: 总资金使用限制 4. **时间层面**: 交易时间和频率控制 ### 止损止盈机制 - **固定止损**: 基于买入价格的固定比例 - **动态止损**: 基于技术指标的动态调整 - **时间止损**: 基于持仓时间的强制平仓 - **盈利保护**: 盈利回撤保护机制 ## 数据管理 ### 数据源 - **实时行情**: 迅投QMT终端 - **历史数据**: 本地数据库存储 - **基本面数据**: 第三方数据接口 ### 数据质量 - **连续性检查**: 自动检测数据缺失 - **异常值处理**: 识别和处理异常数据 - **数据同步**: 多源数据一致性保证 ## 性能监控 ### 实时监控指标 - **策略收益率**: 实时计算策略盈亏 - **最大回撤**: 监控风险水平 - **夏普比率**: 评估风险调整收益 - **胜率统计**: 交易成功率分析 ### 告警机制 - **风险告警**: 超过风险阈值时告警 - **系统告警**: 系统异常时告警 - **数据告警**: 数据异常时告警 ## 部署指南 ### 生产环境部署 1. **服务器配置**: 推荐配置和系统要求 2. **数据库部署**: MySQL/PostgreSQL部署指南 3. **监控部署**: 日志和监控系统部署 4. **备份策略**: 数据备份和恢复方案 ### 开发环境搭建 1. **IDE配置**: PyCharm/VSCode配置指南 2. **调试工具**: 调试和测试工具使用 3. **版本控制**: Git工作流程 ## 贡献指南 ### 代码规范 - **PEP 8**: Python代码风格规范 - **类型注解**: 使用类型提示 - **文档字符串**: 完整的函数文档 - **单元测试**: 测试覆盖率要求 ### 提交流程 1. Fork项目 2. 创建特性分支 3. 提交代码 4. 创建Pull Request 5. 代码审查 6. 合并代码 ## 许可证 本项目采用MIT许可证,详见LICENSE文件。 ## 联系方式 - **项目维护者**: 量化交易团队 - **技术支持**: 通过Issue提交问题 - **文档更新**: 欢迎提交文档改进建议 ## 🔒 安全注意事项 ### 敏感信息保护 **⚠️ 重要提醒**: 在上传代码或分享配置文件时,必须确保所有敏感信息已被适当处理! #### 需要保护的信息 - 🔑 **交易账户号**: 替换为 `*********` - 🔐 **密码和API密钥**: 替换为 `********` - 🌐 **IP地址**: 替换为 `***.***.***.***` - 💾 **数据库连接信息**: 用户名、密码、主机地址 - 📁 **文件路径**: 包含个人信息的路径部分 #### 安全工具 ```bash # 快速安全检查 scripts\quick_security_check.bat # 详细安全检查 python scripts/security_check.py --check . # 自动清理敏感信息 python scripts/security_check.py --sanitize config/your_config.json ``` #### 最佳实践 1. 📋 **使用配置模板**: 复制 `config/` 目录下的模板文件 2. 🔧 **环境变量**: 敏感信息存储在环境变量中 3. 📝 **私有配置**: 创建 `*_private.json` 文件(已在.gitignore中排除) 4. ✅ **提交前检查**: 每次提交前运行安全检查脚本 详细安全指南请参考: [docs/SECURITY.md](docs/SECURITY.md) --- ## 更新日志 ### v1.0.0 (2024-12-20) - 初始版本发布 - 基础策略框架 - 核心交易引擎 - 风险管理系统 - 🔒 安全检查工具和文档 --- **免责声明**: 本项目仅供学习和研究使用,投资有风险,使用本系统进行实盘交易需要充分了解相关风险。