摘要: 量化交易接口支持行情、基本面、订单与成交、持仓资金、衍生指标等数据类型。期货需关注合约乘数、保证金、主力连续,股票需关注复权因子与财务数据。

量化交易接口核心数据分类

量化交易接口返回的数据直接决定策略逻辑与执行效果。股票与期货场景下,接口支持的数据类型可划分为六个核心类别。

行情数据

行情数据是量化接口最基础的类型。股票接口通常提供:

  • 实时快照:最新价、买卖五档或十档盘口、成交量、成交额、换手率。

  • 历史K线:1分钟、5分钟、15分钟、30分钟、60分钟、日线、周线、月线,字段包含开盘、最高、最低、收盘、成交量、成交额、持仓量(期货)。

  • Tick数据:逐笔成交与逐笔委托,包含时间戳、价格、数量、买卖方向。

  • 期货特有:主力合约、次主力合约、连续合约(如主力连续、指数连续)、夜盘行情、结算价、昨结算。

股票行情中复权因子是必要字段,前复权、后复权、不复权影响回测收益计算。期货行情需关注合约乘数、最小变动价位、涨跌停板价格。

量化交易接口支持哪些数据类型

基本面数据

股票基本面接口提供:

  • 财务指标:市盈率、市净率、每股收益、净资产收益率、营收同比、净利润同比、毛利率、负债率。

  • 财务报表:资产负债表、利润表、现金流量表,按报告期返回。

  • 股本股东:总股本、流通股本、股东户数、十大股东持股。

  • 分红送转:每股分红、送股比例、除权除息日

期货基本面接口提供:

  • 合约信息:交割月份、最后交易日、交割日、保证金率、手续费率、合约乘数。

  • 库存数据:交易所仓单日报、库存小计。

  • 基差数据:现货价格、期货价格、基差、基差率。

  • 展期收益率:近月与远月价差年化。

订单与成交数据

交易接口返回的订单与成交数据用于策略监控与风控。

股票订单字段:订单编号、股票代码、买卖方向、订单类型(限价、市价、算法单)、价格、数量、已成交数量、撤单数量、订单状态(待报、已报、部成、已成、已撤、废单)。

期货订单字段额外包含:开平标志(开仓、平仓、平今)、投机套保标志、有效期(当日有效、撤销前有效)。

成交数据包含:成交编号、成交时间、成交价格、成交数量、成交金额、手续费、平仓盈亏(期货)。

持仓与资金数据

账户接口返回:

  • 股票持仓:证券代码、持仓数量、可用数量、成本价、当前价、市值、浮动盈亏、当日盈亏。

  • 期货持仓:合约代码、买卖方向、开平仓、持仓手数、持仓均价、最新价、保证金占用、浮动盈亏、平仓盈亏、今仓与昨仓分离。

  • 资金账户:总资产、可用资金、冻结资金、可取资金、风险度(期货)、保证金可用。

衍生指标数据

接口可计算或直接返回衍生指标。

股票衍生:移动平均线、布林带、RSI、MACD、ATR、波动率、Beta、夏普比率。

期货衍生:持仓量变化、多空比、展期价差、期限结构(升水/贴水)、隐含波动率(期权接口)。

代码示例:读取期货行情与持仓数据


import pandas as pd

# 假设使用某量化接口的Python SDK

from quant_api import DataApi, TradeApi

data_api = DataApi(token='your_token')

trade_api = TradeApi(token='your_token')

# 获取期货主力合约日线行情

df_kline = data_api.get_futures_kline(

    symbol='RB2410',

    period='1d',

    start='2024-01-01',

    end='2024-06-01',

    fields=['open','high','low','close','volume','open_interest']

)

print(df_kline.tail())

# 获取期货合约信息

contract_info = data_api.get_futures_contract_info(symbol='RB2410')

print(contract_info['multiplier'], contract_info['margin_rate'])

# 查询股票基本面

stock_funda = data_api.get_stock_fundamental(

    symbol='600519',

    fields=['pe_ttm','pb','roe','revenue_yoy']

)

print(stock_funda)

# 查询期货持仓

positions = trade_api.get_positions()

for pos in positions:

    print(pos['symbol'], pos['direction'], pos['volume'], pos['avg_price'], pos['float_pnl'])

# 查询订单与成交

orders = trade_api.get_orders(status='all')

trades = trade_api.get_trades(start='2024-05-01')

print(len(orders), len(trades))

接口数据字段命名因供应商不同存在差异。股票接口常使用tickertrade_dateadj_factor;期货接口常使用symbolexchangeopen_interest。对接时需核对字段映射。

数据频率与更新机制

股票行情快照通常3秒一次,Tick数据逐笔推送。期货行情快照500毫秒一次,夜盘连续交易。基本面数据按季度或年度更新。订单与持仓数据实时推送或轮询。

接口数据类型选择建议

股票策略回测需要日线行情、复权因子、财务数据。期货策略回测需要主力连续合约、合约乘数、保证金率、手续费。高频策略需要Tick数据与逐笔委托。风控系统需要实时持仓、资金、订单状态。

不同数据类型对应不同接口权限。股票Level-2行情需要额外授权。期货五档行情通常免费,逐笔委托需付费。基本面数据多数供应商提供免费历史财务指标。

接口返回格式常见JSON、CSV、DataFrame。量化平台如vn.py、Backtrader、Zipline适配多种数据源。对接时注意时区、复权方式、合约换月规则。期货主力连续合约在换月时价格跳跃,回测需处理价差。

股票退市、停牌、ST状态影响数据连续性。期货交割月合约流动性下降,需提前移仓。接口数据类型覆盖越全,策略开发越灵活。