三句话说完网格交易的原理:
- 你给一个价格区间和格数,系统在区间里画出一排等距的价格线,每条线挂一张限价单:价格跌到某条线,买入一份;涨到它上面那条线,把这一份卖掉。
- 每完成一次「低一格买、高一格卖」,挣的就是这一格的价差,再扣掉买和卖两笔手续费。价格在区间里来回越多次,成交的格子越多。
- 它不挣方向的钱。价格一路跌,币越买越多,跌出下限后只剩浮亏;价格一路涨,币越卖越少,涨出上限后手里只剩 USDT。
下面用一个假设的 5 格网格,从开网那一刻算起,让价格分别来回、一路跌、一路涨,每一步挂了什么单、手里剩多少币和 USDT 都写出来。数字可以拿计算器复算。已经懂原理、想直接填参数的,去看币安现货网格的逐项填法。
一格是什么:两条相邻的价格线,一张买单配一张卖单
官方帮助中心对现货网格的说法是:在设定的价格范围内,按预设条件自动下单,「试图从微小的价格变化中获利」。落到操作上,你要填的只有几样:最低价、最高价、网格数量、等差还是等比、投资额。
最低价和最高价围出区间。网格数量决定区间切成几段,每一段就是「一格」。等差模式下,每格的价差相同,官方给的式子是「价差 = (网格上限 - 网格下限) / 网格数量」;等比模式下,每格的涨幅比例相同。
一格,就是两条相邻的线。
它的生命周期很简单:下面那条线的买单成交,系统马上在上面那条线挂卖单;卖单成交,系统又回到下面那条线挂买单。一买一卖配成一对,这一对的差价扣掉两笔手续费,就是这一格挣的钱。官方页面把这叫「配对订单」,加总起来就是「网格利润」。
和自己手动低买高卖比,差在单子是提前挂好的。假设价格夜里从 103 跌到 97 又弹回 103,手动做就得在 98 附近醒着下买单、在 102 附近再下卖单,漏掉一步,这一格就没做成。网格的买单和卖单本来就挂在 98 和 102 上,价格碰到就成交,不需要人在场。它也不会犹豫:官方免责声明写明,到了设定的价位机器人会一致执行所有订单,暴跌或飙升时也可能照常执行。手动做时你可能在急跌里停手,网格不会。
还有一个前提要先说清楚:现货网格是「正向网格」,先买后卖,所有盈亏都折成交易对后面那个币来算。在 BTC/USDT 上开网格,挣的、亏的都按 USDT 记,官方参数说明里管这叫「投什么赚什么」。也就是说,网格记账的目标是让 USDT 变多,币的数量只是跟着行情增减。想攒币的人用它,算账方式要反过来想,这也是它和定投最不一样的地方。
举例:ABC/USDT 在 90 到 110 之间切 5 格
下面所有数字都是假设,ABC 是虚构的币,价格路径也是编的,只为演示机制。
假设:交易对 ABC/USDT,开网时价格 100 USDT;最低价 90,最高价 110,网格数量 5,等差;价差 =(110 − 90)÷ 5 = 4,六条价格线是 90、94、98、102、106、110;每格固定买卖 2 个 ABC;手续费每笔 0.1%,记作 f = 0.001(币安现货普通用户的费率,不用 BNB 抵扣);投入 1,000 USDT。
开网时怎么挂单,官方的现货网格帮助页写得很清楚:从上往下挂买单,高于现价的买单会立刻成交,成交后在它上面一条线挂卖单;离现价最近、下面那张买单还没成交的那条线空着。套到这个例子里:
| 价格线 | 开网后挂的单 | 原因 |
|---|---|---|
| 110 | 卖 2 个 | 106 的买单按现价立即成交了,卖单挂在它上面 |
| 106 | 卖 2 个 | 102 的买单按现价立即成交了 |
| 102 | 不挂单 | 下面 98 的买单还没成交,没有要卖的 |
| 98 | 买 2 个 | 低于现价,等价格跌下来 |
| 94 | 买 2 个 | 同上 |
| 90 | 买 2 个 | 同上 |
开网这一下花了多少钱:按 100 买入 4 个 ABC,付 4 × 100 × 1.001 = 400.40 USDT。剩下 599.60 USDT,其中三张买单冻结(98 + 94 + 90)× 2 = 564 USDT,余下的留着付手续费和零头。
真实的网格比这个多两步。一是「预留手续费」。现货手续费从收到的那个币里扣:98 买 2 个 ABC,扣 0.1% 后到手 1.998 个,可 102 那张卖单要卖满 2 个,差的 0.002 个从哪来?官方的办法是策略启动时用 USDT 额外买一点基准币放在机器人账户里,网格买入产生的手续费从这里扣,扣到不足原来一半会自动补买。所以它不是多收的一笔钱:0.002 个 ABC 按 98 算是 0.196 USDT,和例子里折成 USDT 的买入手续费是同一笔。二是实际投入:官方原话是实际投资金额「取决于市场,可能不等于您输入的金额」。这两样都会让真实数字和下面的表差几毛几分,为了能手算,例子里略去。
钱放在哪里也说一句。现货网格用的是独立的「交易机器人账户」:创建时系统自动把所需资金从你的现货账户转进去,运行期间锁定,你不能手动往里转或往外转;网格结束后大约 30 秒,系统再自动转回现货账户。所以网格跑着的时候,现货账户里看不到这 1,000 USDT,是正常的。
开网挂单的顺序、区间外暂停的规则,按的是什么是现货网格交易?(2026 年 10 月核对)
价格来回一次:98 买、102 卖,这一格净赚 3.87%
让价格这样走:100 → 97 → 103 → 97 → 103 → 100。
| 价格走到 | 成交 | 系统接着挂 | 手里 ABC | 手里 USDT(含冻结) |
|---|---|---|---|---|
| 开网 | 按 100 买 4 个 | 见上表 | 4 | 599.60 |
| 100 → 97 | 98 买入 2 个,付 196.196 | 102 挂卖 2 个 | 6 | 403.404 |
| 97 → 103 | 102 卖出 2 个,收 203.796 | 98 挂买 2 个 | 4 | 607.20 |
| 103 → 97 | 98 买入 2 个,付 196.196 | 102 挂卖 2 个 | 6 | 411.004 |
| 97 → 103 | 102 卖出 2 个,收 203.796 | 98 挂买 2 个 | 4 | 614.80 |
| 103 → 100 | 没有成交 | 不变 | 4 | 614.80 |
买入付的是 98 × 2 ×(1 + 0.001)= 196.196,卖出收的是 102 × 2 ×(1 − 0.001)= 203.796,一对净赚 7.60 USDT。来回两次 15.20,减掉开网时那 0.40 的买入手续费,回到 100 时总值 614.80 + 4 × 100 = 1,014.80 USDT。
换成比例,就是本站一直用的那个式子:
每格净利率 = 高价 ×(1 − f)÷[低价 ×(1 + f)]− 1
= 102 × 0.999 ÷(98 × 1.001)− 1 = 101.898 ÷ 98.098 − 1 ≈ 3.87%
表里没动过的单子也值得看一眼。103 没碰到 106,所以 106 和 110 的卖单从头到尾没动。价格要是只在 99 到 101 之间晃,一张单都不会成交,账面上什么也不发生。网格挣钱的前提是波动幅度大过格子宽度,晃得再勤,没穿过格线也白晃。
反过来,价格一口气穿过好几条线,路过的单会依次成交,各自和自己那一格配对。比如从 103 直接砸到 93,98 和 94 两张买单都会成交,系统分别在 102 和 98 补挂卖单。配对永远是「这一格的买」对「这一格的卖」,不会拿 94 买的币去配 102 的卖单,所以每一对的利润都只是一格的价差。
五个格子的净利率不一样,因为等差网格每格价差都是 4,价格越低,4 占的比例越大:
| 格子 | 90→94 | 94→98 | 98→102 | 102→106 | 106→110 |
|---|---|---|---|---|---|
| 每格净利率 | 4.24% | 4.05% | 3.87% | 3.71% | 3.57% |
单边下跌:每跌穿一条线就多买一份,币越拿越多
回到开网时的状态,这次让价格从 100 一路跌到 85,中途不反弹。
| 价格跌到 | 成交 | 手里 ABC | 手里 USDT |
|---|---|---|---|
| 开网 | — | 4 | 599.60 |
| 98 | 买 2 个,付 196.196 | 6 | 403.404 |
| 94 | 买 2 个,付 188.188 | 8 | 215.216 |
| 90 | 买 2 个,付 180.18 | 10 | 35.036 |
| 85 | 没有成交 | 10 | 35.036 |
跌到 90 以下,网格不再下单。官方原文是「当市场价低于最低价时,将停止执行下单操作」。这时 10 个 ABC 的平均买价是(4 × 100 + 2 × 98 + 2 × 94 + 2 × 90)÷ 10 = 96.4,按 85 算总值 35.036 + 850 = 885.04 USDT,浮亏约 115 USDT,相当于 −11.5%。再跌到 70,总值 735.04,−26.5%。
拿两种不做网格的办法对比一下:
- 开网时把 1,000 USDT 全买成 ABC,约 9.99 个,跌到 85 时值 849.15,跌到 70 时值 699.30。
- 一直拿着 USDT 不动,还是 1,000。
越跌越买,是网格本来的设计:它假定价格还会回来,所以在低处多备一些币,等反弹时一格格卖掉。这个假定成立,下跌就是在给后面的来回攒货;不成立,下跌就是在一格格加仓。表里的平均买价 96.4 也容易让人误会成「保本价」,其实总值回到 1,000 要看价格回升途中卖掉了几格,不是简单涨回 96.4 就行。
网格比全买成币少亏一些,因为它是分批买的;但它确实在亏,而且价格跌出下限以后,它就是一份「拿着 10 个 ABC」的现货,跌多少亏多少。网格不会因为跌出区间自动终止,也不会自动止损,除非你设了止损价。跌破下限之后该等、该停还是该重开,单独写在价格跌出区间以后的分流里。
顺带算一下「跌下去又回来」:价格从 85 回到 100,94 和 98 两张卖单成交,收 187.812 和 195.804,手里剩 6 个 ABC、418.65 USDT,总值 1,018.65。跌下去再回来,对网格来说也是一次来回。
单边上涨:每涨过一条线卖掉一份,涨出上限后只剩 USDT
还是从开网状态出发,让价格从 100 一路涨到 115。
| 价格涨到 | 成交 | 系统接着挂 | 手里 ABC | 手里 USDT |
|---|---|---|---|---|
| 开网 | — | — | 4 | 599.60 |
| 102 | 没有成交(这条线空着) | — | 4 | 599.60 |
| 106 | 卖 2 个,收 211.788 | 102 挂买 2 个 | 2 | 811.388 |
| 110 | 卖 2 个,收 219.78 | 106 挂买 2 个 | 0 | 1,031.168 |
| 115 | 没有成交 | 不变 | 0 | 1,031.168 |
币卖光了,总值 1,031.17 USDT,+3.1%。同一段行情里,开网时全买成 ABC 的那份按 115 值 1,148.85,+14.9%。价格要是继续涨到 130,网格这边还是 1,031.17,全买成币的那份是 1,298.70。
这就是常说的「卖飞」:网格在上涨途中按格线分批卖出,涨出上限后手里没有币,后面的涨幅和它无关。它在 102 和 106 挂着的买单,只有价格掉回来才会成交。币安现货网格有个「上移」选项,可以让区间跟着涨。按官方的规则套到这个例子上:价格涨过最高价加一格价差,也就是 110 + 4 = 114,网格撤掉最低那条线 90 的买单,在原来的最高价 110 挂一张新买单,区间变成 94 到 114;再涨过 118,再挪一格。它让网格在涨势里接着做,代价是新的买单一路挂在更高的位置,价格回头时,接回来的币成本也更高。上移还有几条限制,在设置篇里讲;现货网格没有「下移」。
三种走法放在一张表里看
| 行情(都从 100 出发) | 网格结束时总值 | 全买成 ABC | 一直拿 USDT |
|---|---|---|---|
| 来回两次,回到 100 | 1,014.80 | 999.00 | 1,000 |
| 一路跌到 85 | 885.04 | 849.15 | 1,000 |
| 一路涨到 115 | 1,031.17 | 1,148.85 | 1,000 |
跌的时候比全买成币少亏,涨的时候比全买成币少赚,只有来回的时候比两边都好。网格交易的全部收益来源就在第一行:价格在区间里反复穿过格线。后两行里网格的结果,主要由开网时手里有多少币、跌出或涨出区间后剩多少币决定,和格子挣的那点价差关系不大。
真实的价格不会照这三条直线走,更像是混在一起:先跌一段,来回几次,再涨上去。网格的结果也就是这三种算法的叠加,来回的部分挣格子钱,跌出下限的部分按持币算浮亏,涨出上限的部分按持有 USDT 算。拆成三块想,比盯着一个总收益数字好判断。
所以判断一段行情适不适合开网格,要问的是「接下来会不会在一个范围里来回」。这件事没人能保证,三段行情各自怎么算,网格适合什么行情那篇用另一组数字又对照了一遍。
开网时价格在区间的哪一段,决定你一开始拿多少币
上一节说结果主要看「手里有多少币」,而这个数在开网那一刻就定了大半。还是同一个网格,90 到 110、5 格、每格 2 个,只改开网时的价格:
| 开网价格 | 立即买入的格子 | 开网时买入 ABC | 挂买单冻结的 USDT | 币 ÷(币 + 冻结 USDT) |
|---|---|---|---|---|
| 92(靠近下限) | 94、98、102、106 四格 | 8 个,约 736.74 | 180 | 约 80% |
| 100(正中间) | 102、106 两格 | 4 个,约 400.40 | 564 | 约 41% |
| 108(靠近上限) | 没有 | 0 个 | 980 | 0 |
最后一列的分母是开网买的币加上挂买单冻结的 USDT,不含留着付手续费的零头;按 1,000 USDT 总投入算,92 开网时币占约 74%。
开在区间下半段,网格一上来就把大部分资金换成了币,接下来要是继续跌,它的表现和直接买币差不多;开在上半段,网格几乎全是挂着的买单,接下来要是一路涨,它一个币都卖不出去,也就什么都挣不到。
这不是哪种开法更好的问题,而是你得知道自己开网那一刻在押什么。
价格贴着下限开,等于先买了一大笔币;贴着上限开,等于先空着手等回调。设置时看一眼现价落在区间的哪个位置,比纠结多一格少一格要紧。
手里本来就有这个币的话,现货网格允许用基准币和 USDT 一起投资,开网时就不用全靠 USDT 现买。用币投资有个条件:区间里第二高的那条格线要高于现价,否则页面只让你用 USDT 投。
每格利润由什么决定:格子宽度、手续费、等差还是等比
把式子拆开看,每格净利率只取决于三样东西:这一格的上下两条线(也就是格子宽度)、手续费率 f,以及等差还是等比决定的格线位置。
格数越多,格子越窄,手续费占得越多。 区间还是 90 到 110,只改格数:
| 格数 | 价差 | 最下面一格净利率 | 最上面一格净利率 | 最上面一格毛涨幅里被手续费拿走的 |
|---|---|---|---|---|
| 5 | 4 | 4.24% | 3.57% | 约 5.5% |
| 20 | 1 | 0.91% | 0.72% | 约 22% |
| 50 | 0.4 | 0.24% | 0.16% | 约 55% |
切到 50 格,最上面那格毛涨 0.365%,一买一卖两笔 0.1% 拿走一半多。格子密了,成交可能更频繁,但每次挣得少,手续费的比重越来越大。只想多成交几次就把格数拉满,并不划算。
换个角度看每一对挣多少 USDT。等差网格每格买卖的币数相同、价差相同,所以不管在哪一格成交,一对挣的 USDT 都差不多:例子里 98→102 那格是 7.60,90→94 那格是 2 ×(94 × 0.999 − 90 × 1.001)= 7.63,106→110 那格是 7.57。百分比上下不一,是因为下面的格子占用的本金少。这一点在比较等差和等比时很有用。
等差和等比。 官方页面给的格线公式:等差「价差 = (网格上限 - 网格下限) / 网格数量」;等比「价格比例 = (网格上限 / 网格下限) ^ (1/网格数量) * 100%」。注意等比这个「价格比例」写成了百分数,算出来是 104.10% 这种数,指的是相邻两条线的比值,不是每格涨 104%。同样 90 到 110 切 5 格,等比的比值是(110 ÷ 90)^(1/5)≈ 1.0410,每格净利率都是 3.89%,不像等差那样上下不一。两种模式在同一段行情里谁挣得多,等差和等比的对照用一条路径各跑了一遍。
官方的每格利润式子和本站的写法不完全一样。 官方《现货网格交易的参数说明》里,等比网格写的是「网格利润 = (1 - c) * r - 1 - c」,等差网格的最大值写成「(1 - c) * d/grid_lower_limit-2c」,c 是默认手续费 0.1%。它把买入那笔手续费直接减掉一个 c;本站的式子是把它放进分母,除以(1 + f)。两者差得很小:90 到 110 切 5 格,最下面一格官方式子算 4.24%,本站算 4.236%;等比 3.891% 对 3.887%。差别在小数点后第三位,本站这样写,是为了和每格利润计算器的算法保持一致。
网格页面上显示的「每格利润(已扣除手续费)」是按默认 0.1% 扣的,不看你实际的 VIP 等级或 BNB 抵扣。用 BNB 抵扣后每格能多留多少,手续费那篇算了三组参数。
页面上的网格利润、浮动盈亏,对应例子里的哪一块
网格跑起来以后,详情页会给几个数。按官方定义:
- 网格利润:已经配对成交的买卖单的利润之和,扣过两边的手续费。例子里来回两次那段,网格利润就是 7.60 × 2 = 15.20 USDT。
- 浮动盈亏:手里还没卖掉的币,按现价和买入价之间的差算出来的盈亏。单边下跌那段,网格利润是 0,浮动盈亏约 −115。
- 总收益 = 网格利润 + 浮动盈亏。
跌下去的那段最能说明问题:格子一张卖单都没成交,网格利润一分没有,账上全是浮亏。反过来也常见,网格利润一直在涨,币价跌得更多,总收益是负的。看收益只看网格利润那一栏,会看错。
网格利润能先提出来,但只能提已实现的那部分:运行中的现货网格在详情页点【提现利润】,钱转到现货账户。官方的算法是可提现金额 = 网格收益 − 已提现金额 − 预留手续费;初始投资额是机器人的最低保留金额,任何情况下都提不走;低于交易对的最低名义价值也提不了(官方举的 BTC/USDT 是 5 USDT,以页面实时显示为准);开了上移的网格不支持提现。套到例子里:来回两次后网格利润 15.20,忽略预留手续费,最多提 15.20,机器人里剩 614.80 − 15.20 = 599.60 USDT 和 4 个 ABC。提走以后每格还是买卖 2 个,下一次来回照样挣 7.60,每格的规模不受影响。不提的利润会不会滚进格子让每格多买,官方没写。
页面上还有一个「年化收益率」,官方公式是拿总收益除以总投资额,再按运行分钟数折算到一年。它只是把眼下的数字线性放大:1,000 USDT 的网格跑了一天、总收益 5 USDT,年化就是 5 ÷ 1,000 × 365 = 182.5%。运行时间越短,这个数越夸张,第二天行情一变就可能翻成负数。它适合用来比较两个跑了同样久的网格,不适合用来估计一年能挣多少。几个数字的官方算法、年化收益率为什么会显得夸张,放在网格收益怎么看里。
什么时候适合开网格,停的时候手里会剩什么
网格没有到期日。它会一直挂着,直到你手动终止,或者碰到你设的止盈、止损价,或者被系统动了(比如你在现货交易页手动撤掉了网格的挂单,网格会随之终止)。
停的那一刻手里剩什么,取决于一个默认勾着的选项:终止时卖出全部基准币。勾着,系统用市价单把手里的 ABC 全卖成 USDT;不勾,币原样退回现货账户。按单边下跌那段的例子,停在 85 时手里 10 个 ABC,勾着就是在 85 附近卖掉、把浮亏变成实亏,不勾就是带着 10 个币离场。两种都说得通,看你还想不想拿这个币。官方另外写了一条保护:持仓太大或者市场流动性差时,系统可能不卖,币直接退回。具体分支见网格停止后钱去哪了。
回到开不开的问题。按上面的算法,可以把条件说得具体一点:
- 你预期的波动幅度要比格子宽得多,否则价格根本穿不过格线。
- 每格净利率扣完手续费要留出余量。最上面那格只剩零点一几个百分点时,稍有滑点就白跑一趟。
- 你能接受价格跌出下限以后,手里拿着一堆币不动;也能接受涨出上限以后,后面的行情和你无关。
第三条比前两条难。前两条靠调参数就能满足,第三条只能靠你自己判断。还有一种情况网格未必合适:你的目的是长期多攒几个币。网格按 USDT 记账,涨的时候会把币卖掉,跌的时候才多买,它攒币的方式是被动的、随行情摆动的;按时间定额买入的定投,在这件事上更直接。接受不了跌出区间后满仓拿币的,先别开现货网格,更别开带杠杆的合约网格,那边跌出区间的结果不是浮亏,而可能是强平。
还有几种情况和行情无关,也先别开:
- 这笔钱几周内要用。 网格跑着时资金锁在交易机器人账户,不能手动转出;要用钱只能终止,收益按终止那一刻的市价结算,赶上跌出下限又要换回现金,就是在低处离场。
- 你还会在现货交易页手动买卖同一个交易对。 网格的挂单也显示在【当前委托】里。官方写明,在现货交易页手动撤掉属于网格的委托,网格就终止。
- 币的成交很稀,或者你投的量相对它的市场偏大。 「终止时卖出全部基准币」不一定执行,持仓大或流动性差时系统不卖,币退回现货账户,结束时未必能一把换回 USDT。
关于网格原理的几个问题
网格交易是不是稳赚不赔?
不是。网格只在价格来回穿过格线时赚到每格的价差。价格一路下跌,买单一格格成交,手里的币越来越多,跌出下限后网格停止挂单,浮亏和直接拿币一样;价格一路上涨,币被一格格卖掉,涨出上限后手里只剩 USDT,后面的涨幅与你无关。
网格数量设得越多越好吗?
不一定。区间不变时,格数越多每格越窄,成交次数可能变多,但每格的涨幅变小,一买一卖两笔手续费占的比例变大。按本文的例子,90 到 110 切 50 格时,最上面一格的毛涨幅一半以上被手续费吃掉。
网格利润是正的,总收益怎么会是负的?
网格利润只算已经配对成交的买卖;手里还没卖掉的币按现价算浮动盈亏。价格跌下去以后,浮亏可能比已经挣到的网格利润大,两者相加的总收益就是负的。
币安合约网格和现货网格的原理一样吗?
挂单和配对的逻辑相同,都是低一格买、高一格卖。区别在于合约网格用保证金加杠杆,可以选做多、做空、中性,有强平价格;现货网格用的是你自己的币和 USDT,没有强平。