2026-04-07 19:30:42 +08:00
2026-04-07 14:46:49 +08:00
2026-04-07 14:46:49 +08:00
2026-04-07 12:22:57 +08:00
2026-04-07 19:30:42 +08:00
2026-04-07 14:46:49 +08:00
2026-04-07 14:46:49 +08:00
2026-04-07 14:46:49 +08:00
2026-04-07 12:22:57 +08:00
2026-04-07 12:22:57 +08:00
2026-04-07 12:22:57 +08:00
2026-04-07 14:46:49 +08:00

QMT数据采集器

项目简介

QMT数据采集器是一个专门用于从QMT量化交易平台采集实时交易数据的Go语言应用程序。该采集器能够定时获取账户资产、订单状态、持仓信息和市场行情数据并将这些数据存储到PostgreSQL数据库中为量化交易策略提供数据支持。

业务功能

1. 实时数据采集

  • 账户资产监控:实时采集账户现金、冻结资金、市值、盈亏和总资产等关键财务指标
  • 订单状态跟踪:持续监控股票订单的状态变化,包括已成交、未成交、部分成交等各种状态
  • 持仓信息管理:记录每只股票的持仓数量、可用数量、成本价、当前价及盈亏情况
  • 行情数据捕获收集股票的实时Tick数据包括买卖五档价格、成交量、成交额等市场深度信息

2. 智能变化检测

  • 采用SHA256哈希算法对采集的数据进行指纹计算
  • 只有当数据发生变化时才执行数据库写入操作,避免重复数据存储
  • 有效减少数据库负载,提高系统运行效率

3. 定时任务调度

  • 基于Cron表达式实现灵活的定时采集策略
  • 可配置的采集间隔默认5秒适应不同的业务需求
  • 稳定的后台运行机制,支持长时间连续工作

4. 数据持久化存储

  • 使用PostgreSQL作为数据存储后端确保数据可靠性和一致性
  • 支持数据 Upsert 操作(存在则更新,不存在则插入)
  • 按日期分区管理数据,便于历史数据查询和分析

5. 运行状态监控

  • 完整的采集日志记录,包括成功/失败状态和数据变化情况
  • 详细的错误信息记录,便于问题排查和系统维护

技术特性

  • 高性能采用Go语言开发具有出色的并发处理能力
  • 低延迟优化的HTTP客户端配置确保快速响应数据请求
  • 高可靠性:完善的错误处理机制和事务保证
  • 易扩展:模块化设计,便于功能扩展和维护
  • 资源友好:智能的变化检测机制,减少不必要的数据库操作

应用场景

  • 量化交易策略的数据支撑
  • 投资组合实时监控
  • 交易行为分析与回溯
  • 风险管理数据基础
  • 自动化交易系统的数据输入

系统要求

  • Go 1.26.1 或更高版本
  • PostgreSQL 数据库
  • 网络连接访问QMT平台API

部署说明

  1. 克隆代码库
  2. 配置环境变量:
    • COLLECTOR_URL: QMT数据接口地址
    • DATABASE_URL: PostgreSQL连接字符串
    • COLLECTION_INTERVAL: 采集间隔(秒)
  3. 编译并运行程序

注意事项

  • 确保QMT平台服务正常运行并可访问
  • 数据库需要具备相应的读写权限
  • 建议在生产环境中配置合适的日志级别和监控告警
Description
qmt client collector
Readme 68 KiB
Languages
Go 99.4%
Shell 0.6%