当前位置: 首页 > news >正文

QMT 量化入门:掌握这 4 个核心 API,即可开启策略编写

本文整理了 QMT 量化交易中最核心的 4 个 API 接口,覆盖数据下载、行情读取、财务获取、交易执行全流程,新手吃透即可快速上手基础策略开发。

目录

  • 前言
  • 行情下载接口:download_history_data
  • 行情读取接口:get_market_data_ex
  • 财务数据接口:get_financial_data
  • 下单执行接口:passorder
  • 总结

一、前言

很多刚接触 QMT 量化交易软件的开发者,常会被繁多的接口劝退。实际上,入门量化策略编写并不需要掌握全部 API—— 只要吃透4 个核心接口,就能打通「数据获取→指标计算→信号生成→交易执行」的完整闭环。

本文就带大家逐一拆解这 4 个关键 API,附可直接运行的示例代码,帮大家快速跨过 QMT 的入门门槛。

二、行情下载接口:download_history_data

量化策略的基础是行情数据,download_history_data负责将指定标的的历史行情下载到本地缓存,是回测和策略运行的前提。

接口能力

  • 支持多周期数据:Tick 级、分钟线、日线等全周期行情
  • 下载的数据会缓存到本地,后续读取无需重复下载
  • 支持单标的、多标的批量下载

⚠️ 注意:Tick 和 1 分钟级数据体量较大,长期下载请预留足够的硬盘空间。

示例代码

#encoding:gbk def init(C): # 下载平安银行 2023-01-01 至 2025-04-08 的日线数据 download_history_data("000001.SZ", "1d", "20230101", "20250408") print('历史行情下载完成') def handlebar(C): pass

核心参数

表格

参数位置参数说明示例值
第 1 位标的代码(代码 + 交易所后缀)000001.SZ(深市)、600000.SH(沪市)
第 2 位数据周期tick/1m/1d
第 3 位开始日期(YYYYMMDD 格式)20230101
第 4 位结束日期(YYYYMMDD 格式)20250408

三、行情读取接口:get_market_data_ex

数据下载到本地后,通过get_market_data_ex接口读取结构化的行情数据,是策略计算的核心数据来源。

接口能力

  • 基础行情:开盘价、收盘价、最高价、最低价、成交量、成交额等
  • 扩展行情:大单金额、涨跌停价、北向资金、净买入净卖出等特色指标
  • 支持单标的、股票池批量获取,支持历史与实时行情

示例代码

获取平安银行日线收盘价的完整示例:

#encoding:gbk def init(C): # 1. 先下载历史行情数据 download_history_data("000001.SZ", "1d", "20230101", "20250408") print('历史行情下载完成') # 2. 读取收盘价数据 datas = C.get_market_data_ex( ['close'], # 待获取的行情字段 ['000001.SZ'], # 标的代码列表 period='1d', # 数据周期 start_time='20230101', end_time='20250408', count=-1 # 取全部数据,填数字则取最近N根 ) print('获取行情数据结果:') print(datas) def handlebar(C): pass

返回结果示例

接口返回字典格式,键为标的代码,值为时间索引的行情数据:

{ '000001.SZ': close stime 20230103 12.277728 20230104 12.768124 20230105 12.910785 20230106 13.035613 20230109 13.196106 ... }

四、财务数据接口:get_financial_data

基本面量化策略依赖上市公司财务数据,get_financial_data用于获取全维度的财务指标,支撑基本面因子计算。

接口能力

  • 覆盖股本、利润、现金流、资产负债表等全部财报科目
  • 可计算 PE、PB、ROE、EPS 等常用基本面指标
  • 支持按报告期、披露时间两种对齐方式

示例代码

获取平安银行总股本数据的示例:

#encoding:gbk def init(C): # 下载基础行情数据 download_history_data("000001.SZ", "1d", "20230101", "20250408") # 获取财务数据:总股本 df = C.get_financial_data( ['CAPITASTRUCTUR.total_capital'], # 财务字段名 ["000001.SZ"], # 标的列表 startDate='20230101', endDate='20250408', report_type='report_time' # 按报告披露时间对齐 ) print('获取总股本数据:') print(df) def handlebar(C): pass

返回结果示例

total_capital 20230103 1.940592e+10 20230104 1.940592e+10 20230105 1.940592e+10 ...

五、下单执行接口:passorder

策略计算出交易信号后,通过passorder接口完成交易委托,是量化交易的执行入口。

