98 lines
5.6 KiB
Markdown
98 lines
5.6 KiB
Markdown
|
|
# QuantDinger 策略与指标开发文档集
|
||
|
|
|
||
|
|
本目录包含 QuantDinger 量化交易平台的策略/指标开发相关文档与示例代码,覆盖从入门到进阶的完整开发链路。
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 目录结构
|
||
|
|
|
||
|
|
```
|
||
|
|
QuantDingerdocs/
|
||
|
|
├── README.md # 本文件
|
||
|
|
├── STRATEGY_DEV_GUIDE_CN.md # 策略开发指南(中文)
|
||
|
|
├── STRATEGY_DEV_GUIDE.md # 策略开发指南(英文)
|
||
|
|
├── SIGNAL_EXECUTION_STANDARD_CN.md # 信号与执行标准(中文)
|
||
|
|
├── SIGNAL_EXECUTION_STANDARD.md # 信号与执行标准(英文)
|
||
|
|
├── SCRIPT_CODE_DEVELOPMENT_GUIDE_CN.md # 脚本代码开发指南(中文)
|
||
|
|
├── SCRIPT_CODE_DEVELOPMENT_GUIDE_EN.md # 脚本代码开发指南(英文)
|
||
|
|
├── CROSS_SECTIONAL_STRATEGY_GUIDE_CN.md # 截面策略使用指南(中文)
|
||
|
|
├── CROSS_SECTIONAL_STRATEGY_GUIDE_EN.md # 截面策略使用指南(英文)
|
||
|
|
├── EXTENSION_GUIDE.md # 扩展指南(英文)
|
||
|
|
├── STRATEGY_RUNTIME_ALGO_TRADING_IMPLEMENTATION_PLAN_CN.md # 复杂策略运行时改造方案
|
||
|
|
├── STRATEGY_RUNTIME_ALGO_TRADING_UPGRADE_CN.md # 策略运行时与算法交易升级规划
|
||
|
|
├── dual_ma_with_params.py # 双均线策略示例
|
||
|
|
├── multi_indicator_composite.py # 多指标组合策略示例
|
||
|
|
├── template_four_way_edge.py # 四路信号模板
|
||
|
|
├── cross_sectional_momentum_rsi.py # 截面动量+RSI 示例
|
||
|
|
└── examples/ # 示例代码副本(同上四个 py 文件)
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 文档说明
|
||
|
|
|
||
|
|
### 核心必读
|
||
|
|
|
||
|
|
| 文档 | 说明 |
|
||
|
|
|------|------|
|
||
|
|
| **[信号与执行标准](SIGNAL_EXECUTION_STANDARD_CN.md)** | 平台级契约,定义策略信号的语义、回测/实盘对齐规则、两路/四路信号选型、退出负责人模型。**所有策略开发者必读**。 |
|
||
|
|
| **[策略开发指南](STRATEGY_DEV_GUIDE_CN.md)** | 站在开发者视角,讲解 `IndicatorStrategy`(指标策略)和 `ScriptStrategy`(脚本策略)两条开发路径的区别、适用场景和编写方法。 |
|
||
|
|
| **[脚本代码开发指南](SCRIPT_CODE_DEVELOPMENT_GUIDE_CN.md)** | 深入讲解 `ScriptStrategy` 的 `on_init/on_bar` 生命周期、状态管理、分批建仓、止盈止损等复杂场景的编写规范。 |
|
||
|
|
|
||
|
|
### 进阶专题
|
||
|
|
|
||
|
|
| 文档 | 说明 |
|
||
|
|
|------|------|
|
||
|
|
| **[截面策略指南](CROSS_SECTIONAL_STRATEGY_GUIDE_CN.md)** | 多标的截面策略(Cross-Sectional)的配置与使用说明,涵盖因子评分、排序、组合管理和定期调仓。 |
|
||
|
|
| **[扩展指南](EXTENSION_GUIDE.md)** | 后端扩展开发指南,覆盖 API 端点、Agent Gateway、服务层、数据适配器等模块的扩展规范。 |
|
||
|
|
| **[策略运行时改造方案](STRATEGY_RUNTIME_ALGO_TRADING_IMPLEMENTATION_PLAN_CN.md)** | 脚本策略从"信号生成"升级为"复杂状态机与算法执行"的实施方案,涉及分仓、马丁、均价止盈、重启恢复等。 |
|
||
|
|
| **[策略运行时升级规划](STRATEGY_RUNTIME_ALGO_TRADING_UPGRADE_CN.md)** | 对策略运行时与算法交易基础设施升级的规划建议,分析当前能力边界与未来演进方向。 |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 示例代码
|
||
|
|
|
||
|
|
| 文件 | 说明 |
|
||
|
|
|------|------|
|
||
|
|
| **[dual_ma_with_params.py](dual_ma_with_params.py)** | 双均线交叉策略(四路信号),演示 `# @param`、`# @strategy` 元数据声明与边缘触发信号生成。 |
|
||
|
|
| **[multi_indicator_composite.py](multi_indicator_composite.py)** | 多指标组合策略,演示均线 + RSI + MACD + 成交量过滤的组合信号写法。 |
|
||
|
|
| **[template_four_way_edge.py](template_four_way_edge.py)** | 四路信号空壳模板,复制到指标 IDE 作为新策略起点,对齐信号执行标准 v1。 |
|
||
|
|
| **[cross_sectional_momentum_rsi.py](cross_sectional_momentum_rsi.py)** | 截面策略研究参考,演示动量 + RSI 复合因子对多标的打分排序思路。 |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 推荐阅读顺序
|
||
|
|
|
||
|
|
```
|
||
|
|
1. SIGNAL_EXECUTION_STANDARD_CN.md → 理解平台合约与信号语义
|
||
|
|
2. STRATEGY_DEV_GUIDE_CN.md → 掌握 IndicatorStrategy / ScriptStrategy 两条路径
|
||
|
|
3. 示例代码(.py 文件) → 对照模板上手写策略
|
||
|
|
4. SCRIPT_CODE_DEVELOPMENT_GUIDE_CN.md → 深入脚本策略的复杂场景
|
||
|
|
5. CROSS_SECTIONAL_STRATEGY_GUIDE_CN.md → 需要多标的同时交易时阅读
|
||
|
|
6. 运行时相关文档 → 需要复杂状态机/算法执行时阅读
|
||
|
|
7. EXTENSION_GUIDE.md → 需要扩展后端功能时阅读
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## 关键概念速览
|
||
|
|
|
||
|
|
### 两条开发路径
|
||
|
|
|
||
|
|
| | IndicatorStrategy | ScriptStrategy |
|
||
|
|
|------|------|------|
|
||
|
|
| 驱动方式 | 基于 `df` 批量计算指标序列 | 基于 `on_init/on_bar` 逐根事件驱动 |
|
||
|
|
| 适用场景 | 指标研究、信号原型、参数调优、信号型回测 | 有状态策略、分批建仓、动态仓位管理、实盘执行 |
|
||
|
|
| 信号输出 | 布尔型 `buy`/`sell`/`close_buy`/`close_sell` | 通过 `ctx.buy()`/`ctx.sell()`/`ctx.close_position()` 发出动作 |
|
||
|
|
|
||
|
|
### 四路信号形态
|
||
|
|
|
||
|
|
```
|
||
|
|
signal_form: four_way
|
||
|
|
├── buy → 开多信号
|
||
|
|
├── sell → 开空信号
|
||
|
|
├── close_buy → 平多信号(结构性反转)
|
||
|
|
└── close_sell → 平空信号(结构性反转)
|
||
|
|
```
|
||
|
|
|
||
|
|
> 退出负责人(exit_owner)为 `engine` 时,固定价格止盈止损由引擎管理;为 `indicator` 时,所有退出逻辑写入信号代码。
|