交易所对接

Gate CrossEx+TradingView webhook:key 打 7 家交易所

2026-09-08·7 分钟阅读

你可能在 Google 打过 gate crossex api tradingview webhook——autocomplete 直接补完这句话。但点进去的前 8 个结果不是 Gate 官方写「CrossEx 是什么」,就是拼装来的旧 API 教程。真正想知道的那件事「我的 TradingView alert 怎么一个 webhook 打进 7 家交易所」,没有一篇正面回答。

先讲结论
CrossEx 是 Gate 这一头的路由层——你把单打到 POST /crossex/orders,Gate 帮你送到 Binance、OKX、Bybit、Kraken、Hyperliquid、Deribit 或 Gate 自己。但它不吃 TradingView 送出来的 webhook payload——TradingView 送的是它自己的 JSON,Gate 收的是自己的 API 格式,中间那段没人先跟你讲。
7 家
CrossEx 支持的下游交易所
1 把 key
打进 7 家所需的 Gate API key 数量
0
TradingView 到 CrossEx 官方现成 adapter 的数量

Gate CrossEx 究竟是什么?一把 key 打进哪 7 家?

先把名词讲清楚。API,也就是应用程序对外开放的数据通道,让你的程序直接调用,不用点网页 UI。API key 是给你的程序用的那组认证字符串——密码等级,外泄就是别人可以用你的名义下单。

Gate v4 API 官方页面对 CrossEx 的原文写着:「CrossEx is a unified multi-venue exchange surface: Binance, OKX, Gate, Bybit, Kraken, Hyperliquid, and Deribit tie into one account shell for transfers, market data subscriptions, fills, positions, and account maintenance.」

拆解出来它做的事有三层:一个账户壳子(仓位与成交同一组 API 读出来)、一个下单端点(POST /crossex/orders 你指定 venue、Gate 帮你送)、一组行情端点(/crossex/market/tickers/crossex/market/funding_info)。

Venueexchange_type 值备注
BinanceBINANCE全球最大交易所
OKXOKX同时有 spot 与 perp
BybitBYBIT以 perp 为主
KrakenKRAKEN欧美用户多
Gate 自己GATE同账户下的原生 venue
HyperliquidHYPERLIQUIDon-chain perp DEX
DeribitDERIBIT以 options 见长

来源:Gate v4 API 官方文档 CrossEx 页的 exchange_type 字段(查证日期 2026 年 8 月)。备注是我对每家的一句归类,不是 Gate 写的。

要注意的是清单里没有 Bitget 与 BingX。CrossEx 不是「所有交易所」,是 Gate 选定的七家。要打这两家仍然要用它们的原生 API。

TradingView webhook 想接进来,中间那段没人先讲

webhook,也就是 TradingView 在 alert 触发时、对你指定的 URL 打一个 HTTP POST 的机制。TradingView 送的 payload 是你在 alert message 里自己写的 JSON 或纯文本,格式没有标准。

而 Gate CrossEx 的 POST /crossex/orders 要收的是 Gate 自己定义的格式——symbol(venue/business/币对用下划线串在一起,例如 BYBIT_SPOT_BTC_USDT)、side(大写 BUYSELL)、type(大写 LIMITMARKET)、qtypricetime_in_force 这些字段。两边格式不一样,这就是那个没人先讲的段落

1
你打算让 TradingView 直接 POST 到 gate.com/api/v4/crossex/orders 吗?
Gate 会拒收——alert 送出的 JSON 没有 Gate 的签名、也没对到 Gate 的字段。这条路走不通。
不会那你需要一个中间 relay:接 TradingView 的 payload、翻成 CrossEx 的 order request、帮你签名。下面两节分两种写法谈。

这也是为什么 Google 上「gate crossex api tradingview webhook」找不到直接答案:这件事需要你自己组,而 Gate 官方不会替你写。这个站另外一篇 TradingView webhook 教程 有讲 webhook 端的细节,可以搭配读。

最近三个版本的 changelog 补了什么

我把过去一个月 CrossEx 相关的 changelog 捞出来,筛掉纯错字修正。