接口能力

  • 支持多种交易方向:买入、卖出、融资买入、融券卖出等
  • 支持多种委托方式:限价、最新价、市价、涨跌停价等
  • 适配股票、两融、期货、期权等全品种交易

示例代码

以「最新价买入 100 股平安银行」为例:

#encoding:gbk def handlebar(C): # 仅在当日最后一根K线触发下单,避免重复委托 if not C.is_last_bar(): return # 此处替换为你的策略交易条件 if True: passorder( 23, # 交易方向:23=买入 1101, # 交易方式:1101=单股单账号按股数下单 '39134967', # 你的证券账号 '000001.SZ', # 标的代码 5, # 价格类型:5=最新价 0, # 价格参数,最新价委托填0 100, # 委托数量(单位:股) 1, # 策略标识,可自定义 1, # 快速下单标记 "", # 委托备注,可留空 C ) print("买入委托已提交")

关键参数说明

  • 交易方向:23 代表买入,24 代表卖出
  • 价格类型:5 为最新价,高频策略可选用市价委托提升成交率
  • 交易方式:1101 为普通股票按股数委托,两融、期货等品种需对应调整编码

六、总结

从手工交易转向量化交易,本质是熟悉工具的接口逻辑与运行规则。本文介绍的 4 个 API 覆盖了量化策略的全生命周期:

  1. download_history_data解决「数据从哪来」
  2. get_market_data_ex解决「行情怎么读」
  3. get_financial_data解决「基本面怎么算」
  4. passorder解决「交易怎么执行」

吃透这 4 个核心接口,你就具备了编写基础量化策略的能力。后续可以在此基础上扩展指标计算、仓位管理、风控模块,逐步搭建成熟的量化交易体系。

风险提示:本文仅为技术接口科普,不构成任何投资建议。量化交易存在风险,入市需谨慎。

http://www.cnnetsun.cn/news/2993606.html

相关文章:

  • Windows环境下Clion控制台中文乱码问题解决方案
  • OpenARK终极指南:免费开源Windows系统安全分析工具完整教程
  • AI开题报告工具让导师说“这次写得很扎实”,8款AI论文工具实测
  • flink 新旧connector的区别
  • 3步终极修复方案:彻底解决macOS升级后Mac Mouse Fix侧键失效问题
  • 突破性AI翻译实战:用宝玉Prompt实现专业级英译中效果
  • 剩余六个月备考管综考试,需要一套适合自己的规划!
  • 2026年语音转文字软件对比 日常办公场景大横评,差距竟然这么大
  • 终于找到做零添加老酸奶代工的源头厂!配方超干净
  • Vue2 + ElementUI 批量更新排序/产品分类完整实现
  • AI 大模型就业:真实开发里的落地路径
  • 行业内口碑顶尖!这3家推拉力测试机供应商为何备受信赖?
  • 车企需求验证:smart - mqtt 高可用比性能更重要
  • 使用Gemini显示“出了点问题”又或者“Somethingwent wrong”出错?
  • 客服机器人什么算好?电商AI客服系统选型,90%的商家都踩过这7个坑!
  • 扣子(Coze)(1):零基础入门指南
  • 进程的五态模型
  • 现场停线没人理?这套安灯管理系统经验,让响应速度直接翻倍
  • Django毕设选题推荐:基于 Django-Vue 架构的试题库管理系统设计与开发【附源码、mysql、文档、调试+代码讲解+全bao等】
  • AI工程范式的又一次演进:Harness Engineering
  • AI生成前端如何摆脱机械感?OpenClaw+Next.js人格化渲染实践
  • DMXAPI+Qwen3.7-Max智能体实战:从PLC文档化看AI编程落地
  • Salt Master生产部署指南:Ubuntu 24.04从零安装与故障排查
  • 嵌入式系统Flash存储与COP看门狗:高可靠性设计的核心机制与实践
  • OpenClaw本地AI工作流引擎:解压即用的原理与Windows 11适配深度解析
  • AMP HTML:移动端内容秒开的结构化网页契约
  • BGPalerter实战:Ubuntu 18.04上部署秒级BGP路由异常告警
  • Qwen 3.6-Plus:面向Node.js开发者的国产编程AI落地实践
  • AI道德对齐:机器决策中的价值观匹配与挑战
  • 嵌入式音频接口SSI配置详解:I2S与AC97模式实战与调试