行情页顶上那个「24h 涨跌」,在币安接口文档里的定义是滚动 24 小时:拿此刻的最新价,去比整整 24 小时之前那一刻的价格。另一种算法用固定起点,UTC 0 点(北京时间早上 8 点)或北京时间 0 点(UTC+8),算的是「从今天这个钟点到现在」涨跌了多少。
三种起点,同一秒、同一个币,能算出三个不同的百分比。两处数字对不上,先别急着判谁算错了,先问它从几点算起。
币安交易页上为什么同时写着 +1.03% 和 0.59%
下面这张图是 2026 年 10 月 19 日上午的币安现货 BTC/USDT 交易页。顶栏写着「24h涨跌 843.65 +1.03%」;往下看图表,周期选的是「1天」,当天那根 K 线的说明行写着开 82,116.00、收 82,604.24、涨跌幅 0.59%。最新价是同一个 82,604.24,两个百分比差了快一倍。
两个数都能复算,差别在于选了哪个起点价;起点一换,价差和分母都会变。
顶栏那个:24 小时前的价格 = 82,604.24 − 843.65 = 81,760.59;涨跌幅 = 843.65 ÷ 81,760.59 × 100% ≈ 1.03%。
日 K 线那个:起点是这根 K 线的开盘价;涨跌幅 = (82,604.24 − 82,116.00) ÷ 82,116.00 × 100% ≈ 0.59%。
成交量也是这个道理。顶栏的「24h 成交量(BTC) 10,783.84」是滚动 24 小时的累计,图表下方成交量栏里的 Vol(BTC) 1.883K 只是最新那根日 K 开盘以来的量,两者本来就不该相等。
滚动 24 小时涨跌幅怎么算,价格不动它为什么也会变
币安现货接口文档对 24hr 行情这一项只写了一句:「24 hour rolling window price change statistics」,滚动 24 小时窗口的价格变动统计。返回里的 openPrice 写作「Opening price of the Interval」,即这个区间起点的价格;openTime、closeTime 是区间的起止时间。同一个返回结果里的最高价、最低价和成交量,也都按这个窗口统计。
窗口跟着钟走。现在是 10:47,起点就是昨天 10:47;过一个小时,起点挪到昨天 11:47。就算这一小时里价格一动不动,只要昨天 10:47 和 11:47 的起点价不同,分母就换了,屏幕上的百分比照样会变。拿它回答「今天行情怎么样」,其实是在看一个每分钟都换起点的数。
按 UTC 0 点和北京时间 0 点算的涨跌幅差在哪
固定起点的算法,分母是当天某个固定钟点的开盘价。两个常见起点差 8 个小时:UTC 0 点是北京时间早上 8 点,UTC+8 的 0 点就是北京时间午夜。
假设你在北京时间早上 7 点打开行情。按 UTC+8 算,「今天」才过了 7 个小时;按 UTC 算,「今天」还没开始,看到的仍是从昨天早上 8 点到现在、将近 23 个小时的涨跌。夜里行情一转向,这两个数完全可能一正一负。
欧易把三种都做成了可选项。它的帮助中心文章「K线图常见问题及设置」(页面标注更新于 2026 年 10 月 13 日)给了两条路径:App 端点左上角九宫格 →【账号设置】→【偏好设置】→【涨跌幅周期和K线时间】;网页端在交易页面点右侧的【交易设置】图标 →【涨跌幅周期和K线时间】。可选 UTC+8、UTC 或 24 小时制。这一个开关同时管两样东西:涨跌幅从几点算,K 线从几点切。
欧易接口文档的行情接口把三个起点价并排给了:open24h 是过去 24 小时的开盘价,sodUtc0 是 UTC 0 点的开盘价,sodUtc8 是 UTC+8 0 点的开盘价。按定义,(最新价 last − sodUtc8) ÷ sodUtc8 × 100% 就是从北京时间 0 点算的涨跌幅,另外两种照此类推;文档没把这一步写成公式。K 线接口的周期参数也分两套:1D、1W 这类按 UTC+8 开盘,1Dutc、1Wutc 这类按 UTC+0 开盘。
| 起点 | 折成北京时间 | 欧易行情接口里的起点价 | 欧易 K 线周期写法 | 币安接口里对应的那一项 |
|---|---|---|---|---|
| 滚动 24 小时 | 此刻往前推 24 小时,随时在挪 | open24h | — | 24hr 行情(openPrice) |
| UTC 0 点 | 每天早上 8 点 | sodUtc0 | 1Dutc、1Wutc 等 | Trading Day Ticker,timeZone 默认 0 |
| UTC+8 0 点 | 每天午夜 0 点 | sodUtc8 | 1D、1W 等 | Trading Day Ticker,timeZone 传 8 |
币安接口文档里另有一项 Trading Day Ticker(交易日行情),按固定起点统计,时区参数 timeZone 默认是 0,也就是 UTC;K 线接口同样默认按 UTC 划分周期,传了 timeZone 才换时区,而查询用的起止时间始终按 UTC 解释。网页和 App 图表上的日线从几点切,直接点开那根 K 线看它标出的开盘时间和开盘价,再跟顶栏反推出来的 24 小时前价格比一比,起点是不是同一个,一眼就清楚。
两个地方的涨跌幅对不上,按这个顺序查
- 起点。滚动 24 小时、UTC 0 点、北京时间 0 点,先认出两边各是哪一种。行情列表、涨幅榜和 K 线图未必用同一套;欧易 App 首页的【热门榜】还能在【筛选】里单独选「时间范围」。
- 交易对。BTC/USDT 和 BTC/USDC 是两个市场,成交价各走各的,涨跌幅不会严丝合缝。
- 价格种类。合约页上的价格可能是最新成交价,也可能是标记价格或指数价格;欧易帮助页写明,在 K 线图上点最新价格,可以在这三种之间切换。强平用的是哪个价,见强平价和标记价格。
- 现货还是合约。同一个币的现货和永续合约是两个盘口,价格本来就有差。
想回答「今天涨了多少」,先定「今天」从几点开始,固定起点更贴题;想看最近一整天的波动,滚动 24 小时更合适,它不管你人在哪个时区。两种都没错,拿一种的数去对另一种,才会对出一笔糊涂账。顶栏其他几个字段怎么读,接着看现货下单面板怎么读。
还会碰到的两个情况
价格一直没动,24 小时涨跌幅为什么还在变?
因为滚动 24 小时的起点每分钟都在往后挪。起点那一刻的价格换了,分母就换了,哪怕最新价一分没动,百分比也会跟着变。按固定起点算的涨跌幅没有这个现象,当天之内它的分母不变。
欧易改了涨跌幅周期,K 线会跟着变吗?
会一起变。欧易帮助中心把这两项放在同一个设置里,名字就叫「涨跌幅周期和K线时间」,可选 UTC+8、UTC 或 24 小时制。改完再看日线,开盘时间和涨跌幅要一起重新对。