版本日期更新内容
v4.106.1152026-08-03扩展 CrossEx 订单错误文档;区分 state=FAIL(CrossEx 验证失败)与 state=REJECT(交易所拒单);补上常见拒单原因
v4.106.1102026-07-28新增 GET /crossex/market/tickersGET /crossex/market/funding_info——过去要一家一家取的资金费率,现在一次拉齐
v4.106.1092026-07-22RPI 加进 POST /crossex/orderstime_in_force 支持值;并在 GET /crossex/fee 响应加了 spot_rpi_maker_feefuture_rpi_maker_fee

来源:Gate v4 API changelog(查证日期 2026 年 8 月 16 日)。实际内容请以 gate.com/docs/developers/apiv4/en 当下显示为准——这页一周内就有多次补述。

为什么是「现在」看,不是三个月前
三笔连在一起才有意义。行情端点补齐让你不用再对七家分别建 WebSocket。RPI 这个 TIF 把 Gate 自己 spot 的 maker 费率结构带进 CrossEx 下单。错误处理文档把异步接单那条路的失败分类讲清楚。三个月前接 CrossEx 是拼装、现在是「有文档可依」的阶段。这是我看完三个月 changelog 的判断,不是 Gate 白纸黑字写的一句话。

落地方案一:自己写一个薄 relay

最直白的做法是自己起一个 Cloudflare Worker 或一支 FastAPI 服务,收 TradingView webhook、翻译成 CrossEx 的下单 request、签名送出。骨架大致是:

text
# 收 TradingView 的 alert JSON
        {
          "secret": "your-webhook-token",
          "symbol": "BTC-USDT",
          "side": "buy",
          "qty": 0.001,
          "venue": "BYBIT"
        }

        # 翻成 CrossEx 的 order request
        POST /api/v4/crossex/orders
        {
          "symbol": "BYBIT_SPOT_BTC_USDT",
          "side": "BUY",
          "type": "MARKET",
          "qty": "0.001",
          "time_in_force": "GTC"
        }
签名要在 relay 端算,不是塞进 alert message
TradingView 的 alert message 是纯字符串——把 Gate API 的 secret 或签名塞在那里,就是把它印在你的 Pine Script 里、印在 TradingView 的服务器上、每次 alert 触发就再送一次。签名的算法要在你的 relay 里跑,用环境变量带进去,alert message 里只送业务字段。

自己写 relay 的好处是你完全掌握送单逻辑:同一根 K 棒重复触发要不要拦、失败要不要重发、log 打到哪。坏处是你要维护那台服务——包含 uptime、签名密钥轮换、CrossEx 错误码分类。

落地方案二:用第三方多所路由层——但要看清楚它有没有走 CrossEx

现成的 TradingView 对多交易所路由服务不少——PineConnector、3Commas、我们自己的 TVSBot 都在做。差别在下面这张表。

自架 relay 走 CrossEx第三方路由层(走原生 API)
上手时间几天到一周注册完就能设
API key 数量1 把 CrossEx key每家交易所各 1 把
支持交易所Gate 选定的 7 家看厂商,通常 6-10 家
路由逻辑掌握在谁手上自己写的 relay厂商
遇到 bug 谁负责修你自己厂商——但要看 SLA

两种做法各自优化的目标不一样——不是「哪个比较好」而是「你信任谁的执行」。

要讲清楚一件事:包括我们自己的 TVSBot 在内,这类第三方路由层没有走 Gate 的 CrossEx endpoint——它们是对每家交易所各自的原生 API 下单。所以「一把 key 打七家」这个省事的部分只有走 CrossEx 才拿得到;走第三方路由层等于你还是要对六家各准备一把 key,但可以少写一台 relay。

RPI 这个 TIF 值:缩写官方有写,行为官方没写

TIFtime in force),也就是这张单的有效方式——常见的有 GTC(挂到成交或手动撤)、IOC(打不进去就撤)、FOK(一次全成不然全撤)。

v4.106.109 把 RPI 加进 POST /crossex/orderstime_in_force 支持值。官方文档在 time_in_force 字段定义处把它展开为 「RPI: Retail Price Improvement」,与 GTC / IOC / FOK / POC 并列。缩写有写,但这条 TIF 具体对应到什么成交行为、跟一般 limit maker 差在哪,官方文档没有再多写一句

