跳转至

Core 模块

QKA系统的核心功能模块,包含配置管理、事件系统、回测引擎等关键组件。

模块列表

config.py

配置管理系统,支持多种配置源和动态配置更新。

主要类: - Config - 主配置管理类 - ConfigError - 配置相关异常

核心功能: - 文件配置加载(YAML、JSON、TOML) - 环境变量配置 - 代码配置 - 配置验证和模板生成

events.py

事件驱动框架,提供发布-订阅模式的事件处理机制。

主要类: - Event - 基础事件类 - EventBus - 事件总线 - MarketDataEvent - 市场数据事件 - OrderEvent - 订单事件 - TradeEvent - 交易事件

核心功能: - 事件发布和订阅 - 异步事件处理 - 事件统计和监控 - 内置交易相关事件

backtest.py

回测引擎,提供策略回测的核心逻辑。

主要功能: - 历史数据回测 - 策略执行模拟 - 性能指标计算 - 结果分析和报告

data.py

数据处理模块,负责市场数据的获取和处理。

主要功能: - 数据源接入 - 数据清洗和预处理 - 数据缓存和存储 - 数据格式转换

plot.py

绘图工具模块,提供回测结果和数据的可视化功能。

主要功能: - 回测结果可视化 - 技术指标图表 - 交易信号展示 - 性能分析图表

使用示例

from qka.core import Config, EventBus
from qka.core.events import MarketDataEvent

# 初始化配置
config = Config()
config.load_from_file('config.yaml')

# 创建事件总线
bus = EventBus()

# 注册事件处理器
@bus.subscribe('market_data')
def handle_market_data(event):
    print(f"收到市场数据: {event.data}")

# 发布事件
event = MarketDataEvent(symbol='AAPL', price=150.0, volume=1000)
bus.publish(event)

模块依赖关系

graph TD
    A[config.py] --> D[backtest.py]
    B[events.py] --> D
    C[data.py] --> D
    D --> E[plot.py]
    A --> B
    A --> C

Core模块是整个QKA系统的基础,其他模块都依赖于这些核心组件。