2. 金融市场与交易基础
量化研究与系统化交易的第一性前提,是理解“你究竟在什么市场、用什么规则、和谁交易”。策略的信号、回测的成交假设、风控的边界,全部由市场结构与交易机制决定。同一套均线策略,在股票现货、股指期货与外汇保证金上的表现差异,往往不是信号本身造成的,而是交易机制差异造成的。本节围绕市场结构、订单类型、参与者角色三条主线展开,并给出可落地的对照清单。
一、核心原理:四类市场的结构差异
股票、期货、期权、外汇并非“不同品种”,而是四套不同的合约与清算体系。理解它们,关键是抓住四个维度:交易标的、杠杆与保证金、交易方向、清算与到期。
- 股票市场:交易的是公司所有权凭证,现货全额交易(A股无普遍杠杆),一般只能做多,分红送转影响价格连续性,需复权处理。
- 期货市场:交易的是标准化远期合约,保证金交易自带杠杆,可双向开仓,有到期日与交割机制,需关注主力合约切换与展期成本。
- 期权市场:交易的是“权利”,买方付权利金、风险有限,卖方收权利金、保证金与风险更高;价格受标的、行权价、到期时间与波动率共同影响。
- 外汇市场:场外(OTC)为主、24小时连续交易、无中央交易所,以货币对报价,杠杆高、点差与隔夜利息是主要成本。
核心结论:回测前必须先确定“市场微结构假设”——是否有杠杆、能否做空、是否有到期、成本如何计。忽略这些,回测收益就是纸面数字。
二、交易机制与订单类型:从下单到成交
交易机制决定“你的意图如何变成成交价”。核心要素包括撮合方式、订单类型、报价方式与交易时段。
按撮合方式,可分为指令驱动(如A股、多数期货,买卖盘直接撮合,价格由盘口决定)与报价驱动(如外汇、部分做市商市场,由做市商持续报出买卖价,交易者按报价成交)。A股还叠加了T+1、涨跌停、集合竞价等制度约束。
常见订单类型及其量化含义如下:
| 订单类型 | 成交特征 | 量化使用场景 |
|---|---|---|
| 市价单 Market | 立即成交,价格不确定 | 追求成交确定性,需承担滑点 |
| 限价单 Limit | 价格确定,成交不确定 | 控制成本,适合流动性好的标的 |
| 止损单 Stop | 触发后转市价,存在跳空风险 | 风控离场,不宜作为主要入场 |
| 止损限价单 Stop-Limit | 触发后挂限价,可能不成交 | 极端行情下防止成交在坏价格 |
| 冰山/算法单 | 拆分隐藏大单 | 降低冲击成本,机构常用 |
回测中若统一按“收盘价成交”,等于假设无限流动性、零滑点、无排队,这在期货与外汇上尤其失真。更合理的做法是按订单类型分别建模:市价单用下一根K线开盘价加滑点,限价单用“价格是否被触及”判断成交。
# 简化的成交建模示例(伪代码)
if order.type == "market":
fill_price = next_bar.open * (1 + slippage)
elif order.type == "limit":
if next_bar.low <= order.price <= next_bar.high:
fill_price = order.price
else:
fill_price = None # 未成交
三、参与者角色:谁在和你做对手盘
市场不是抽象的价格曲线,而是由不同动机的参与者构成。识别对手盘,才能理解流动性与价格行为。
- 套保者(Hedger):如企业锁定原材料成本,交易目的非盈利,常带来稳定的方向性压力。
- 投机者(Speculator):承担风险以获取价差,是量化策略的主要竞争者。
- 做市商(Market Maker):持续双边报价赚取点差,提供流动性,其库存管理会影响短期价格。
- 套利者(Arbitrageur):跨市场、跨期、跨品种纠正价差,是价格收敛的重要力量。
- 散户与机构:前者易受情绪驱动,后者受仓位与合规约束,行为模式差异显著。
实务提示:在流动性差的品种上,你的对手盘很可能是做市商而非其他投机者。此时策略应更关注点差与库存风险,而非单纯的方向预测。
四、案例与复盘:机制差异如何毁掉一个策略
假设某策略在沪深300股指期货上回测年化20%,逻辑是日内趋势跟踪。若直接搬到外汇市场,可能出现以下问题:
- 交易时段不同:外汇24小时连续,隔夜跳空少但亚洲时段流动性低,点差扩大,滑点上升。
- 杠杆与保证金不同:外汇杠杆远高于期货,同样仓位下回撤被放大,可能触发强平。
- 成本结构不同:外汇主要成本是点差与隔夜利息,高频交易下成本占比极高。
- 无到期与展期:期货需处理主力切换,外汇无到期但需管理隔夜利息。
复盘结论:策略迁移前,必须重新校准成本模型、仓位模型与成交模型。否则回测曲线只是特定市场机制的产物,不具备可移植性。
常见误区:把“回测收益高”等同于“策略有效”。若回测未考虑涨跌停无法成交、期货展期成本、外汇点差与隔夜利息,收益会被系统性高估。
五、方法流程:建立市场机制检查清单
在编写任何策略代码前,建议按以下流程完成市场机制确认:
- 确认交易标的与合约规则:是否有到期、交割、复权、主力切换。
- 确认交易方向与杠杆:能否做空、保证金比例、强平规则。
- 确认订单与撮合:可用订单类型、撮合方式、交易时段。
- 确认成本结构:手续费、点差、滑点、隔夜利息、冲击成本。
- 确认参与者结构:流动性来源、主要对手盘、极端行情行为。
把上述五项写成配置文件,作为回测引擎的输入参数,是系统化交易工程化的第一步。
market:
name: "沪深300股指期货"
leverage: 8
allow_short: true
expiry: true
order_types: ["market", "limit", "stop"]
cost:
commission: 0.000023
slippage_ticks: 1
session: "09:30-11:30, 13:00-15:00"