Lazy loaded image
QMT与通达信结合 4.0:监测交易系统,通达信公式自动交易系统
00 分钟
2025-3-6
2025-3-6
type
status
date
slug
summary
tags
category
icon
password

4.0 版本更新

  1. 主要增加了“卖出委托类型”功能选项“最优五档转限价”。该委托功能解决“最优五档”(最优五档即时成交剩余撤销)遇涨停或跌停无法委托的缺陷,可先检查是否涨停或跌停,若非涨跌停,以最优五档进委委托;若涨跌停,以最新价进行委托。
  1. 自己部署 python 环境的话,设置等跟其他版本一致:需要安装两个库,xtquant 和 apscheduler,其他的是标准库,不需安装。 xtquant 是小 QMT 的数据获取和交易的库,不支持通过 pip 安装,可以到官网 xtquant版本下载 | 迅投知识库 (thinktrader.net) 自行下载,然后放到你 python 安装所在的 site-packages 文件夹内。apscheduler 库可以通过 pip 安装,国内镜像可以使用 pip install apscheduler -i https://pypi.tuna.tsinghua.edu.cn/simple
  1. 若使用小白Python工具:三人聚智-余汉波程序控制工具使用说明 | 余汉波 文档,下载 yuhanbopy-lh,然后通过“本地文件”加载进来,便可以直接使用,不用作任何配置。
在当今快节奏的金融市场中,自动化交易系统已成为投资者的重要工具。本文将深入解析一个基于通达信和国金QMT的自动化交易系统的代码实现,帮助读者理解其工作原理、架构设计和核心功能。

1. 系统概述

通达信智能交易助手是一个将通达信行情软件与国金QMT交易系统相结合的自动化交易工具。该系统主要通过监控通达信的板块文件变化,自动执行相应的买入或卖出操作,实现无人值守的自动化交易。

1.1 系统核心功能

  • 自动监控通达信板块文件变化
  • 根据板块变化执行买入或卖出操作
  • 支持多种委托方式和价格策略
  • 智能资金管理和风险控制
  • 完整的日志记录系统
  • 图形用户界面操作

2. 代码结构分析

系统主要由两个核心类组成:MyXtQuantTraderCallbackTongDaXinTrader

2.1 回调处理类:MyXtQuantTraderCallback

MyXtQuantTraderCallback类继承自XtQuantTraderCallback,负责处理交易过程中的各种回调事件:
这个类的主要职责是接收交易系统的各种事件通知,并进行相应处理,如记录日志、更新交易状态等。
notion image

2.2 主交易类:TongDaXinTrader

TongDaXinTrader类是系统的核心,负责创建GUI界面、初始化交易环境、监控板块文件、执行交易操作等:

3. 核心功能实现详解

3.1 板块文件监控机制

系统通过定时任务监控通达信的板块文件变化,这是自动交易的触发机制:
monitor_file方法是监控的核心,它会检查板块文件的变化,并触发相应的交易操作:
notion image

3.2 股票路径处理

系统需要正确处理通达信的文件路径,以便读取板块文件:

3.3 交易执行逻辑

买入和卖出操作是系统的核心功能,下面以买入操作为例:

3.4 用户界面交互

系统提供了图形用户界面,方便用户配置和操作:
用户界面包含多个输入框,系统提供了一系列方法来处理输入框的默认值和实际值:

4. 系统工作流程

整个系统的工作流程可以概括为以下几个步骤:
  1. 用户配置通达信路径、买入/卖出板块、交易参数等
  1. 启动交易系统,初始化调度器和监控任务
  1. 系统定期检查板块文件变化
  1. 发现新的股票代码时,执行相应的买入或卖出操作
  1. 交易完成后,从板块文件中移除该股票代码
  1. 记录交易日志,更新界面显示

5. 使用的编程语言和库

系统主要使用Python语言开发,涉及以下库和模块:
  • tkinter: 用于创建图形用户界面
  • os: 处理文件路径和系统操作
  • json: 处理配置文件的读写
  • datetime: 处理日期和时间
  • threading: 实现多线程操作
  • time: 处理时间延迟和计时
  • random: 生成随机数
  • xtquant: 国金量化交易接口
  • apscheduler: 任务调度器,用于定时监控

6. 系统的潜在限制和改进建议

6.1 潜在限制

  1. 依赖外部软件: 系统依赖通达信和国金QMT,如果这些软件升级或接口变更,可能导致系统失效。
  1. 错误处理: 当前的错误处理机制较为简单,可能无法应对复杂的异常情况。
  1. 并发控制: 在高频交易场景下,可能存在并发问题。
  1. 安全性: 缺乏对交易指令的二次验证机制。

6.2 改进建议

  1. 增强错误恢复机制: 实现更完善的错误处理和自动恢复功能。
  1. 优化监控机制: 使用文件系统事件通知替代定时轮询,提高响应速度和效率。
  1. 增加回测功能: 集成回测模块,允许用户在实盘前验证策略有效性。
  1. 增强风控功能: 实现更复杂的风险控制策略,如波动率控制、最大回撤限制等。
  1. 数据持久化: 使用数据库存储交易记录,便于后续分析和优化。

7. 总结

通达信智能交易助手是一个将传统交易软件与现代量化交易技术相结合的系统,通过自动化监控和交易执行,帮助投资者提高交易效率,减少人为干预。系统设计合理,功能完善,但仍有优化空间。对于有一定技术背景的投资者来说,理解并使用这样的系统,可以显著提升交易体验和效率。

流程图

类图

通过本文的详细解析,读者应该能够全面理解通达信智能交易助手的代码结构、工作原理和核心功能,为进一步学习和应用量化交易技术打下基础。
上一篇
指数评估:板块轮动加速,估值分化加剧,如何把握投资机遇?
下一篇
指数评估:震荡中寻觅结构性机会,低估值与成长性并重

评论
Loading...