Files
sanguo_quant_live/strategies/README_GUANYU.md
T
cfdaily 63d58ec123 docs(jiangwei): 更新基础设施环境检查结果到整合报告
补充内容:
- Python环境检查(3.14.3,核心依赖完整)
- vn.py环境检查(4.3.0,sanguo集成)
- 数据库配置检查
- 目录结构验证
- 模块导入测试
- 四位将军环境就绪状态
- 综合环境评估(9.5/10)
- 完整部署说明
- 依赖列表安装指南

更新人:姜维(伯约)
检查时间:2026-03-24 12:33 GMT+8
更新时间:2026-03-24 18:24 GMT+8
结论:环境完全就绪
2026-03-24 18:28:54 +08:00

183 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 关羽 - 价值+技术综合选股策略
## 策略概述
基于五虎上将多因子选股体系第二部分实现的综合选股策略,采用**价值筛选 + 技术确认**双轮驱动模式,在控制风险的前提下追求稳健收益。
### 核心框架
```
价值筛选(缩小范围)→ 技术确认(入场点)→ 仓位控制(风险管理)→ 入场执行 → 持仓监控(出场)
```
### 预期绩效
| 指标 | 数值 |
|------|------|
| 年化收益 | 14-17% |
| 最大回撤 | 28-38% |
| 夏普比率 | 0.75-0.85 |
| 卡玛比率 | 0.4-0.5 |
## 策略特点
### 1. 价值筛选(风控前置)
**排除高风险股票**
- ❌ ST/*ST股票
- ❌ 商誉>20%
- ❌ 大股东质押>50%
- ❌ 连续亏损
- ❌ 低流动性(流通市值<10亿)
**估值指标筛选**
- ✅ PE < 阈值(根据风险偏好)
- ✅ PB < 阈值(根据风险偏好)
- ✅ ROE > 阈值(根据风险偏好)
### 2. 技术确认(入场时机)
**技术信号过滤**
- ✅ 股价站在20日均线上(短期趋势向上)
- ✅ 近一个月跌幅不超过20%(排除暴跌趋势)
- ✅ 无极端放量(排除主力出货)
- ✅ MAC MACD金叉或MACD在零轴上方(可选增强)
### 3. 仓位控制(风险管理)
**三种风险偏好**
| 项目 | 保守型 | 平衡型 | 进取型 |
|------|--------|--------|--------|
| PE上限 | < 15 | < 25 | < 35 |
| PB上限 | < 1.5 | < 2.5 | < 3 |
| ROE下限 | > 12% | > 10% | > 8% |
| 单票上限 | 5-8% | 10-15% | 20-25% |
| 行业上限 | 20% | 25% | 30% |
| 股票数量 | 15-20只 | 10-15只 | 5-10只 |
| 止损幅度 | 5% | 6% | 8% |
### 4. 入场出场规则
**入场条件**
- 通过价值筛选
- 通过技术信号确认
- 仓位计算满足风控要求
**出场条件**
- 止损:收盘价跌破20日均线 或 单笔亏损5-8%
- 止盈:收益达到30%(可选)
## 使用方法
### 1. 安装依赖
```bash
pip install akshare pandas numpy
```
### 2. 基础使用
```python
from guanyu_value_tech_strategy import GuanYuValueTechStrategy
# 创建策略实例
strategy = GuanYuValueTechStrategy(
risk_profile='balanced', # 保守型/平衡型/进取型
total_capital=1000000.0 # 总资金(元)
)
# 运行策略
result = strategy.run()
# 查看结果
if result['success']:
print(f"选中股票: {len(result['final_stocks'])}")
print(f"生成订单: {len(result['orders'])}")
# 打印订单详情
strategy.print_orders(result['orders'])
```
### 3. 运行完整策略
```bash
# 进入策略目录
cd /path/to/sanguo_quant_live/strategies
# 运行策略
python guanyu_value_tech_strategy.py
```
### 4. 查看结果
结果将保存到:
```
sanguo_quant_live/results/guanyu_strategy_result.csv
```
## 代码结构
```
guanyu_value_tech_strategy.py
├── RiskProfile # 风险偏好配置类
├── ValueFilter # 价值筛选器
│ ├── filter_basic_risks() # 排除基本风险
│ ├── filter_valuation_metrics() # 估值指标筛选
│ └── filter_quality_metrics() # 质量指标筛选
├── TechnicalFilter # 技术信号过滤器
│ ├── check_trend_up() # 检查趋势向上
│ ├── check_recent_drawdown() # 检查回撤
│ ├── check_volume_surge() # 检查放量
│ └── check_macd_signal() # 检查MACD信号
├── PositionManager # 仓位管理器
│ ├── calculate_position_size() # 计算仓位
│ ├── calculate_stop_loss() # 计算止损价
│ └── generate_entry_orders() # 生成入场订单
└── GuanYuValueTechStrategy # 主策略类
```
## 注意事项
### A股市场特征
1. **T+1制度**:当天买入次日才能卖出,影响短期策略效果
2. **涨跌停板**:极端行情可能无法及时止损,需要预留缓冲
3. **流动性**:必须过滤小市值股票,防止无法卖出
4. **数据延迟**:免费数据源可能有延迟,实际使用需注意
### 数据依赖
当前使用 **akshare** 作为数据源:
- 股票列表:`ak.stock_zh_a_spot_em()`
- 历史行情:`ak.stock_zh_a_hist()`
- 财务指标:需补充 `ak.stock_financial_analysis_indicator()`
### 风控建议
1. **严格止损**:达到止损条件坚决执行,不抱侥幸心理
2. **分散持仓**:单票仓位不超过风险偏好限制
3. **行业分散**:避免过度集中在单一行业
4. **总仓位控制**:市场极端情况下主动降低总仓位
## 扩展优化方向
1. **财务数据补充**:接入完整的财务指标数据(ROE、商誉、质押率等)
2. **行业分类**:实现行业集中度控制
3. **因子增强**:增加更多技术因子(KDJ、布林带、RSI等)
4. **回测验证**:实现完整的历史回测框架
5. **实盘对接**:对接券商交易接口实现自动化交易
## 贡献者
- **关羽**:策略设计者,价值+技术综合选股框架
- **庞统**:代码实现与整合
## 版本
- v1.0.0 (2026-03-24) - 初始版本,实现核心功能
---
*"威震华夏,义薄云天" — 关羽策略,价值为基,技术为锋,风控为盾* ⚔️