Crossrate Markets wires Robinhood Chain launches into a live FX quote desk—Launcher fires → TokenLaunched → token / creator / quoteToken (AED/EUR/CNY…) / poolId / taxBps land as open cards; liquidity hits the permanent locker, rate hook splits trade fees. PONS one-pad converge watches dominance-era opens; Bucket launchpad watches payout routing; CompanyPad company markets watches the company-metric registry; HARMONIC agent watches the agent path. This post watches currency-denominated opens + FX quoteToken. Product: crossrate.market (/contracts + /api/market live).
Run the live tool: demos1 · Crossrate EN · ZH · blockreq.com.
| Use | Endpoint |
|---|---|
| Public HTTPS | https://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public |
| Public WSS | wss://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public |
| Private | Trailing public → {API_KEY} (keys stay local) |
Chain: Robinhood Chain EVM chainId = 0x1237 (4663). Public endpoints · eth_subscribe · Plans · Register.
1. Hook: FX pad open card
| Tape feel | On-chain signal | Watch |
|---|---|---|
| New launch | Launcher TokenLaunched | token · creator · quoteToken · poolId · taxBps · supply · liquidity |
| Currency quote | quoteToken + currency desk | AED / EUR / CNY / INR… quote contracts |
| Lock lands | Liquidity locker | permanent LP position |
| Fee split | Rate hook | creator / platform cut |
| Radar tape | hit → outbound | Dedupe = token + launchTx |
| Contract | Address (editable prefills) | Role |
|---|---|---|
| Launcher | 0xfAD915358508fB5e826e807cAC5294c4233aEde5 | primary TokenLaunched |
| Coin factory | 0xb8F540bdC1b0A49A9754dE6656fD0082B6fC3CA3 | deterministic deployer |
| Rate hook | 0x28EB3bEF14323EffC99D066c9cB4309198b0A0cc | trade-rate split |
| Liquidity locker | 0x21Fa7eaF03d80Be670C77aA50dcC348B9774C879 | permanent lock |
| Owner / fee | 0xcfF2514c888f3FA9B272005D69A2b1E8240cC3F0 | protocol wallet |
On-chain snapshot (2026-10-01): the Launcher's hook() · locker() · tokenDeployer() · poolManager() · usdg() · owner() return the addresses above; /api/market lists 16 launches from block 62431610 to 64912893, all from this Launcher, quoted in AED, EUR, CNY, JPY, GBP, INR, PLN, IDR, ILS, VTI. Earlier Launchers (same TokenLaunched topic0, backfill only) include 0x9Ec62caaEDE8Ee54fa1B8BF4747B0bAA523bD5C2 (to block ~62.21M) and 0x5108Ecc10B297d32B83e8b422F432Fe435cBdDBd (~62.26M–62.33M).
Recent launch on the current Launcher: RYL, token 0x2E9846C5D3D9F32A478190a87c108B50E37f0f4E, AED quote 0x8998b43B5450D41B88E67a0914064b8F8445126D, taxBps 300, block 64666083. Decode reference (earlier Launcher, same topic0): tx 0x09463a67cf11b7acb6d83ed420a8e7ef96c6291acc5d455c2d6ebdba0e2b0e55 (block 62057818, DUBAI). Also on desk: PoolManager 0x8366a39CC670B4001A1121B8F6A443A643e40951 · USDG 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168.
2. Event: TokenLaunched
Keep local JSON LAUNCHER + TOKEN_LAUNCHED_TOPIC0. One RH public WSS: primary Launcher TokenLaunched; stack currency code from quoteToken → desk.
Step A · Subscribe Launcher TokenLaunched
{
"jsonrpc": "2.0", "id": 1, "method": "eth_subscribe",
"params": ["logs", {
"address": "0xfAD915358508fB5e826e807cAC5294c4233aEde5",
"topics": ["0xe0809b2ad8aaf52f5807c111a464b3be723a8bad83656da180797a3ecca26a15"]
}]
}
topics[0]:TokenLaunched(address indexed token, address indexed creator, address indexed quoteToken, bytes32 poolId, uint16 taxBps, uint256 supply, uint128 liquidity)topics[1]= token ·topics[2]= creator ·topics[3]= quoteTokendata: poolId · taxBps · supply · liquidity- Write
launchState[token], tag crossrate, map currency from quoteToken
| Field | Rule |
|---|---|
pad | crossrate |
token / creator / quoteToken | TokenLaunched topics |
currency | quoteToken → desk (AED/EUR/…) |
poolId / taxBps / supply / liquidity | decoded data |
ready | TokenLaunched seen |
Step B · Open-card fields
Outbound card first: token · creator · quoteToken · currency · poolId · taxBps · launchTx · blockNumber. RPC / endpoint stays in a collapsed secondary rail.
3. Run in the browser
Main stage is the TokenLaunched FX open-card radar; RPC table stays collapsed. Register for 3M free requests monthly → blockreq.com.
4. Wrap
FX desk opens = Launcher TokenLaunched + quoteToken map. Public WSS on, cards first, RPC tucked away.
FAQ
Which contract emits Crossrate launches?
The Crossrate Launcher 0xfAD915358508fB5e826e807cAC5294c4233aEde5 on Robinhood Chain (chainId = 0x1237, 4663) emits TokenLaunched for each new coin. Supporting contracts (from crossrate.market/contracts, confirmed by the Launcher's own getters): coin factory 0xb8F540bdC1b0A49A9754dE6656fD0082B6fC3CA3, rate hook 0x28EB3bEF14323EffC99D066c9cB4309198b0A0cc, liquidity locker 0x21Fa7eaF03d80Be670C77aA50dcC348B9774C879. Launches before block ~62.43M came from earlier Launchers, e.g. 0x9Ec62caaEDE8Ee54fa1B8BF4747B0bAA523bD5C2 and 0x5108Ecc10B297d32B83e8b422F432Fe435cBdDBd.
What is the Crossrate TokenLaunched topic0?
topic0 = 0xe0809b2ad8aaf52f5807c111a464b3be723a8bad83656da180797a3ecca26a15, i.e. TokenLaunched(address,address,address,bytes32,uint16,uint256,uint128). It is the same on the current and earlier Launchers. topics[1..3] = token · creator · quoteToken; data = poolId · taxBps · supply · liquidity.
How do I tell whether a launch is quoted in AED, EUR or CNY?
Read quoteToken from topics[3] and map it to the Crossrate currency desk (quote contracts listed on crossrate.market /contracts). The radar card shows the mapped currency next to token, creator, poolId and taxBps.
Do I need an API key to run the radar?
No. demos1 Crossrate runs in the browser on the public WSS wss://robinhood-mainnet-rpc.blockreq.com/v1/rpc/public. For long-running use, swap the trailing public for your {API_KEY}. Register at blockreq.com for 3M free requests monthly.
Related RHC radars: HARMONIC agent opens · demos1 Crossrate.