diff --git a/funding_cache.json b/funding_cache.json new file mode 100644 index 0000000..7e9699e --- /dev/null +++ b/funding_cache.json @@ -0,0 +1,3406 @@ +{ + "10000000AIDOGE/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000000BABYDOGE/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000000CHEEMS/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.00033859, + "hyperliquid": 0.0 + }, + "1000000PEIPEI/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "1000000MOG/USDT": { + "binance": -0.00011718, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.00147745 + }, + "10000COQ/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "10000ELON/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "10000LADYS/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "10000QUBIC/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "10000SATS/USDT": { + "binance": 0.0, + "bybit": -0.00010461, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "10000WEN/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "10000WHY/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000APU/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000BONK/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "1000BTT/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000CAT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "1000CATS/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1000CHEEMS/USDT": { + "binance": 5e-05, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "1000FLOKI/USDT": { + "binance": -3.9e-05, + "okx": 0.0, + "bybit": -6.555e-05, + "hyperliquid": 0.0 + }, + "1000LUNC/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 1.597e-05, + "hyperliquid": 0.0 + }, + "1000MUMU/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "1000NEIROCTO/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "1000PEPE/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "1000RATS/USDT": { + "binance": 0.00026879, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "1000SATS/USDT": { + "binance": -6.57e-06, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "1000SHIB/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "1000TOSHI/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.00010383 + }, + "1000TURBO/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "1000WHY/USDT": { + "binance": -0.00016868, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "1000X/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "1000XEC/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 1.281e-05, + "hyperliquid": 0.0 + }, + "1INCH/USDT": { + "binance": 0.0001, + "okx": 0.0001622739733061, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "1MBABYDOGE/USDT": { + "binance": 5e-05, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "A8/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "AAVE/USDT": { + "binance": 9.202e-05, + "okx": -1.78866847542e-05, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "ACE/USDT": { + "binance": 5e-05, + "okx": 8.23356927428e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "ACH/USDT": { + "binance": -0.00016227, + "bybit": -0.00033425, + "okx": -5.96753041015e-05, + "hyperliquid": 0.0 + }, + "ACT/USDT": { + "binance": 5e-05, + "okx": -6.64900402953e-05, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "ACX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ADA/USDT": { + "binance": 0.0001, + "okx": 9.85520674788e-05, + "bybit": 0.0001, + "hyperliquid": -1.12513e-05 + }, + "AERGO/USDT": { + "binance": -0.00312323, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.00106468 + }, + "AERO/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "AEVO/USDT": { + "binance": 5e-05, + "okx": 0.0003447106133122, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "AGI/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "AGIX/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "AGLD/USDT": { + "binance": -0.00013996, + "bybit": 1.661e-05, + "okx": -9.41588562841e-05, + "hyperliquid": 0.0 + }, + "AI/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 1.25e-05 + }, + "AI16Z/USDT": { + "binance": 5e-05, + "okx": -2.81339515724e-05, + "hyperliquid": 1.25e-05, + "bybit": 5e-05 + }, + "AIDOGE/USDT": { + "binance": 0.0, + "okx": 0.0001165763175479, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "AIOZ/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "AIXBT/USDT": { + "binance": 8.26e-06, + "bybit": 5e-05, + "okx": 5.51308891345e-05, + "hyperliquid": 1.25e-05 + }, + "AKT/USDT": { + "binance": 8.143e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ALCH/USDT": { + "binance": 5e-05, + "okx": 0.0001803337139424, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ALEO/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ALGO/USDT": { + "binance": -0.00018555, + "okx": -0.0001992502660443, + "bybit": 4.483e-05, + "hyperliquid": 1.25e-05 + }, + "ALICE/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "ALPACA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ALPHA/USDT": { + "binance": 9.941e-05, + "okx": 0.0003968523092237, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "ALT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": -1.73021e-05, + "bybit": -0.00028835 + }, + "ALU/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "AMB/USDT": { + "binance": 5e-05, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "ANIME/USDT": { + "binance": 5e-05, + "okx": 0.0002398472413107, + "bybit": 2.5e-05, + "hyperliquid": 1.25e-05 + }, + "ANKR/USDT": { + "binance": -0.00011087, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -4.281e-05 + }, + "APE/USDT": { + "binance": 6.53e-06, + "bybit": -0.00012983, + "okx": -5.39716894249e-05, + "hyperliquid": 1.25e-05 + }, + "API3/USDT": { + "binance": -0.00051273, + "bybit": -0.00051199, + "okx": -0.0002116040252902, + "hyperliquid": 0.0 + }, + "APT/USDT": { + "binance": 2.02e-05, + "okx": -7.11460747879e-05, + "hyperliquid": 1.25e-05, + "bybit": 3.91e-06 + }, + "AR/USDT": { + "binance": 4.33e-05, + "okx": -1.39140695063e-05, + "bybit": -2.484e-05, + "hyperliquid": 1.25e-05 + }, + "ARB/USDT": { + "binance": 7.408e-05, + "okx": 6.30623961715e-05, + "bybit": 0.0001, + "hyperliquid": 5.9485e-06 + }, + "ARC/USDT": { + "binance": 5e-05, + "okx": -0.0001768257000075, + "bybit": -5.803e-05, + "hyperliquid": 0.0 + }, + "ARK/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 1.25e-05 + }, + "ARKM/USDT": { + "binance": 0.0001, + "okx": -6.5855894035e-06, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ARPA/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ASTR/USDT": { + "binance": 3.681e-05, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ATA/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ATH/USDT": { + "binance": 0.0, + "okx": -0.0001004886169742, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ATOM/USDT": { + "binance": -3.268e-05, + "bybit": -9.268e-05, + "okx": -7.50175696882e-05, + "hyperliquid": 1.08941e-05 + }, + "AUCTION/USDT": { + "binance": -0.00031983, + "okx": 4.29145117608e-05, + "bybit": -0.00028687, + "hyperliquid": 0.0 + }, + "AUDIO/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "AVA/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "AVAAI/USDT": { + "binance": 5e-05, + "okx": 0.0001008548935786, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "AVAIL/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "AVAX/USDT": { + "binance": -0.00013854, + "okx": -6.87617481073e-05, + "bybit": -9.486e-05, + "hyperliquid": 1.6806e-06 + }, + "AVL/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 2.5e-05 + }, + "AXL/USDT": { + "binance": 1.665e-05, + "okx": 0.0, + "bybit": -0.00027646, + "hyperliquid": 0.0 + }, + "AXS/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 1.41322577989e-05, + "hyperliquid": 0.0 + }, + "B3/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 2.5e-05, + "hyperliquid": 0.0 + }, + "BADGER/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0001111480312418, + "hyperliquid": 1.25e-05 + }, + "BAKE/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "BAL/USDT": { + "binance": 0.0001, + "okx": 0.0001701532736075, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "BAN/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 2.5e-05, + "hyperliquid": 0.0 + }, + "BANANA/USDT": { + "binance": -0.00044913, + "okx": 0.0, + "bybit": -0.00081982, + "hyperliquid": -7.13612e-05 + }, + "BANANAS31/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BAND/USDT": { + "binance": 0.0001, + "okx": 0.0002480330168081, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "BAT/USDT": { + "binance": 0.0001, + "okx": 5.14442808049e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "BB/USDT": { + "binance": -0.00013088, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "BCH/USDT": { + "binance": 7.852e-05, + "bybit": 6.363e-05, + "okx": -4.92610641395e-05, + "hyperliquid": 1.25e-05 + }, + "BEAM/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -6.938e-05, + "hyperliquid": 0.0 + }, + "BEAMX/USDT": { + "binance": -0.00018913, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BEL/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BERA/USDT": { + "binance": -0.00047273, + "okx": -0.0005921296428533, + "bybit": -0.00023693, + "hyperliquid": -7.60584e-05 + }, + "BICO/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0003590214197047, + "hyperliquid": 0.0 + }, + "BID/USDT": { + "binance": 8.641e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "BIGTIME/USDT": { + "binance": 5e-05, + "okx": 2.63015015331e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "BIO/USDT": { + "binance": 5e-05, + "okx": 0.0002483710910874, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "BLAST/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 1.355e-05, + "hyperliquid": -6.60675e-05 + }, + "BLUE/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "BLUR/USDT": { + "binance": 0.0001, + "okx": 1.04831632058e-05, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "BLZ/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BMT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "BNB/USDT": { + "binance": 0.0, + "okx": -8.70744997672e-05, + "hyperliquid": -1.08817e-05, + "bybit": -0.00012357 + }, + "BNT/USDT": { + "binance": -0.00041754, + "bybit": -0.00095878, + "okx": -0.0003398030208243, + "hyperliquid": -6.04497e-05 + }, + "BNX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BOBA/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 9.449e-05, + "hyperliquid": 0.0 + }, + "BOME/USDT": { + "binance": 5e-05, + "okx": 0.000111945490992, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "BOND/USDT": { + "binance": 5e-05, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BONK/USDT": { + "binance": 0.0, + "okx": -7.62848012627e-05, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "BR/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 6.23666336227e-05, + "hyperliquid": 0.0 + }, + "BRETT/USDT": { + "binance": -0.00010378, + "okx": -0.0002195110488936, + "bybit": -0.0004572, + "hyperliquid": -2.2886e-06 + }, + "BROCCOLI/USDT": { + "binance": 0.0, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BROCCOLI714/USDT": { + "binance": 0.0004138, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "BROCCOLIF3B/USDT": { + "binance": 0.00215501, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BSV/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0002158434664464, + "hyperliquid": 1.25e-05 + }, + "BSW/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BTC/USDT": { + "binance": 2.992e-05, + "okx": -1.66780365024e-05, + "hyperliquid": 6.0614e-06, + "bybit": 6.061e-05 + }, + "BTC/USDT-04APR25": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BTC/USDT-11APR25": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BTC/USDT-25APR25": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "BTC/USDT-30MAY25": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BTC/USDT_250328": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BTC/USDT_250627": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "BTCDOM/USDT": { + "binance": 0.00022511, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BTCST/USDT": { + "binance": 0.0001, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "BUZZ/USDT": { + "binance": 0.0, + "okx": -0.0004169237994372, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "C98/USDT": { + "binance": 7.762e-05, + "okx": 0.0, + "bybit": 7.22e-06, + "hyperliquid": 0.0 + }, + "CAKE/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "CARV/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.00255442, + "hyperliquid": 0.0 + }, + "CAT/USDT": { + "binance": 0.0, + "okx": -0.0003617878299495, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "CATI/USDT": { + "binance": -3.674e-05, + "okx": 0.0001606777414906, + "bybit": 5e-05, + "hyperliquid": 1.10851e-05 + }, + "CELO/USDT": { + "binance": 0.0001, + "okx": 2.25482444937e-05, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "CELR/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "CETUS/USDT": { + "binance": 5e-05, + "bybit": -0.00065382, + "okx": 0.0001730728909041, + "hyperliquid": 0.0 + }, + "CFX/USDT": { + "binance": 0.0001, + "okx": -6.1343833748e-06, + "hyperliquid": 1.25e-05, + "bybit": 0.0001 + }, + "CGPT/USDT": { + "binance": 6.58e-06, + "okx": 0.0, + "bybit": 2.5e-05, + "hyperliquid": 0.0 + }, + "CHESS/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "CHILLGUY/USDT": { + "binance": 0.00014306, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "CHR/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "CHZ/USDT": { + "binance": 0.0001, + "okx": -4.38873349077e-05, + "hyperliquid": 0.0, + "bybit": 8.401e-05 + }, + "CKB/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "CLOUD/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "COMBO/USDT": { + "binance": -0.00406601, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.0047716 + }, + "COMP/USDT": { + "binance": 6.415e-05, + "okx": -2.55324800923e-05, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "COOK/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "COOKIE/USDT": { + "binance": 5e-05, + "okx": 0.0001493079501352, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "CORE/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0001780086519481, + "hyperliquid": 0.0 + }, + "COS/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "COTI/USDT": { + "binance": -0.00015738, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "COW/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 2.5e-05 + }, + "CPOOL/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.0001477 + }, + "CRO/USDT": { + "binance": 0.0, + "okx": -0.0003103346096434, + "bybit": -0.00039325, + "hyperliquid": 0.0 + }, + "CRV/USDT": { + "binance": 0.0001, + "okx": -4.78513178164e-05, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "CSPR/USDT": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0002020889925345, + "hyperliquid": 0.0 + }, + "CTC/USDT": { + "binance": 0.0, + "okx": -0.0001674131626606, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "CTK/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "CTSI/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "CVC/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": -0.0002401203561366, + "hyperliquid": 0.0 + }, + "CVX/USDT": { + "binance": 0.0001, + "okx": -0.0001312061888798, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "CYBER/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": -2.77207e-05 + }, + "D/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "DAR/USDT": { + "binance": 0.0001, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "DASH/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "DATA/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "DBR/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "DEEP/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -3.194e-05, + "hyperliquid": 0.0 + }, + "DEFI/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "DEGEN/USDT": { + "binance": 5e-05, + "bybit": 1.612e-05, + "okx": 1.98467171589e-05, + "hyperliquid": 0.0 + }, + "DEGO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "DENT/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "DEXE/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "DF/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "DGB/USDT": { + "binance": 0.0001, + "okx": -0.000850053405701, + "bybit": -0.00150662, + "hyperliquid": 0.0 + }, + "DIA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "DODO/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "DODOX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "DOG/USDT": { + "binance": 0.0, + "okx": 0.0008400434813848, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "DOGE/USDT": { + "binance": 6.054e-05, + "okx": -2.85316489898e-05, + "bybit": 7.109e-05, + "hyperliquid": 0.0 + }, + "DOGS/USDT": { + "binance": 5e-05, + "okx": -8.08219319824e-05, + "bybit": -1.154e-05, + "hyperliquid": 0.0 + }, + "DOT/USDT": { + "binance": 0.0001, + "okx": 5.80997142586e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "DRIFT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "DUCK/USDT": { + "binance": 0.0, + "bybit": 5e-05, + "okx": 7.8554432387e-06, + "hyperliquid": 0.0 + }, + "DUSK/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "DYDX/USDT": { + "binance": -5.871e-05, + "okx": 2.00104388848e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "DYM/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "EDU/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "EGLD/USDT": { + "binance": 0.0001, + "okx": 0.0001949349421895, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "EIGEN/USDT": { + "binance": 5e-05, + "okx": 9.0998429313e-06, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ELX/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "ENA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 8.13e-06, + "hyperliquid": 0.0 + }, + "ENJ/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": -0.0001170134701075, + "hyperliquid": 0.0 + }, + "ENS/USDT": { + "binance": 5.808e-05, + "bybit": 0.0001, + "okx": 5.39885474537e-05, + "hyperliquid": 0.0 + }, + "EOS/USDT": { + "binance": 7.77e-06, + "okx": 2.0640986038e-06, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "EPIC/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ETC/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 7.33262694087e-05, + "hyperliquid": 0.0 + }, + "ETH/USDT": { + "binance": 5.353e-05, + "okx": 3.90792879972e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "ETH/USDT-04APR25": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "ETH/USDT-11APR25": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "ETH/USDT-25APR25": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "ETH/USDT-30MAY25": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "ETH/USDT_250328": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "ETH/USDT_250627": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "ETHBTC/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "ETHFI/USDT": { + "binance": 5e-05, + "okx": 3.05030778885e-05, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "ETHW/USDT": { + "binance": 5e-05, + "okx": 0.0001440978036875, + "bybit": -0.0006803, + "hyperliquid": 0.0 + }, + "F/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "FARTCOIN/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": -0.0001774419047661, + "hyperliquid": 0.0 + }, + "FET/USDT": { + "binance": -7.554e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "FB/USDT": { + "okx": 0.0, + "bybit": 0.0001, + "binance": 0.0, + "hyperliquid": 0.0 + }, + "FIDA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "FIL/USDT": { + "binance": 0.0001, + "okx": 1.74710373405e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "FIO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "FLM/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.000159149649939, + "hyperliquid": 0.0 + }, + "FLOCK/USDT": { + "binance": 0.0, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "FLOKI/USDT": { + "binance": 0.0, + "bybit": 0.0, + "okx": 3.86545849181e-05, + "hyperliquid": 0.0 + }, + "FLOW/USDT": { + "binance": 0.0001, + "okx": -7.24133717009e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "FLR/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "FLUX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -3.039e-05 + }, + "FORM/USDT": { + "binance": 4.612e-05, + "okx": 0.0, + "bybit": -0.00024543, + "hyperliquid": 0.0 + }, + "FORTH/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "FOXY/USDT": { + "binance": 0.0, + "okx": 0.0002167973552489, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "FTM/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "FTN/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.00034484, + "hyperliquid": 0.0 + }, + "FTT/USDT": { + "binance": 0.0001, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "FUEL/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "FWOG/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "FXS/USDT": { + "binance": 0.0001, + "okx": -0.0001515325202975, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "G/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "GALA/USDT": { + "binance": 6.419e-05, + "okx": -0.0001176814952663, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "GAS/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": -6.00642604476e-05, + "hyperliquid": 0.0 + }, + "GHST/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "GIGA/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.00035872, + "hyperliquid": 0.0 + }, + "GLM/USDT": { + "binance": 5e-05, + "okx": 0.0001197834468101, + "bybit": 4.527e-05, + "hyperliquid": 0.0 + }, + "GLMR/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "GMT/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "hyperliquid": 0.0, + "okx": 0.0001247470679458 + }, + "GMX/USDT": { + "binance": 0.0001, + "okx": 9.54047433646e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "GNO/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.00083094 + }, + "GOAT/USDT": { + "binance": 5e-05, + "okx": -8.23094706945e-05, + "bybit": -0.00024554, + "hyperliquid": 0.0 + }, + "GODS/USDT": { + "binance": 0.0, + "okx": -0.000193682173467, + "bybit": -0.0007132, + "hyperliquid": 0.0 + }, + "GOMINING/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "GPS/USDT": { + "binance": 5e-05, + "okx": 0.0003892573371602, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "GRASS/USDT": { + "binance": 5e-05, + "okx": 7.1914307254e-05, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "GRIFFAIN/USDT": { + "binance": 5e-05, + "okx": 6.66280326338e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "GRT/USDT": { + "binance": 3.27e-06, + "okx": -4.16399827195e-05, + "hyperliquid": 0.0, + "bybit": -6.49e-06 + }, + "GTC/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "HBAR/USDT": { + "binance": 0.0001, + "okx": 6.52782629425e-05, + "bybit": 8.935e-05, + "hyperliquid": 0.0 + }, + "HEI/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "HFT/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "HIFI/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "HIGH/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "HIPPO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "HIVE/USDT": { + "binance": -0.0004923, + "okx": 0.0, + "bybit": -6.607e-05, + "hyperliquid": 0.0 + }, + "HMSTR/USDT": { + "binance": 5e-05, + "okx": 4.55352801151e-05, + "hyperliquid": 0.0, + "bybit": -0.00053493 + }, + "HNT/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "HOOK/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "HOT/USDT": { + "binance": 6.723e-05, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "HPOS10I/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "HYPE/USDT": { + "binance": 0.0, + "okx": 7.74524754928e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ICP/USDT": { + "binance": 4.302e-05, + "okx": 2.61826228751e-05, + "hyperliquid": 0.0, + "bybit": -5.973e-05 + }, + "ICX/USDT": { + "binance": 3.725e-05, + "okx": 3.5109450485e-06, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "ID/USDT": { + "binance": 9.229e-05, + "okx": -0.0001212599500791, + "bybit": 1.143e-05, + "hyperliquid": 0.0 + }, + "IDEX/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "ILV/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "IMX/USDT": { + "binance": -5.104e-05, + "bybit": 5e-05, + "okx": -5.26595510543e-05, + "hyperliquid": 0.0 + }, + "INJ/USDT": { + "binance": -0.00018955, + "okx": -6.91590153773e-05, + "hyperliquid": 0.0, + "bybit": -0.00027767 + }, + "IO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": -0.00024177, + "hyperliquid": 0.0 + }, + "IOST/USDT": { + "binance": 0.0001, + "okx": 0.0001835231973463, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "IOTA/USDT": { + "binance": 2.76e-05, + "okx": 5.98757085336e-05, + "hyperliquid": 0.0, + "bybit": -5.002e-05 + }, + "IOTX/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "IP/USDT": { + "binance": 5e-05, + "bybit": -0.00090612, + "okx": 2.35927628707e-05, + "hyperliquid": 0.0 + }, + "J/USDT": { + "binance": 0.0, + "okx": -8.123294961e-05, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "JAILSTOOL/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "JASMY/USDT": { + "binance": 5.08e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 3.775e-05 + }, + "JELLYJELLY/USDT": { + "binance": 0.0, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "JOE/USDT": { + "binance": 0.0001, + "okx": 0.0004821621036259, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "JST/USDT": { + "binance": 0.0, + "okx": 0.0002642216100879, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "JTO/USDT": { + "binance": 3.752e-05, + "bybit": -2.733e-05, + "okx": -1.20219545631e-05, + "hyperliquid": 0.0 + }, + "JUP/USDT": { + "binance": -5.432e-05, + "okx": 1.1331858003e-05, + "hyperliquid": 0.0, + "bybit": -2.976e-05 + }, + "KAIA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "KAITO/USDT": { + "binance": 5e-05, + "okx": 3.26913455114e-05, + "hyperliquid": 0.0, + "bybit": 1.25e-05 + }, + "KAS/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "KAVA/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 4.687e-05, + "hyperliquid": 0.0 + }, + "KDA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "KEY/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "KISHU/USDT": { + "binance": 0.0, + "okx": -1.83009446926e-05, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "KLAY/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "KMNO/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "KNC/USDT": { + "binance": 0.0001, + "okx": 0.0004313810413418, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "KOMA/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "KSM/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0002310924820815, + "hyperliquid": 0.0 + }, + "L3/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LAYER/USDT": { + "binance": -9.407e-05, + "bybit": 0.0, + "okx": 7.46512000126e-05, + "hyperliquid": 0.0 + }, + "LDO/USDT": { + "binance": 2.554e-05, + "bybit": 0.0001, + "okx": 2.12617485823e-05, + "hyperliquid": 0.0 + }, + "LEVER/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LINA/USDT": { + "binance": 0.00053829, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "LINK/USDT": { + "binance": 0.0001, + "bybit": 8.39e-06, + "okx": 5.43031633819e-05, + "hyperliquid": 0.0 + }, + "LISTA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "LIT/USDT": { + "binance": 0.0001, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "LOKA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "LOOKS/USDT": { + "binance": 0.0, + "okx": 0.0005165638417602, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LOOM/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "LPT/USDT": { + "binance": 5e-05, + "okx": 5.43280522892e-05, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "LQTY/USDT": { + "binance": 6.84e-05, + "okx": 0.000146773212808, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "LRC/USDT": { + "binance": 0.0001, + "okx": 6.45756507091e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LSK/USDT": { + "binance": 5e-05, + "okx": 0.0003266379455322, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "LTC/USDT": { + "binance": 0.0001, + "okx": 3.22835384563e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LUCE/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LUMIA/USDT": { + "binance": 4.782e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "LUNA/USDT": { + "binance": 0.0, + "okx": 0.0001238350517831, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "LUNA2/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "LUNC/USDT": { + "binance": 0.0, + "okx": 3.1310382515e-05, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "MAGIC/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0001523853897277, + "hyperliquid": 0.0 + }, + "MAJOR/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": -5.861522492e-05, + "hyperliquid": 0.0 + }, + "MANA/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0001488060970565, + "hyperliquid": 0.0 + }, + "MANEKI/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "MANTA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -8.046e-05 + }, + "MASA/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "MASK/USDT": { + "binance": 4.572e-05, + "bybit": 0.0001, + "okx": -7.00115747515e-05, + "hyperliquid": 0.0 + }, + "MAV/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "MAVIA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": -0.00228465, + "hyperliquid": 0.0 + }, + "MAX/USDT": { + "binance": 0.0, + "okx": 5.51216180702e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "MBL/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "MBOX/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "MDT/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ME/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.000154149284176, + "hyperliquid": 0.0 + }, + "MELANIA/USDT": { + "binance": -4.786e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "MEME/USDT": { + "binance": -4.58e-06, + "okx": -1.00599572861e-05, + "hyperliquid": 0.0, + "bybit": 3.981e-05 + }, + "MEMEFI/USDT": { + "binance": 0.0, + "bybit": 3.861e-05, + "okx": 0.0001197461482573, + "hyperliquid": 0.0 + }, + "MERL/USDT": { + "binance": 0.0, + "okx": 8.68103669457e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "METIS/USDT": { + "binance": 5e-05, + "okx": 0.0001779430473108, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "MEW/USDT": { + "binance": -0.00429916, + "okx": -0.0068228233243517, + "hyperliquid": 0.0, + "bybit": -0.008 + }, + "MICHI/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "MINA/USDT": { + "binance": 0.0001, + "bybit": 5e-05, + "okx": 1.64523368812e-05, + "hyperliquid": 0.0 + }, + "MKR/USDT": { + "binance": -9.502e-05, + "okx": -0.0001239558024135, + "hyperliquid": 0.0, + "bybit": 4.353e-05 + }, + "MNT/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.00029901, + "hyperliquid": 0.0 + }, + "MOBILE/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "MOCA/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "MOODENG/USDT": { + "binance": 5e-05, + "okx": -0.0001222848085261, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "MORPHO/USDT": { + "binance": -3.432e-05, + "okx": 0.000107162519133, + "bybit": -0.00024418, + "hyperliquid": 0.0 + }, + "MOVE/USDT": { + "binance": -0.00181939, + "okx": -0.0030826859984188, + "bybit": -0.00115503, + "hyperliquid": 0.0 + }, + "MOVR/USDT": { + "binance": 5e-05, + "okx": 0.000183912211778, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "MTL/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "MUBARAK/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "MVL/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "MYRIA/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "MYRO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "NC/USDT": { + "binance": 0.0, + "okx": 0.0001057484035956, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "NEAR/USDT": { + "binance": 0.0001, + "okx": 7.01428892498e-05, + "hyperliquid": 0.0, + "bybit": 4.929e-05 + }, + "NEIRO/USDT": { + "binance": -3.909e-05, + "bybit": 0.0, + "okx": -7.51710495277e-05, + "hyperliquid": 0.0 + }, + "NEIROETH/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0001921976957791, + "hyperliquid": 0.0 + }, + "NEO/USDT": { + "binance": 0.0001, + "okx": 0.0002127075892313, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "NFP/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "NFT/USDT": { + "binance": 0.0, + "bybit": 0.0, + "okx": 3.26239756314e-05, + "hyperliquid": 0.0 + }, + "NIL/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "NKN/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "NMR/USDT": { + "binance": 5e-05, + "okx": 0.0001704181965901, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "NOT/USDT": { + "binance": 5e-05, + "okx": 0.0001377908825268, + "hyperliquid": 0.0, + "bybit": 4.952e-05 + }, + "NS/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "NTRN/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "NULS/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "OCEAN/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "OG/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.00015313, + "hyperliquid": 0.0 + }, + "OGN/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "OL/USDT": { + "binance": 0.0, + "okx": 3.52655256737e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "OM/USDT": { + "binance": -0.00028477, + "okx": 3.84216503128e-05, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "OMG/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "OMNI/USDT": { + "binance": 5e-05, + "bybit": 1.216e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "ONDO/USDT": { + "binance": -2.191e-05, + "bybit": -0.00023442, + "okx": -0.0001749516551891, + "hyperliquid": 0.0 + }, + "ONE/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": -1.7907020719e-06, + "hyperliquid": 0.0 + }, + "ONG/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "ONT/USDT": { + "binance": 0.0001, + "bybit": -6.707e-05, + "okx": 0.0002524986652682, + "hyperliquid": 0.0 + }, + "OP/USDT": { + "binance": 6.172e-05, + "okx": 0.0001242910245792, + "hyperliquid": 0.0, + "bybit": 9.905e-05 + }, + "ORBS/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": -0.0003252866485793, + "hyperliquid": 0.0 + }, + "ORCA/USDT": { + "binance": -0.0004026, + "okx": 0.0, + "bybit": -0.00019809, + "hyperliquid": 0.0 + }, + "ORDER/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "ORDI/USDT": { + "binance": 5e-05, + "okx": -4.9694853902e-06, + "bybit": -6.377e-05, + "hyperliquid": 0.0 + }, + "OSMO/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -1.501e-05, + "hyperliquid": 0.0 + }, + "OXT/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "PARTI/USDT": { + "binance": -0.00035134, + "bybit": 5e-05, + "okx": -0.000722413926117, + "hyperliquid": 0.0 + }, + "PAXG/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "PEAQ/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "PENDLE/USDT": { + "binance": 1.067e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 1.882e-05 + }, + "PENGU/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 9.89633182981e-05, + "hyperliquid": 0.0 + }, + "PEOPLE/USDT": { + "binance": 0.0001, + "okx": 5.35318864168e-05, + "bybit": 7.003e-05, + "hyperliquid": 0.0 + }, + "PEPE/USDT": { + "binance": 0.0, + "bybit": 0.0, + "okx": -6.57684166299e-05, + "hyperliquid": 0.0 + }, + "PERP/USDT": { + "binance": 5e-05, + "okx": 0.0001268796317364, + "hyperliquid": 0.0, + "bybit": -0.00018553 + }, + "PHA/USDT": { + "binance": 5e-05, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "PHB/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "PI/USDT": { + "binance": 0.0, + "okx": 4.83328582482e-05, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "PIPPIN/USDT": { + "binance": 5e-05, + "okx": 0.0001802589063738, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "PIXEL/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "PLUME/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "PNUT/USDT": { + "binance": 5e-05, + "bybit": -5.734e-05, + "okx": -2.35307699185e-05, + "hyperliquid": 0.0 + }, + "POL/USDT": { + "binance": 5e-05, + "okx": 0.0001811388764287, + "bybit": -7.825e-05, + "hyperliquid": 0.0 + }, + "POLYX/USDT": { + "binance": 5e-05, + "bybit": -1.98e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "PONKE/USDT": { + "binance": 5e-05, + "bybit": -0.00050831, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "POPCAT/USDT": { + "binance": 5e-05, + "okx": -4.63302432807e-05, + "bybit": 2.483e-05, + "hyperliquid": 0.0 + }, + "PORTAL/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": -0.00012302, + "hyperliquid": 0.0 + }, + "POWR/USDT": { + "binance": -0.00013237, + "bybit": -0.00091243, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "PRCL/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0001002890006714, + "hyperliquid": 0.0 + }, + "PRIME/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "PROM/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "PROS/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "PUFFER/USDT": { + "binance": 0.0, + "okx": 0.0002041676036803, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "PYR/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "PYTH/USDT": { + "binance": 5e-05, + "okx": -0.0001318650640338, + "hyperliquid": 0.0, + "bybit": -7.992e-05 + }, + "QI/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "QNT/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "QTUM/USDT": { + "binance": 0.0001, + "okx": -0.0001736946772435, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "QUICK/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "RAD/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "RARE/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "RAY/USDT": { + "binance": 5e-05, + "okx": -0.0001605156463153, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "RAYDIUM/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "RAYSOL/USDT": { + "binance": -0.00033647, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "RDNT/USDT": { + "binance": 0.0001, + "okx": 0.0001282409030359, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "RED/USDT": { + "binance": 7.51e-06, + "okx": 0.0, + "bybit": -4.73e-06, + "hyperliquid": 0.0 + }, + "REEF/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "REI/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "REN/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "RENDER/USDT": { + "binance": -6.993e-05, + "bybit": -5.182e-05, + "okx": -8.14270605604e-05, + "hyperliquid": 0.0 + }, + "REQ/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "REX/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "REZ/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": -0.00023697, + "hyperliquid": 0.0 + }, + "RIF/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "RIFSOL/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "RLC/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ROAM/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "RON/USDT": { + "binance": 0.0, + "okx": -0.0002823987626944, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "RONIN/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "ROSE/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "RPL/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "RSR/USDT": { + "binance": -0.00020406, + "okx": -0.0001886539503336, + "hyperliquid": 0.0, + "bybit": -8.243e-05 + }, + "RSS3/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "RUNE/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "RVN/USDT": { + "binance": 0.0001, + "okx": 0.0002524616309507, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "S/USDT": { + "binance": -3.463e-05, + "bybit": -1.298e-05, + "okx": -0.0001006344166854, + "hyperliquid": 0.0 + }, + "SAFE/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SAGA/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SAND/USDT": { + "binance": -2.39e-06, + "okx": -4.60379737558e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SANTOS/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "SATS/USDT": { + "binance": 0.0, + "okx": -0.0002225135983668, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "SC/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SCA/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": -0.0001035, + "hyperliquid": 0.0 + }, + "SCR/USDT": { + "binance": 5e-05, + "okx": 5.2919203393e-06, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "SCRT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SD/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SEI/USDT": { + "binance": 5.127e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "SEND/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SERAPH/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SFP/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SHELL/USDT": { + "binance": 5e-05, + "okx": 0.0001608463994388, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SHIB/USDT": { + "binance": 0.0, + "okx": -0.0001038770025568, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "SHIB1000/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -1.12e-06 + }, + "SIREN/USDT": { + "binance": -0.00151752, + "okx": 0.0, + "bybit": -0.00133034, + "hyperliquid": 0.0 + }, + "SKL/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SLERF/USDT": { + "binance": 5e-05, + "okx": 0.0002418595425795, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SLF/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SLP/USDT": { + "binance": 5e-05, + "okx": 0.0004098446440087, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SNT/USDT": { + "binance": 5e-05, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SNX/USDT": { + "binance": 0.0001, + "okx": 0.0002140700172441, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "SOL/USDT": { + "binance": -6.619e-05, + "okx": -4.51295384761e-05, + "hyperliquid": 0.0, + "bybit": 2.113e-05 + }, + "SOL/USDT-04APR25": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SOL/USDT-11APR25": { + "binance": 0.0, + "bybit": 0.0, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SOL/USDT-25APR25": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "SOLAYER/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 2.5e-05 + }, + "SOLO/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SOLV/USDT": { + "binance": 5e-05, + "okx": -5.63433930199e-05, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SONIC/USDT": { + "binance": 5e-05, + "okx": 0.0001370072906239, + "bybit": 1.25e-05, + "hyperliquid": 0.0 + }, + "SPEC/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SPELL/USDT": { + "binance": -9.137e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 1.232e-05 + }, + "SPX/USDT": { + "binance": 7.83e-06, + "okx": 0.0, + "bybit": -0.00052404, + "hyperliquid": 0.0 + }, + "SSV/USDT": { + "binance": 0.0001, + "okx": 7.23448985837e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "STEEM/USDT": { + "binance": -6.196e-05, + "okx": 0.0, + "bybit": -0.00019916, + "hyperliquid": 0.0 + }, + "STG/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "STMX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "STORJ/USDT": { + "binance": 7.199e-05, + "bybit": -0.00018904, + "okx": 0.0001718262702869, + "hyperliquid": 0.0 + }, + "STPT/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "STRAX/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0 + }, + "STRK/USDT": { + "binance": 5e-05, + "okx": -1.103922722e-07, + "hyperliquid": 1.25e-05, + "bybit": 3.803e-05 + }, + "STX/USDT": { + "binance": -8.441e-05, + "okx": -0.0001149093210234, + "bybit": 3.173e-05, + "hyperliquid": 1.25e-05 + }, + "SUI/USDT": { + "binance": -8.924e-05, + "bybit": -3.615e-05, + "okx": -9.16733967239e-05, + "hyperliquid": 1.25e-05 + }, + "SUN/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SUNDOG/USDT": { + "binance": 0.0, + "okx": -0.0003633553728857, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SUPER/USDT": { + "binance": -0.00017664, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "SUSHI/USDT": { + "binance": 0.0001, + "okx": 0.0001174067260998, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "SWARMS/USDT": { + "binance": 5e-05, + "bybit": 0.0001, + "okx": 0.0001426872851459, + "hyperliquid": 0.0 + }, + "SWEAT/USDT": { + "binance": 0.0, + "okx": -2.79528735229e-05, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "SWELL/USDT": { + "binance": -0.0089757, + "okx": -0.0072877155753813, + "bybit": -0.00948736, + "hyperliquid": 0.0 + }, + "SXP/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "SYN/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "SYS/USDT": { + "binance": -3e-06, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.0012112 + }, + "T/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": -4.70578885397e-05, + "hyperliquid": 0.0 + }, + "TAI/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "TAIKO/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "TAO/USDT": { + "binance": 5e-05, + "okx": 8.15151948291e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "THE/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "THETA/USDT": { + "binance": 7.73e-06, + "okx": -3.13075393182e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "TIA/USDT": { + "binance": 5e-05, + "okx": -3.70791718465e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "TLM/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 6.183e-05 + }, + "TNSR/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": -6.78314029187e-05, + "hyperliquid": 2.7386e-06 + }, + "TOKEN/USDT": { + "binance": -0.00043095, + "okx": 0.0, + "bybit": -0.00029696, + "hyperliquid": 0.0 + }, + "TON/USDT": { + "binance": 5e-05, + "okx": -9.182741384e-06, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "TRB/USDT": { + "binance": 5e-05, + "okx": 3.28320986095e-05, + "hyperliquid": 7.0845e-06, + "bybit": 5e-05 + }, + "TROY/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "TRU/USDT": { + "binance": 9.448e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": -0.0002766 + }, + "TRUMP/USDT": { + "binance": 5e-05, + "okx": 6.09754888632e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "TRX/USDT": { + "binance": 8.147e-05, + "bybit": 0.0001, + "okx": -1.15225418115e-05, + "hyperliquid": 1.25e-05 + }, + "TST/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 1.25e-05 + }, + "TSTBSC/USDT": { + "binance": 0.0, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "TURBO/USDT": { + "binance": 5e-05, + "okx": 1.80933107699e-05, + "hyperliquid": 1.25e-05, + "bybit": 0.0 + }, + "TUT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.00079353, + "hyperliquid": 0.0 + }, + "TWT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "ULTI/USDT": { + "binance": 0.0, + "okx": -7.02464238422e-05, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "UMA/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": -9.4122575359e-06, + "hyperliquid": 1.25e-05 + }, + "UNFI/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "UNI/USDT": { + "binance": 7.48e-05, + "bybit": -3.076e-05, + "okx": 1.23368978135e-05, + "hyperliquid": 1.25e-05 + }, + "USDC/USDT": { + "binance": 0.0001, + "okx": -2.68792192469e-05, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "USDE/USDT": { + "binance": 0.0, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "USTC/USDT": { + "binance": 5e-05, + "okx": 0.0001127055220206, + "bybit": -4.894e-05, + "hyperliquid": 1.25e-05 + }, + "USUAL/USDT": { + "binance": -0.00022938, + "okx": 0.0, + "bybit": 2.5e-05, + "hyperliquid": 1.25e-05 + }, + "UXLINK/USDT": { + "binance": 5e-05, + "bybit": 5e-05, + "okx": 0.0003311807267792, + "hyperliquid": 0.0 + }, + "VANA/USDT": { + "binance": -0.00022135, + "okx": -0.0001247088812351, + "bybit": 2.5e-05, + "hyperliquid": 0.0 + }, + "VANRY/USDT": { + "binance": -0.00013606, + "bybit": -0.00011988, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "VELO/USDT": { + "binance": 0.0, + "okx": 3.9510797046e-06, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "VELODROME/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "VET/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0 + }, + "VIC/USDT": { + "binance": 1.569e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "VIDT/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "VINE/USDT": { + "binance": 5e-05, + "okx": 7.61359141338e-05, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "VIRTUAL/USDT": { + "binance": 5e-05, + "okx": 6.99546087747e-05, + "bybit": 1.992e-05, + "hyperliquid": 1.25e-05 + }, + "VOXEL/USDT": { + "binance": 5e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 5e-05 + }, + "VRA/USDT": { + "binance": 0.0, + "bybit": 0.0001, + "okx": 7.7014943476e-05, + "hyperliquid": 0.0 + }, + "VVV/USDT": { + "binance": 1.691e-05, + "okx": 0.0, + "bybit": -8.084e-05, + "hyperliquid": 7.482e-06 + }, + "VTHO/USDT": { + "binance": 5e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 0.0 + }, + "W/USDT": { + "binance": 1.272e-05, + "okx": -0.0001586405214845, + "bybit": 5e-05, + "hyperliquid": -1.9044e-06 + }, + "WAVES/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "WAXP/USDT": { + "binance": 5e-05, + "bybit": -0.00027619, + "okx": 0.000220064775302, + "hyperliquid": 0.0 + }, + "WIF/USDT": { + "binance": 5e-05, + "okx": 0.0001318356042674, + "bybit": 5e-05, + "hyperliquid": 1.25e-05 + }, + "WLD/USDT": { + "binance": 0.0001, + "okx": 0.0001205873858765, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "WOO/USDT": { + "binance": 0.0001, + "okx": -0.0001646878595371, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "X/USDT": { + "binance": 0.0, + "okx": 1.35227612004e-05, + "bybit": 0.0, + "hyperliquid": 0.0 + }, + "XAI/USDT": { + "binance": -4.009e-05, + "okx": 0.0, + "bybit": 5e-05, + "hyperliquid": 1.09852e-05 + }, + "XCH/USDT": { + "binance": 0.0, + "okx": 0.000184457974597, + "bybit": 0.00014853, + "hyperliquid": 0.0 + }, + "XEM/USDT": { + "binance": 0.0001, + "okx": 0.0, + "bybit": -0.00259396, + "hyperliquid": 0.0 + }, + "XLM/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 8.26174907721e-05, + "hyperliquid": 1.25e-05 + }, + "XMR/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "XRP/USDT": { + "binance": 0.0001, + "bybit": 0.0001, + "okx": 9.12208929964e-05, + "hyperliquid": 1.25e-05 + }, + "XTZ/USDT": { + "binance": 0.0001, + "okx": -6.32706583511e-05, + "bybit": 1.409e-05, + "hyperliquid": 0.0 + }, + "XVG/USDT": { + "binance": -1.4e-05, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "XVS/USDT": { + "binance": 0.0001, + "okx": 0.0, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "YFI/USDT": { + "binance": 0.0001, + "okx": -1.58937419736e-05, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "YGG/USDT": { + "binance": 1.649e-05, + "bybit": 5e-05, + "okx": 0.0001569121625008, + "hyperliquid": 1.25e-05 + }, + "ZEC/USDT": { + "binance": -8.647e-05, + "okx": 0.0, + "bybit": 0.0001, + "hyperliquid": 0.0 + }, + "ZEN/USDT": { + "binance": -2.916e-05, + "okx": 0.0, + "hyperliquid": 1.25e-05, + "bybit": -3.667e-05 + }, + "ZENT/USDT": { + "binance": 0.0, + "okx": -3.57382827815e-05, + "bybit": -0.00042279, + "hyperliquid": 0.0 + }, + "ZEREBRO/USDT": { + "binance": 5e-05, + "okx": 0.0002519384654199, + "bybit": 0.0001, + "hyperliquid": 1.25e-05 + }, + "ZETA/USDT": { + "binance": -0.000147, + "okx": -4.27078423356e-05, + "hyperliquid": -5.5043e-06, + "bybit": 2.5e-05 + }, + "ZIL/USDT": { + "binance": 0.0001, + "okx": 7.48261336396e-05, + "hyperliquid": 0.0, + "bybit": 0.0001 + }, + "ZK/USDT": { + "binance": 5e-05, + "okx": 9.53997068763e-05, + "hyperliquid": 1.25e-05, + "bybit": 5e-05 + }, + "ZKJ/USDT": { + "binance": 0.0, + "bybit": 0.00 \ No newline at end of file diff --git a/funding_rates.py b/funding_rates.py new file mode 100644 index 0000000..e7f73b1 --- /dev/null +++ b/funding_rates.py @@ -0,0 +1,112 @@ +import requests +import json +from collections import defaultdict +from concurrent.futures import ThreadPoolExecutor, as_completed + +# === GET SYMBOLS FROM EXCHANGES === + +def get_binance_symbols(): + url = "https://fapi.binance.com/fapi/v1/exchangeInfo" + data = requests.get(url).json() + return [s["symbol"].replace("USDT", "/USDT") for s in data["symbols"] if s["quoteAsset"] == "USDT"] + +def get_bybit_symbols(): + url = "https://api.bybit.com/v5/market/instruments-info" + params = {"category": "linear"} + r = requests.get(url, params=params) + data = r.json() + return [ + s["symbol"].replace("USDT", "/USDT") + for s in data.get("result", {}).get("list", []) + if "USDT" in s["symbol"] + ] + +def get_okx_symbols(): + url = "https://www.okx.com/api/v5/public/instruments" + params = {"instType": "SWAP"} + data = requests.get(url, params=params).json() + return [s["instId"].replace("-USDT-SWAP", "/USDT") for s in data.get("data", []) if s["instId"].endswith("USDT-SWAP")] + +# === LOAD SYMBOLS === + +bybit_symbols = get_bybit_symbols() +binance_symbols = get_binance_symbols() +okx_symbols = get_okx_symbols() + +symbols = sorted(list(set(bybit_symbols + binance_symbols + okx_symbols))) + +# === FUNDING FUNCTIONS === + +def normalize_symbol(symbol): + return symbol.replace("/", "") + +def get_binance_funding(symbol): + try: + url = "https://fapi.binance.com/fapi/v1/premiumIndex" + params = {"symbol": normalize_symbol(symbol)} + data = requests.get(url, params=params, timeout=3).json() + return "binance", symbol, float(data.get("lastFundingRate", 0)) + except Exception as e: + print(f"[Binance] {symbol} funding error: {e}") + return "binance", symbol, 0.0 + +def get_bybit_funding(symbol): + try: + url = "https://api.bybit.com/v5/market/tickers" + params = {"category": "linear"} + data = requests.get(url, params=params, timeout=3).json() + for item in data.get("result", {}).get("list", []): + if item.get("symbol") == normalize_symbol(symbol): + return "bybit", symbol, float(item.get("fundingRate", 0)) + except Exception as e: + print(f"[Bybit] {symbol} funding error: {e}") + return "bybit", symbol, 0.0 + +def get_okx_funding(symbol): + try: + inst_id = symbol.replace("/", "-") + "-SWAP" + url = "https://www.okx.com/api/v5/public/funding-rate" + params = {"instId": inst_id} + data = requests.get(url, params=params, timeout=3).json() + return "okx", symbol, float(data.get("data", [{}])[0].get("fundingRate", 0)) + except Exception as e: + print(f"[OKX] {symbol} funding error: {e}") + return "okx", symbol, 0.0 + +def get_hyperliquid_funding(symbol): + try: + symbol_usd = symbol.replace("USDT", "USD").replace("/", "") + url = "https://api.hyperliquid.xyz/info" + headers = {"Content-Type": "application/json"} + payload = {"type": "metaAndAssetCtxs"} + response = requests.post(url, headers=headers, json=payload) + data = response.json() + assets = data[0]["universe"] + asset_data = data[1] + for i in range(len(assets)): + name = assets[i].get("name", "").upper() + if name == symbol_usd.replace("USD", "").upper(): + return "hyperliquid", symbol, float(asset_data[i].get("funding", 0)) + except Exception as e: + print(f"[Hyperliquid Funding Error] {symbol}: {e}") + return "hyperliquid", symbol, 0.0 + +funding_funcs = [ + get_binance_funding, + get_bybit_funding, + get_okx_funding, + get_hyperliquid_funding # ✅ incluir aqui +] +funding_data = defaultdict(dict) + +with ThreadPoolExecutor(max_workers=20) as executor: + tasks = [executor.submit(func, symbol) for symbol in symbols for func in funding_funcs] + for future in as_completed(tasks): + exchange, symbol, rate = future.result() + funding_data[symbol][exchange] = rate + +# Save to file +with open("funding_cache.json", "w") as f: + json.dump(funding_data, f, indent=2) + +print("[✓] funding_cache.json atualizado com sucesso") diff --git a/logger.py b/logger.py new file mode 100644 index 0000000..5cd3cf0 --- /dev/null +++ b/logger.py @@ -0,0 +1,13 @@ +from datetime import datetime + +def log_opportunity(opp: dict): + timestamp = datetime.utcnow().strftime('%Y-%m-%d %H:%M:%S') + message = ( + f"[{timestamp}] {opp['symbol']} | BUY on {opp['buy_exchange']} @ {opp['buy_price']} " + f"-> SELL on {opp['sell_exchange']} @ {opp['sell_price']} | " + f"Net Spread: {opp['spread_percent']:.2f}% | Size: {opp['size']:.4f} " + f"| Funding BUY: {opp['buy_funding']:.5f}, SELL: {opp['sell_funding']:.5f}" + ) + print(message) + #with open("opportunities.txt", "a") as f: + #f.write(message + "\n") diff --git a/main.py b/main.py new file mode 100644 index 0000000..242bfc7 --- /dev/null +++ b/main.py @@ -0,0 +1,27 @@ +import asyncio +from exchanges.binance import BinancePerpStream +from exchanges.okx import OKXPerpStream +from exchanges.bybit import BybitPerpStream +from exchanges.hyperliquid import HyperliquidPerpStream +from logger import log_opportunity +from spread_calculator import check_arbitrage_opportunities + +latest_ticks = {} + +async def consumer(exchange, stream): + async for tick in stream(): + latest_ticks[(tick['exchange'], tick['symbol'])] = tick + opportunities = check_arbitrage_opportunities(tick, latest_ticks) + for opp in opportunities: + log_opportunity(opp) + +async def main(): + tasks = [ + consumer('binance', BinancePerpStream(["USDT"]).stream), + consumer('okx', OKXPerpStream(["USDT"]).stream), + consumer('bybit', BybitPerpStream(["USDT"]).stream) + ] + await asyncio.gather(*tasks) + +if __name__ == "__main__": + asyncio.run(main()) diff --git a/spread_calculator.py b/spread_calculator.py new file mode 100644 index 0000000..0c2499c --- /dev/null +++ b/spread_calculator.py @@ -0,0 +1,63 @@ +import threading +import time +import json +from exchanges.binance import BinancePerpStream +from exchanges.okx import OKXPerpStream +from exchanges.bybit import BybitPerpStream + +FEE = 0.0005 # taker fee +FUNDING_WEIGHT = 1 # pondera funding rate (ex: por 8h) +MIN_SPREAD = 0.4 # mínimo spread líquido para registrar + +# Lista de exchanges que você quer considerar na arbitragem +ENABLED_EXCHANGES = {"bybit", "okx", "binance"} + +# Carrega funding de arquivo externo salvo periodicamente +with open("funding_cache.json", "r") as f: + funding_cache = json.load(f) + +def check_arbitrage_opportunities(new_tick, all_ticks): + opportunities = [] + symbol = new_tick['symbol'] + + if new_tick['exchange'].lower() not in ENABLED_EXCHANGES: + return opportunities + + for (ex_name, ex_symbol), tick in all_ticks.items(): + if ex_symbol != symbol or ex_name == new_tick['exchange']: + continue + + for buyer, seller in [(new_tick, tick), (tick, new_tick)]: + if buyer['exchange'].lower() not in ENABLED_EXCHANGES or seller['exchange'].lower() not in ENABLED_EXCHANGES: + continue + + buy_price = buyer['ask'] * (1 + FEE) + sell_price = seller['bid'] * (1 - FEE) + + if sell_price <= buy_price: + continue + + spread = sell_price - buy_price + spread_percent = (spread / buy_price) * 100 + size = min(buyer['ask_size'], seller['bid_size']) + + buy_funding = funding_cache.get(symbol, {}).get(buyer['exchange'], 0.0) * 100 + sell_funding = funding_cache.get(symbol, {}).get(seller['exchange'], 0.0) * 100 + funding_carry = sell_funding - buy_funding + net_spread_percent = spread_percent + FUNDING_WEIGHT * funding_carry + + if net_spread_percent > MIN_SPREAD: + opportunities.append({ + 'symbol': symbol, + 'buy_exchange': buyer['exchange'], + 'buy_price': buyer['ask'], + 'sell_exchange': seller['exchange'], + 'sell_price': seller['bid'], + 'spread_percent': net_spread_percent, + 'raw_spread_percent': spread_percent, + 'buy_funding': buy_funding, + 'sell_funding': sell_funding, + 'size': size + }) + + return opportunities