交易基础回顾:限价单、市价单、买卖盘口、滑点、手续费对网格策略的影响

做网格交易之前,有些基础概念必须搞透。说白了,这些就是交易的「底层语法」。语法都不熟,写出来的策略肯定跑偏。

我见过不少新手,一上来就调参数、跑回测,结果实盘亏得莫名其妙。为什么?就是没搞懂限价单和市价单的区别,也不知道滑点是怎么吃掉利润的。今天咱们就把这些基础掰开揉碎讲清楚。

一、限价单 vs 市价单:网格策略的左右手

网格策略的核心逻辑,就是「低买高卖」。但怎么买、怎么卖,这里头有讲究。

限价单,就是你指定一个价格,比如「我就在 100 块买」。不到这个价,单子就挂在那等着。网格策略里,大部分挂单都是限价单。为什么?因为网格要精确控制买入和卖出的价位,这样才能锁定利润空间。

市价单,就是「不管多少钱,我现在就要成交」。你下市价单的时候,系统会直接跟当前盘口上的对手方成交。市价单的优势是快,劣势是——你可能买贵了,或者卖便宜了。

核心区别一句话:限价单控制价格,但可能成交不了;市价单保证成交,但价格不可控。

我在做网格策略的时候,习惯把「入场」用限价单,「出场」也用限价单。但有一种情况我会用市价单——就是行情突然剧烈波动,网格需要紧急止损的时候。嗯,这个后面讲风控的时候再细说。

二、买卖盘口:你的对手盘在哪里

买卖盘口,就是当前市场上所有买单和卖单的集合。买盘叫「Bid」,卖盘叫「Ask」。你打开任何一个交易软件的深度图,看到的那一列列价格和数量,就是盘口。

网格策略挂单的时候,你的限价单会出现在盘口的某个位置。比如你想在 100 块买入,那你的单子就会出现在买盘的第几档。如果市场跌到 100 块,你的单子就会跟卖盘上的对手方成交。

这里有个坑:盘口的深度。如果某个价位的挂单量很少,你的大额订单可能只成交一部分,剩下的还得继续等。我曾经在某个流动性差的币种上吃过亏,挂了一笔 10 万块的限价单,结果只成交了 2 万,剩下的挂了一整天都没成交。网格策略的节奏全被打乱了。

我的建议:做网格之前,先看看目标品种的盘口深度。如果买卖价差大、挂单稀疏,那网格的间距就要适当放大,否则很容易出现「挂单不成交」的尴尬局面。

三、滑点:网格利润的隐形杀手

滑点,就是你预期的成交价和实际成交价之间的差值。这玩意儿在网格策略里特别要命。

举个例子:你的网格设定在 100 块买入,用的是市价单。结果市场瞬间从 101 跌到 99,你的市价单成交在了 99.5。本来想赚 1 块的差价,结果因为滑点,实际买入成本高了 0.5 块。一来一回,利润空间被压缩了一半。

限价单也会有滑点吗?理论上不会,因为限价单是「不到价不成交」。但有一种情况:如果你的限价单挂在 100 块,市场从 101 直接跳空到 98,那你的单子可能根本成交不了——因为价格直接跳过了你的挂单价。这就是「跳空滑点」。

注意:在波动剧烈的市场里,滑点可能吃掉你网格策略的大部分利润。我见过有人回测年化 30% 的策略,实盘跑下来只有 8%,一查原因,滑点贡献了 15% 的损耗。

怎么应对?我个人习惯在网格参数里预留一个「滑点缓冲」。比如目标利润是 1%,那我实际设定的网格间距会放大到 1.2% 或 1.5%。多出来的 0.2%-0.5%,就是给滑点留的余量。

四、手续费:别小看这千分之一

手续费看起来不多,但网格策略是高频交易。一天可能成交几十次甚至上百次。每次收你千分之一,累积起来就是一笔不小的数字。

咱们算笔账:假设你本金 10 万,每天成交 20 次,手续费千分之一。一天的手续费就是 10 万 × 20 × 0.001 = 2000 块。一个月 20 个交易日,就是 4 万块。一年下来……嗯,你自己算。

交易频率 单次手续费 日手续费 月手续费 年手续费
10次/天 0.1% 100元 2000元 24000元
20次/天 0.1% 200元 4000元 48000元
50次/天 0.1% 500元 10000元 120000元

看清楚了吧?手续费不是小钱。所以做网格策略,一定要把手续费算进成本里。我一般会在策略里加一个「手续费过滤」:如果单次交易的预期利润减去手续费后,还不到某个阈值,那这笔交易就不做。

核心公式:实际利润 = 价差收益 - 滑点损耗 - 手续费

三个变量,任何一个控制不好,网格策略都可能亏钱。

五、这些因素如何影响网格策略

咱们把上面四个因素串起来,看看它们对网格策略的具体影响。

网格策略 限价单/市价单 买卖盘口 滑点 手续费 实际利润 四个因素共同决定网格策略的最终收益

你看这张图就明白了。网格策略不是孤立存在的,它被四个因素包围着。任何一个因素出问题,最终的实际利润都会受影响。

限价单和市价单决定了你的成交方式。限价单精确但可能不成交,市价单快但可能滑点大。网格策略里,我建议 90% 的情况用限价单,只有紧急情况才用市价单。

买卖盘口决定了你的挂单能不能被吃掉。盘口深、流动性好的品种,网格跑起来很顺畅。盘口浅的品种,挂单可能半天成交不了,网格的节奏就乱了。

滑点是实盘和回测之间最大的差异来源。回测里没有滑点,实盘里滑点无处不在。所以做回测的时候,一定要加上滑点模拟,否则回测数据就是骗人的。

手续费是固定成本。你没法避免,只能控制。控制的方法就是:提高单次交易的利润空间,或者降低交易频率。两者选其一,或者兼而有之。

一个小技巧:我在写网格策略代码的时候,会把手续费和滑点做成两个可配置的参数。这样回测的时候可以调大调小,看看策略在不同成本环境下的表现。如果某个策略在 0.1% 手续费下能赚钱,在 0.2% 手续费下就亏钱,那这个策略的容错性就太差了。

六、实战中的避坑指南

最后分享几个我踩过的坑,希望能帮你少走弯路。

  • 别在流动性差的时候跑网格。比如凌晨两三点,交易量小,盘口薄,一个稍微大点的单子就能把价格打穿。我曾经在凌晨跑 BTC 网格,结果一个 5 万块的市价单直接滑了 0.3%,那一整天的利润全没了。
  • 手续费一定要算双向。买入收一次,卖出收一次。有些新手只算了买入的手续费,结果卖出的时候发现利润被吃掉了大半。
  • 限价单别挂得太死。比如盘口上卖一价是 100.00,你非要挂 99.99 买入。省了 0.01 块,但可能一整天都成交不了。网格策略讲究的是「成交率」,不是「最优价」。
  • 市价单慎用。除非你确定当前流动性足够好,否则市价单就是给交易所送手续费。我一般只在止损的时候用市价单,其他时候一律限价单。

好了,这些基础概念搞清楚了,后面咱们就可以开始写真正的网格策略代码了。记住一句话:交易不是数学题,不是算对了就能赚钱。市场里到处都是摩擦成本,你的策略必须把这些摩擦考虑进去。


公众号:蓝海资料掘金营,微信deep3321