遇到 RPI 该怎么处理
在你的 relay 里先把 time_in_force 预设成 GTC——这是 Gate CrossEx 原本就支持、行为明确的值。要用 RPI 之前先在小资金上试单:官方文档更新到 v4.106.115 才把错误处理讲清楚,代表这条路的边界还在补。新加的 TIF、新加的 order 类型,都先在 dry-run 或最小名目金额试过再放大。

一个没人先讲的坑:CrossEx 的 order state 有两种失败

v4.106.115 这个版本把 CrossEx 的失败状态分成两层。

state 值谁拒的常见原因
FAILGate CrossEx 自己参数不合法(字段名写错、enum 值不对)、签名错、CrossEx 端维护
REJECT下游交易所下游那家的最小下单量、价格 filter、余额不足、reduce-only 没仓位

来源:Gate v4 API v4.106.115(2026-08-03)错误文档(查证日期 2026 年 8 月)。这两个 state 出现在 order response 的 state 字段。

为什么要分? 因为除错路径不一样:FAIL 是你的 relay 要修,REJECT 是你对那家交易所的认知要修(去查那家的最小名目、check price filter)。过去 CrossEx 只有一个笼统的错误字段——你收到「下单失败」只能猜。现在能分出来,但你的 relay 要分别 log 这两个 state,不要只印 error message——否则升到中量之后你会回不了头。

跨交易所套利入门 那篇要处理的失败类别差不多,只是层级不一样:那篇是机会消失,这篇是单本身被谁拦。

诚实的一段:我没有实测 CrossEx 账号怎么申请

Gate v4 API 文档没有直接写「CrossEx 账号需要另外开通、只支持 API 交易」这件事——只在 CrossEx 页的最下面放了一个 CrossEx help desk 链接指向 help center。我没有跑过完整申请流程,也没有实测「非 API 用户能不能在 web UI 动 CrossEx 仓位」。这篇谈的一切都建立在你已经拿到一把可以打 /crossex/orders 的 key 这个前提上。如果你正在申请阶段卡住,那不在这篇的范围。

常见问题

CrossEx 支持 Bitget 或 BingX 吗?
截至 2026 年 8 月查证,Gate 官方 exchange_type 只列 BINANCE / OKX / GATE / BYBIT / KRAKEN / HYPERLIQUID / DERIBIT 七家。Bitget 与 BingX 不在里面,要打这两家仍然要用它们的原生 API。
TradingView 的 alert 可以直接对 CrossEx 下单吗?
不行。TradingView 只会对你指定的 URL 打一个 HTTP POST,无法帮你算 Gate API 的签名、也不知道 CrossEx 的字段名。中间一定要有一个 relay 服务——自己写或用现成第三方都可以。
用 CrossEx 跟直接对七家各接一把 key,哪个延迟低?
官方没有公布 CrossEx 相对直连的延迟数字。从架构推论,CrossEx 是「你的 request 打到 Gate、Gate 再打到目标交易所」多一跳。实际延迟还受 Gate 的地缘位置、你的 relay 位置与目标交易所本身影响。我们没实测过,不下结论。
「跨所盈亏互抵」是 CrossEx 的功能吗?
官方 v4 API 文档里我没有找到「跨所盈亏自动互抵」的描述,只找到跨交易所的资金转移(POST /crossex/transfers)与报价转换(POST /crossex/convert/quote)。如果你需要盈亏互抵,请直接跟 CrossEx help desk 求证。
已经在用 TVSBot 或 PineConnector,要转去 CrossEx 吗?
不是二选一。CrossEx 省的是「一把 key 打多家」的管理成本;第三方路由层省的是「你自己起 relay」的运维成本。两种可以并存——例如把 Gate、Kraken、Hyperliquid 走 CrossEx、Binance、OKX、Bybit 走现有第三方,看哪一段对你来说瓶颈最贵。

Get started

想把今天学到的东西自动化跑起来?

把 TradingView 的信号接上 6 家交易所——用你自己的 API key、先 dry-run、走的是每家原生 API 不是 CrossEx。想并存 CrossEx 的话上面第五节有两种做法怎么搭。

免费开始使用