QAStrategy 模块文档

概述

QAStrategy 是 QUANTAXIS 的策略框架模块,提供了完整的量化交易策略开发、回测和执行环境。支持 CTA、套利、多因子等多种策略类型,集成 QIFI 账户系统进行风险管理。

模块架构

核心组件

  1. qactabase.py: CTA策略基类

  2. qahedgebase.py: 套利策略基类

  3. qafactorbase.py: 因子策略基类

  4. qamultibase.py: 多策略管理基类

  5. syncoms.py: 策略同步通信

  6. util.py: 策略工具函数

策略类型

1. CTA策略 (qactabase.py)

from QUANTAXIS.QAStrategy.qactabase import QACTABase

class MyTrendStrategy(QACTABase):
    def __init__(self):
        super().__init__()
        self.period = 20

    def on_bar(self, bar):
        # 计算技术指标
        ma = self.data.ma(self.period)

        # 交易信号
        if bar.close > ma.iloc[-1]:
            self.buy(bar.code, 100, bar.close)
        elif bar.close < ma.iloc[-1]:
            self.sell(bar.code, 100, bar.close)

    def on_trade(self, trade):
        print(f"交易执行: {trade}")

2. 套利策略 (qahedgebase.py)

3. 因子策略 (qafactorbase.py)

策略生命周期

1. 初始化阶段

2. 数据处理阶段

3. 风险管理

回测框架

1. 回测配置

2. 回测执行

实盘交易

1. 实盘配置

2. 实盘执行

多策略管理

策略同步 (syncoms.py)

性能评估

1. 收益指标

2. 风险指标

最佳实践

  1. 策略开发:

    • 先在回测环境验证策略逻辑

    • 进行充分的历史数据测试

    • 考虑交易成本和滑点影响

  2. 风险控制:

    • 设置合理的止损和止盈条件

    • 控制单笔交易和总持仓规模

    • 实施适当的仓位管理

  3. 实盘部署:

    • 从小资金开始实盘验证

    • 监控策略表现和系统稳定性

    • 建立异常情况处理机制

相关模块

  • QIFI: 账户管理和风险控制

  • QAData: 数据结构和技术指标

  • QAEngine: 策略并行执行

  • QAMarket: 订单和持仓管理

Last updated

Was this helpful?