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

发布时间:2026/6/23 20:11:08
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], # 标的代码列表 period1d, # 数据周期 start_time20230101, end_time20250408, 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], # 标的列表 startDate20230101, endDate20250408, report_typereport_time # 按报告披露时间对齐 ) print(获取总股本数据) print(df) def handlebar(C): pass返回结果示例total_capital 20230103 1.940592e10 20230104 1.940592e10 20230105 1.940592e10 ...五、下单执行接口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 覆盖了量化策略的全生命周期download_history_data解决「数据从哪来」get_market_data_ex解决「行情怎么读」get_financial_data解决「基本面怎么算」passorder解决「交易怎么执行」吃透这 4 个核心接口你就具备了编写基础量化策略的能力。后续可以在此基础上扩展指标计算、仓位管理、风控模块逐步搭建成熟的量化交易体系。风险提示本文仅为技术接口科普不构成任何投资建议。量化交易存在风险入市需谨慎。