QIFI 模块文档

概述

QIFI (QUANTAXIS Isolated Financial Interface) 是 QUANTAXIS 的统一账户系统,提供了跨市场、跨语言的标准化账户管理接口。QIFI 设计用于支持多市场交易(股票、期货、期权等),并保持与 Rust/C++ 版本的账户结构一致性。

模块架构

核心组件

  1. QifiAccount.py: QIFI 账户核心实现

    • 统一的账户管理接口

    • 支持实盘和模拟交易

    • 跨市场持仓管理

    • 动态权益计算

  2. QifiManager.py: QIFI 账户管理器

    • 多账户管理系统

    • 账户组合管理

    • 账户状态监控

  3. qifisql.py: QIFI 数据持久化

    • 账户数据存储

    • 交易记录管理

    • 数据查询接口

核心特性

1. 跨市场支持

QIFI 不区分持仓的具体市场类型,支持:

  • 股票市场

  • 期货市场

  • 期权市场

  • 数字货币市场

2. 多语言一致性

与 QUANTAXIS Rust/C++ 版本保持账户结构一致:

  • 相同的数据格式

  • 统一的接口设计

  • 跨语言数据交换

3. 灵活部署模式

支持多种运行模式:

  • SIM: 模拟交易模式

  • REAL: 实盘交易模式

  • nodatabase: 离线模式

QIFI_Account 类

初始化参数

主要属性

核心功能

1. 订单处理

2. 持仓管理

3. 权益计算

QIFI 支持动态权益计算:

  • 实时价格更新

  • 浮动盈亏计算

  • 保证金占用计算

  • 可用资金计算

QifiManager 管理器

QA_QIFIMANAGER

QA_QIFISMANAGER

多账户批量管理:

数据库支持

MongoDB 存储

ClickHouse 分析

支持高性能数据分析:

  • 交易记录分析

  • 性能统计

  • 风险指标计算

使用示例

基础用法

实盘账户

离线模式

多账户管理

市场预设支持

配置说明

环境变量配置

需要在 qaenv 中配置:

模式配置

  1. SIM 模式:

    • 模拟交易

    • 虚拟资金

    • 用于策略测试

  2. REAL 模式:

    • 实盘交易

    • 真实资金

    • 连接实际券商

最佳实践

  1. 账户隔离: 不同策略使用不同的账户或组合

  2. 风险控制: 设置合理的持仓限制和止损规则

  3. 数据备份: 定期备份账户数据和交易记录

  4. 监控告警: 设置账户异常状态的监控告警

注意事项

  1. 线程安全: 多线程环境下需要注意账户操作的线程安全

  2. 数据一致性: 确保账户数据在各个组件间的一致性

  3. 异常处理: 网络中断或数据库异常的处理机制

  4. 权限管理: 实盘环境下的账户权限和安全控制

相关模块

  • QAMarket: 提供市场预设和订单、持仓管理

  • QAUtil: 提供基础工具和数据库连接

  • QAStrategy: 策略回测和实盘交易中使用QIFI账户

Last updated

Was this helpful?