一、滑点与拆单基础:从一次真实交易说起
我记得刚入行那会儿,带我的老交易员跟我说过一句话:「你下的每一笔单子,都在改变市场。」当时我不太理解。直到有一次,我试图用市价单吃掉一个中等规模的卖单,结果成交均价比我预期的差了整整两个tick。嗯,这就是滑点——每个做量化的人迟早都会撞上的墙。
什么是滑点?说白了就是「预期价」和「成交价」之间的差距
你盯着屏幕,看到某只股票当前卖一价是10.00元。你心想:「好,就这个价,下个市价单买1000股。」结果成交回报回来,均价是10.03元。这0.03元就是滑点。
滑点不是手续费,不是印花税。它是市场对你这笔交易的「惩罚」。你想想看,市场凭什么让你以看到的价格成交?尤其是当你手里的单子比较大的时候。
滑点 = 实际成交均价 - 预期成交价格
对于买单,滑点通常是正值(买贵了);对于卖单,滑点通常是负值(卖便宜了)。
滑点是怎么产生的?三个罪魁祸首
我在项目中遇到过不少新手,一上来就怪交易系统延迟高、怪券商通道慢。其实滑点的根源,无非就三个:
1. 市场冲击——你本身就是「市场噪音」
这是最核心的原因。当你下了一笔大单,你就在消耗订单簿上的流动性。比如卖一挂了1000股,你一口气吃掉它,那卖二、卖三的价格自然就更高。你的交易行为本身,推高了价格。
说白了,市场冲击就是你「自己跟自己过不去」。单子越大,冲击越明显。
我个人的经验:对于流动性一般的股票,如果你的单子超过了日均成交量的0.5%,就要开始考虑拆单了。否则滑点会让你怀疑人生。
2. 流动性不足——池子太小,鱼太大
有些股票一天就成交几百万。你一个100万的单子砸进去,相当于把整个池子搅了个底朝天。订单簿上稀稀拉拉的挂单,根本接不住你的量。
为什么会这样?因为做市商和流动性提供者不是傻子。他们看到大单来了,要么撤单,要么把价差拉大。结果就是——你越急着买,价格越往上蹿。
3. 延迟——你看到的「现在」已经是「过去」
这个好理解。从你的交易终端到交易所撮合引擎,中间经过网络、网关、前置机……每一毫秒的延迟,都意味着行情已经变了。你看到10.00的时候,可能市场上已经有人以10.01成交了。
我曾经做过一个测试:同一笔单子,用普通散户通道和用托管机房直连,滑点差距能到3倍以上。嗯,这就是为什么高频交易公司愿意花大价钱把服务器塞进交易所机房里。
| 滑点来源 | 本质原因 | 典型场景 |
|---|---|---|
| 市场冲击 | 你的交易改变了供需 | 大单吃薄盘 |
| 流动性不足 | 对手盘深度不够 | 小盘股、冷门品种 |
| 延迟 | 信息传递有时间差 | 行情滞后、网络抖动 |
拆单的核心思想:大单化小,化整为零
既然大单会砸出滑点,那最简单的思路就是——别一次砸完。把100万股拆成1000笔,每笔1000股,分散到一段时间内慢慢吃。这就是拆单。
你想想看,如果你在菜市场买100斤土豆,你一次性跟老板说「全包了」,老板肯定坐地起价。但如果你分10次,每次买10斤,每次换个摊位……嗯,价格就好谈多了。
拆单的本质,就是把你的交易意图隐藏起来。让市场觉得你只是个普通的小散户,而不是一条鲨鱼。
拆单的核心原则:
- 时间分散:把大单切成小片,分布在多个时间点执行
- 价格分散:不追高、不杀跌,利用价格波动寻找更好的成交位置
- 路径分散:如果支持多交易通道,可以分流执行
拆单的直观理解:一张图说清楚
下面这张图展示了拆单前后的对比。左边是一次性下大单,价格被瞬间推高;右边是拆成小单后,价格波动平缓,滑点明显降低。
拆单不是什么?先避个坑
我曾经犯过的错:刚开始做拆单时,我以为只要把单子切成小份,随便扔进去就行了。结果呢?滑点确实小了,但成交时间拖得太长,最后市场反转,反而亏得更多。
拆单不是「无脑切碎」。它需要平衡三个东西:
- 滑点成本——拆得越碎,单笔冲击越小
- 时间成本——拆得越碎,执行时间越长,市场风险越大
- 暴露风险——拆得越碎,越容易被别人嗅到你的意图
拆单的三种基本模式
在实际项目中,我常用的拆单策略大致分三类。这里先简单列一下,后面章节会逐个深入:
- 时间加权平均价格(TWAP):把时间切成等份,每份下等量单子。简单粗暴,适合流动性好的品种。
- 成交量加权平均价格(VWAP):根据历史成交量分布来分配单量。流动性好的时段多下,差的时段少下。
- 自适应拆单:根据实时市场状态动态调整下单节奏。这个最复杂,但效果也最好。
我个人的建议:刚开始做拆单,别一上来就搞自适应。先跑通TWAP,感受一下滑点的变化规律。等你对市场冲击有了直觉,再上更复杂的策略。
一个小例子:拆单前后的滑点对比
假设你想买入10万股某股票,当前价格10.00元。我们看看拆与不拆的区别:
| 执行方式 | 单笔数量 | 成交均价 | 滑点(元/股) | 总滑点成本 |
|---|---|---|---|---|
| 一次性市价单 | 100,000 | 10.05 | 0.05 | 5,000 |
| 拆成10笔,每笔10,000 | 10,000 × 10 | 10.02 | 0.02 | 2,000 |
| 拆成100笔,每笔1,000 | 1,000 × 100 | 10.01 | 0.01 | 1,000 |
你看,同样是买10万股,拆得越细,滑点越低。但代价是什么?拆成100笔,可能需要十几分钟甚至更久才能全部成交。这期间如果股价涨了,你反而亏更多。
所以,拆单不是万能药。它是一个权衡的艺术。
本章小结
滑点是你交易时躲不开的成本。它来自市场冲击、流动性不足和延迟。拆单的核心思路就是「大单化小,化整为零」,通过时间分散来降低每笔交易对市场的冲击。
但记住,拆单不是越碎越好。你需要找到那个平衡点——既不让市场发现你,又不在等待中错失机会。
下一章,我们会深入拆解TWAP策略,看看这个最基础的拆单算法到底怎么用代码实现。嗯,到时候我会把我在实战中踩过的坑一并告诉你。
公众号:蓝海资料掘金营,微信deep3321