写在前面
先看一张结算单。
同一天,同一个品种,同一个人平了两笔仓,手数一样。结算单上的手续费,一笔是几块钱,另一笔是几十块钱。
他第一反应是收错了,打电话去问。客服说没错:这两笔的区别是,一笔平的是今天开的仓,另一笔平的是昨天留下的仓。
这是很多人第一次意识到,手续费不是一个数,是一张表。
而更要紧的一件事,他当时没问,多数人也不会问——
几十块钱到底算多还是算少?
这个问题听起来幼稚,其实是这一篇里唯一真正难的问题。因为"多"和"少"是比较级,而绝大多数人从来没说清自己在跟什么比:跟本金比?跟保证金比?跟这一手合约的价值比?
这三个都比不出什么。这一篇的最后会给一个能比的东西。
先把结论放在最前面:
费率是你能谈的,次数是你自己定的。账单是这两个数相乘出来的。
一、这笔钱是谁收的:方向相反的两层
大多数人对手续费的心智模型是"一个价"。实际上你付的那个数,中间经过了方向相反的两次调整。
第一层,交易所收。 每个品种的交易所手续费标准是公开的,在各交易所官网能查到,随时会调整。这一层对所有人一样。
第二层,期货公司在上面加一层。 这是它的经纪业务收入。加多少,各家不同、各客户不同。
这个结构和保证金那边是一回事——保证金的四层加码那一节已经讲透了它的道理,这里不重复:你的合同对手方是期货公司,不是交易所(三级结算链条见强平那一篇),所以交易所定的是下限,不是你付的数。
到这里为止都是加法。但还有一层是减法,而且它常被漏掉。
第三层,交易所对会员有手续费减收与返还的机制。 也就是说,期货公司实际交到交易所的钱,可能少于公布的标准。
这一层的关键在于它的对象:
减免的对象是会员,不是你。它退到期货公司账上,会不会往下走一段、走多长一段,是另一件事。
这解释了一个很常见的困惑。有人说"我谈到了交易所标准加一分钱",听起来贴地板了。但基准是打折前的还是打折后的,这句话本身没有说。同一句话,在两家公司那里可以是两个数。
所以这三层加起来,只能得出一个结论:
公开可查的是标准,不是你的成本。你的成本只有一个地方查得到——你自己那张结算单。
每天收盘后那份结算单上,手续费是单独一栏。它是这件事上唯一的一手数据,别的都是转述。
顺带说清一件事:这一篇讲的是交易手续费,也就是你开一手、平一手要付的那笔。除它之外还有别的收费项,比如交割环节的费用——但个人投资者本来就走不到交割那一步,这一篇不展开。对绝大多数人来说,成本这件事只由交易手续费和下一节要讲的东西构成。
二、两种收法:一种跟价格无关,一种跟着价格走
这一条最少被提起,但它可能是本篇对交易影响最大的一条。
国内商品期货的手续费有两种收法:
| 收法 | 怎么算 | 价格涨了会怎样 |
|---|---|---|
| 按手固定 | 每手多少元 | 不变 |
| 按成交金额比例 | 成交金额的万分之几 | 同比例上涨 |
哪个品种用哪一种,由交易所定,是会变的,以各交易所最新公告为准。这里只说机制。
按手固定的那一类没什么可说的:你开一手付一次,价格三千还是三万,费用一样。
按比例的那一类值得多想一步。 成交金额 = 价格 × 合约乘数 × 手数。价格是变量,所以:
价格翻一倍,你每手的手续费也翻一倍。
而同一段时间里,你的止损宽度、你的仓位大小、你判断行情的能力,都不会自动跟着翻倍。
按比例收的那些品种,你的手续费是跟着行情涨的,你的判断力不是。
这不是什么陷阱,交易所也从没瞒着谁。但它意味着一件事:你两年前算过的那笔成本账,在一轮大涨之后可能已经不成立了。 而绝大多数人算过一次就再也没算过第二次。
三、平今仓惩罚:同一天开平的那一笔,按另一个价收
回到开头那张结算单。
平今仓,指的是平掉当天开的那部分持仓;平昨仓,平的是当天之前就有的持仓。
先说一件已经讲过的事,这里只挂链不重复:平今和平昨对持仓量的影响是完全一样的——都是一减一。它们的区别只在手续费上。 那一篇当时点了名没展开,这一篇展开。
差别有多大
从免收到高出十几倍,都真实存在过。
我不给具体数字,因为这一栏是调整最频繁的参数之一:同一个品种,不同年份可以是完全不同的量级;交易所会根据市场情况调,也会阶段性地减免。任何一篇文章里写死的平今费率,过一段时间就是错的。下单之前查当期公告,或者直接问你的期货公司——这件事没有捷径。
要记住的是机制,不是数字:这条规则让"当天开、当天平"这个动作,和"今天开、明天平"不是一个价。 至于它为什么被这么设计,我不揣测。
一个必须知道的实操差别
上海期货交易所和上海国际能源交易中心,平今和平昨是分开申报的两种指令;其他交易所不区分,系统按规则自动认定。
这条差别有两个后果,第二个更要命:
后果一:你的下单界面上,为什么有的品种有两个平仓按钮、有的只有一个——答案在这儿。它不是软件做得不一样,是交易所的规矩不一样。
后果二:在区分的那两家,选错了不是多付点钱的问题,是你平错了仓。
设想你手上有 2 手昨仓,今天又开了 2 手,现在想减 2 手。你选"平昨",减掉的是昨天那两手,今天开的两手原封不动地留下过夜;你选"平今",正好反过来。这两种结果,你的持仓成本、你的隔夜风险、你明天面对的仓位,完全不同。
在不区分的那几家,这个选择不存在,系统自动认定,你少一次犯错的机会——也少一次选择的机会。
一个必须点破的坏主意
平今那一栏贵到一定程度,就一定会有人想到同一个办法:今天不平了,留到明天再平,按平昨收。
这个念头本身很自然,算术上也说得通。但它换来的东西是不对等的:
你省下的是一笔确定的、事前就知道多少的钱;你换回来的是一个不确定的、事前不知道多大的隔夜风险。
隔夜风险有多大,前面量过:跳空幅度超过 1% 的日子大约每 6 个交易日就有一次,超过 2% 的每 33 天一次。而夜里那段时间你是没法处理的——夜盘只是把真空切成了两段,第二段仍然存在。
一次跳空吃掉的,可能是你省几十次平今费才攒下来的。
这不是说不能持仓过夜。 是说持不持仓过夜这个决定,应该由你对行情的判断和你的仓位来定,不该由一栏手续费来定。让费率替你做仓位决策,是这一篇里我唯一想拦一下的做法。
⚠️ 顺带说一句,这和"止损单存在哪儿"是两件事。 那件事讲的是谁在替你盯着那个价格,这件事讲的是单子进了交易所之后被算成哪一种。别混。
四、把成本换算成"跳":这一篇唯一的实测
到这里,制度层面的东西讲完了。上面每一条都不在任何一列行情数据里,所以这一篇的实测只有一节,而且回答的是另一个问题——开头那个"几十块钱到底算多还是算少"。
为什么必须先换单位
手续费是一个绝对数(元/手)。要判断它大不大,得除以一个东西。除以本金没意义(那是仓位问题),除以合约价值也没意义(那是杠杆问题)。
唯一有意义的分母是:这个品种一天能走多远。 因为你的利润只能从价格的移动里来,成本却是先扣掉的。
而"一天走多远"在不同品种上不能直接比——原油报元/桶、螺纹钢报元/吨、沪金报元/克,合约乘数还各不相同。所以要先化到同一个单位上。这个单位现成就有:最小变动价位,也就是一"跳"。
于是三个数:
- 一跳值多少钱(最小变动价位 × 合约乘数)
- 一天通常走多少钱(一手)
- 一天等于多少跳
怎么测的
30 个品种(池子沿用涨跌停那篇的成交额事前排名前 30,⛔ 一个不增一个不减)、1096 份合约、51462 个品种日,2019 年 1 月到 2026 年 8 月 5 日。
每个交易日取当日持仓量最大的那份合约当代表,换月当天整天丢弃(跨合约的差是接缝不是波动)。"一天走多远"用真实波幅 TR,把隔夜跳空也算进当天的行程。价格用最高价、最低价、收盘价,不用结算价——理由见四象限那一篇。全部取中位数。
数据整套复用上一篇仓位管理的缓存,零取数。
结果
(截取 12 行,完整 30 行在代码目录里)
| 品种 | 一跳(元/手) | 一天(元/手) | 一天(跳) | 一跳 = 一天的 |
|---|---|---|---|---|
| 原油 | 100 | 12800 | 128 | 0.78% |
| 沪金 | 20 | 4600 | 230 | 0.43% |
| 锡 | 10 | 4360 | 436 | 0.23% |
| 沪铜 | 50 | 4150 | 83 | 1.20% |
| 镍 | 10 | 2900 | 290 | 0.34% |
| 焦煤 | 30 | 2625 | 88 | 1.14% |
| 天然橡胶 | 50 | 2500 | 50 | 2.00% |
| 棕榈油 | 10 | 1620 | 162 | 0.62% |
| 玻璃 | 20 | 720 | 36 | 2.78% |
| 螺纹钢 | 10 | 610 | 61 | 1.64% |
| 甲醇 | 10 | 510 | 51 | 1.96% |
| 豆粕 | 10 | 480 | 48 | 2.08% |
三个跨度:
- 一天走多少钱:原油 12800 元 → 豆粕 480 元,差 27 倍
- 一跳值多少钱:100 元 → 5 元,差 20 倍
- 一天有多少跳:锡 436 → 玻璃 36,差 12 倍
这张表最该被看见的一行不是第一行
是沪铜和锡挨着的那两行。
它们一天走出来的钱几乎一样,都是四千多块。但是——
锡的一天里有 436 个跳,沪铜只有 83 个。同样一笔"一跳"的成本,在沪铜上贵五倍。
再往下看,天然橡胶一天只有 50 个跳,玻璃只有 36 个。在玻璃上,一个跳就是这一天全部行程的 2.78%。
这件事的用处很直接:你的成本要跨过的不是"多少钱",是"这一天行程的百分之几"。 把你结算单上那个数除以"一跳多少钱",再除以"一天多少跳",得到的才是可比的东西。而这个数,同一笔费用在不同品种上能差出一个数量级。
我原本以为换算成"跳"之后,跨品种的差别会被抹平——毕竟交易所设最小变动价位时总会参考这个品种的波动。实测说抹不平:27 倍只收到 12 倍,收掉一半多,剩下的那一半是真的。
抹不平的原因不难想:最小变动价位是一个被设定下来之后就长期不动的数,而价格和波动一直在漂。 一个品种价格涨了三倍,它的跳没有跟着变,于是一天里的跳数自然就变多了——这不是市场变活跃了,是那一跳相对变细了。反过来,价格长期趴着的品种,跳会显得越来越粗。
所以这张表还有第二个读法:它顺便量出了每个品种的最小变动价位,跟它现在的价格还合不合身。
这批数据打几折
① 中位数不是当下的快照。 这是七年半的常态。近两年贵金属那一波把沪金的日行程放大到近两倍、沪银 1.77 倍,而黑色和油脂缩了一到两成。
⭐ 这一条反过来说明了一件更有用的事:成本是固定的,行程是变的。 手续费不会因为今年行情小就自动打折——行情缩水的年份,你的成本占比是自动上升的,你什么都没做错。
② 只能说量级,不能说排名。 逐年拆开看,2019 年镍在锡之上,全样本反过来。这张表回答"大概是什么量级",不回答"哪个品种最适合做日内"。
③ 合约乘数和最小变动价位是从行情系统的品种表里取的,属二手源。 它们变动不频繁但确实会变,以交易所合约文本为准。
④ 日线答不了买卖价差到底是几跳。 盘口、委托队列这些东西不在日线里(这条边界在夜盘那一篇里正式立过)。所以下一节里"至少一跳"是个下限,不是"通常值"。
五、真正贵的那一半,没有印在费率表上
手续费有一个优点:它是这个市场上少有的、事前就能精确知道的成本。 你能查、能谈、能算。
正因为它可查可谈,很多人的全部注意力都在它身上。而账单上真正的大头,常常在另外两个地方。
第一个是买卖价差。 你按市价买进,成交在卖一;按市价卖出,成交在买一。这一进一出之间的差,最少是一个跳——上一节那张表告诉你,那可能是这一天行程的 0.23%,也可能是 2.78%。它不出现在任何费率表上,也不需要谁通知你。合约越冷清,这一项越贵(冷清合约的三个后果、临近交割时成交量的三级塌缩,前面两篇都量过)。
第二个是次数。
这是把前两项都乘大的那个数,而且它百分之百由你自己决定:
- 每一次移仓换月,是两笔手续费加两笔价差,而且它按次收,不按你赚没赚钱收
- 每多开一个品种,就多一份手续费、多一份移仓次数——而多开十个品种可能只多买到 0.3 个独立赌注
- 每一次"再等等",这个市场每天结算一次,收一次费
- 每一次被强平,手续费和滑点都算你的
所以对绝大多数人来说,成本这件事的顺序是反的:先去数次数,再去谈费率。
费率降一成,账单降一成;次数减一半,账单减一半。而前者要求你去谈,后者只要求你别动。
六、这一篇不回答什么
① 不告诉你哪家便宜。 这个号不点任何一家期货公司的名字,也不做费率比较——开户那一篇里说过的那条底线在这儿同样成立:正规期货公司都在中国期货业协会官网的名录里,剩下的你自己谈。凡是拿"内部费率""特殊通道"来找你的,先看它有没有在那份名录上。
② 不告诉你你的费率该是多少。 它取决于你的资金量、交易量、以及你和哪家公司谈——各家不同,不存在"业内一般是多少"这个说法。
③ 不判断平今仓惩罚"有没有起作用"。 那是一个日内问题——它要问的是同一天之内的开平行为怎么变,而日线只有一天的合计数,答不了这个。手上没有能回答它的数据时,我宁可空着这一条。
④ 不算一手要多少钱。 保证金门槛是另一件事,算法保证金那一篇已经讲透,各品种的具体门槛我打算单独做成一张定期更新的表,不塞在这里。
⛔ 还有一条边界要说清:这一篇讲的是成本,不是策略。 成本低不构成交易理由,成本高也不构成不做的理由——它只决定你的每一次判断,需要多正确才够本。
三条能直接用的结论
① 打开你自己的结算单,找到手续费那一栏。 不是听来的费率,不是宣传页上的数字,是你昨天实际付掉的那个数。这件事上只有一手数据算数。
② 把它换算成"跳",再换算成"一天的百分之几"。
你的开平成本(元/手)÷ 一跳多少钱 = 你要赚回几个跳 再 ÷ 一天有多少跳 = 你每做一次,先交掉这一天行程的百分之几
这个数才是可比的。 几十块钱在原油上和在玻璃上,完全是两回事。
③ 然后去数一数你上个月开平了多少次。 把这两个数相乘。多数人会发现,问题不在被乘数上。
下一篇:《米粒品种手册》系列的第四篇,写沪镍——它在上面那张表里出现过一行,一天两千九百块、290 个跳。但那一行只是它的价格性格,它真正特别的地方在产业链上。
⚠️ 风险提示 本文仅为期货知识分享与研究交流,不构成任何投资建议。期货交易具有高杠杆特性, 可能导致本金全部损失甚至产生穿仓负债。文中涉及的手续费标准、平今仓费率、减免规则、 合约乘数与最小变动价位等信息均会调整,以各期货交易所官方最新公告和你所在期货公司的 规定为准。请通过正规期货公司开户,理性参与、独立决策、风险自担。



