第二章 市场微观结构:订单簿深度解析
做高频交易,说白了就是在跟市场微观结构打交道。很多人一上来就研究各种指标,却忽略了最底层的东西——订单簿。我个人习惯,看一个交易员水平怎么样,先问他怎么看订单簿。
这一章,我们就把订单簿、价差、流动性这些东西彻底讲透。嗯,都是实战中每天要面对的东西。
2.1 订单簿(Order Book)到底是什么?
订单簿就是交易所的「记账本」。它记录了所有交易者挂出的买单和卖单。你想想看,没有订单簿,市场就乱套了。
一个典型的订单簿结构是这样的:
| 价格 | 卖单量 | 买单量 | 价格 |
|---|---|---|---|
| 1.1050 | 200万 | ||
| 1.1049 | 150万 | ||
| 1.1048 | 100万 | ||
| 1.1047 | 80万 | 1.1047 | |
| 1.1046 | 120万 | 1.1046 | |
| 1.1045 | 180万 | 1.1045 |
左边是卖单墙,右边是买单墙。中间那个空隙,就是买卖价差。
核心概念:订单簿的深度,决定了你的大单能不能顺利成交。我在项目中遇到过,一个看似流动性很好的品种,结果一进去就把价格打穿了。
2.2 买卖价差(Bid-Ask Spread)
价差就是最佳卖价和最佳买价之间的差值。EUR/USD通常只有0.1-0.3个点,但一些冷门货币对可能到5个点以上。
为什么会这样?说白了就是流动性。参与者越多,竞争越激烈,价差就越小。
我给你们看个真实数据:
| 货币对 | 典型价差(点) | 流动性等级 |
|---|---|---|
| EUR/USD | 0.1 - 0.3 | 极高 |
| USD/JPY | 0.2 - 0.5 | 高 |
| GBP/USD | 0.3 - 0.8 | 中高 |
| USD/TRY | 3 - 10 | 低 |
实战技巧:做高频交易,我建议只做价差小于0.5个点的品种。价差太大,你的策略还没赚钱就先亏在手续费上了。
2.3 市场深度与流动性
市场深度,就是订单簿上各个价位的挂单量。深度越厚,说明市场越有「厚度」,大单进来不容易滑点。
我曾经吃过一次亏。当时做USD/ZAR,看着价差不大,就进去了。结果一个50万的单子,直接把价格推了10个点。为什么?因为深度太薄了,中间没有足够的挂单来承接。
衡量流动性有几个关键指标:
- 买卖价差:越小越好
- 订单簿深度:前5档挂单总量
- 成交速度:市价单能否立即成交
- 滑点幅度:大单成交时的价格偏移
警告:别只看价差!有些品种价差小,但深度极差。你想想看,一个只有100万深度的市场,你进去200万,不滑点才怪。
2.4 订单类型与执行逻辑
做高频交易,订单类型就是你的武器。用错了,再好的策略也白搭。
市价单(Market Order)
立即以当前最优价成交。优点是快,缺点是可能滑点。我一般只在确定性很高的时候用。
限价单(Limit Order)
指定价格挂单,不成交就等着。优点是能控制成本,缺点是可能成交不了。
止损单(Stop Order)
价格触及某个位置才激活。做风控必备。
这里有个关键点:市价单吃掉流动性,限价单提供流动性。做高频交易,很多时候你是在跟别人的限价单博弈。
我给你们看个简单的MQL5代码,演示如何读取订单簿:
// 获取当前品种的订单簿深度
void GetOrderBookDepth(string symbol)
{
MqlBookInfo book[];
MarketBookGet(symbol, book);
double bestBid = 0, bestAsk = 0;
double bidVolume = 0, askVolume = 0;
for(int i = 0; i < ArraySize(book); i++)
{
if(book[i].type == BOOK_TYPE_BUY)
{
if(bestBid == 0 || book[i].price > bestBid)
bestBid = book[i].price;
bidVolume += book[i].volume;
}
else if(book[i].type == BOOK_TYPE_SELL)
{
if(bestAsk == 0 || book[i].price < bestAsk)
bestAsk = book[i].price;
askVolume += book[i].volume;
}
}
double spread = (bestAsk - bestBid) / Point();
Print("价差: ", spread, " 点");
Print("买单总量: ", bidVolume, " 卖单总量: ", askVolume);
}
避坑指南:我曾经在回测时忽略了订单簿的实时变化,结果实盘一跑,滑点直接把收益吃掉了。记住,回测一定要模拟真实的订单簿状态。
2.5 知识体系总览
下面这张图,把本章的核心逻辑串起来了:
这张图把四个核心概念串起来了。你想想看,订单簿是基础,价差是结果,流动性是环境,订单类型是工具。缺一个,你的交易体系就不完整。
好了,这一章就到这里。记住,理解市场微观结构,是做好高频交易的第一步。别急着写策略,先把订单簿看明白。