Untitled

mail@pastecode.io avatar
unknown
plain_text
2 years ago
31 kB
2
Indexable
Never
[
  {
    "id": "ftx",
    "endpoint": {
      "rest": "ftx.com",
      "ws": "ftx.com"
    },
    "channels": {
      "orderbook": "orderbook",
      "fills": "fills",
      "positions": "position",
      "orders": "orders",
      "trades": "trades"
    },
    "order": {
      "market": {
        "local": "market",
        "global": "market"
      },
      "limit": {
        "local": "limit",
        "global": "limit"
      },
      "buy": {
        "local": "buy",
        "global": "buy"
      },
      "sell": {
        "local": "sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "BTC-PERP",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 1,
        "min-order-size": 0.0001
      },
      {
        "local": "BTC/USD",
        "global": "BTC:USD:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.001,
        "min-order-size": 1
      },
      {
        "local": "FTT-PERP",
        "global": "FTT:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.001,
        "min-order-size": 0.1
      },
      {
        "local": "FTT/USD",
        "global": "FTT:USD:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.001,
        "min-order-size": 0.1
      },
      {
        "local": "ETH/USD",
        "global": "ETH:USD:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.1,
        "min-order-size": 0.001
      },
      {
        "local": "FTT/USDT",
        "global": "FTT:USDT:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.001,
        "min-order-size": 0.1
      },
      {
        "local": "SOL/USD",
        "global": "SOL:USD:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.001,
        "min-order-size": 1
      },
      {
        "local": "SOL-PERP",
        "global": "SOL:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.001,
        "min-order-size": 1
      },
      {
        "local": "ETH-PERP",
        "global": "ETH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      },
      {
        "local": "LTC-PERP",
        "global": "LTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.001,
        "min-order-size": 0.01
      },
      {
        "local": "BCH-PERP",
        "global": "BCH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.001,
        "min-order-size": 0.001
      },
      {
        "local": "DOGE-PERP",
        "global": "DOGE:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.001,
        "min-order-size": 1
      },
      {
        "local": "ETH-1231",
        "global": "ETH:USD:1231",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "",
        "scale": 1
      },
      {
        "local": "LTC",
        "global": "LTC",
        "type": "",
        "scale": 1
      },
      {
        "local": "FTT",
        "global": "FTT",
        "type": "",
        "scale": 1
      },
      {
        "local": "SRM_LOCKED",
        "global": "SRM",
        "type": "",
        "scale": 1
      },
      {
        "local": "USD",
        "global": "USD",
        "type": "",
        "scale": 1
      },
      {
        "local": "ETH",
        "global": "ETH",
        "type": "",
        "scale": 1
      },
      {
        "local": "USDT",
        "global": "USDT",
        "type": "",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "USDT",
        "global": "USDT",
        "methods": ["erc20", "trx", "sol"]
      },

      {
        "local": "BTC",
        "global": "BTC",
        "methods": ["btc", "sol"]
      },
      {
        "local": "LTC",
        "global": "LTC",
        "methods": ["ltc"]
      },
      {
        "local": "FTT",
        "global": "FTT",
        "methods": ["erc20", "bep2", "sol"]
      },      
      {
        "local": "ETH",
        "global": "ETH",
        "methods": ["eth", "sol"]
      }
    ],
    "errors": [
      {
        "local": "Account does not have enough margin for order.",
        "global": "NO_ENOUGH_MARGIN"
      },
      {
        "local": "Size too small for provide",
        "global": "SIZE_TOO_SMALL"
      }
    ]
  },
  {
    "id": "bitmex-testnet",
    "endpoint": {
      "rest": "testnet.bitmex.com",
      "ws": "testnet.bitmex.com"
    },
    "channels": {
      "orderbook": "orderBookL2_25",
      "fills": "execution",
      "positions": "position",
      "orders": "order",
      "trades": "trade"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "MARKET"
      },
      "limit": {
        "local": "Limit",
        "global": "LIMIT"
      },
      "buy": {
        "local": "Buy",
        "global": "BUY"
      },
      "sell": {
        "local": "Sell",
        "global": "SELL"
      }
    },
    "markets": [
      {
        "local": "XBTUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.5,
        "min-order-size": 100
      },
      {
        "local": "ADAUSDT",
        "global": "ADA:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0005,
        "min-order-size": 0.0001
      },
      {
        "local": "EOSUSDT",
        "global": "EOS:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.5,
        "min-order-size": 0.0001
      },
      {
        "local": "BCHUSD",
        "global": "BCH:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.0001
      },
      {
        "local": "DOGEUSDT",
        "global": "DOGE:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0003
      },
      {
        "local": "DOTUSDT",
        "global": "DOT:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0001,
        "min-order-size": 0.0001
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.0024,
        "contract-value": 0.0024
      },
      {
        "local": "LINKUSDT",
        "global": "LINK:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0005,
        "min-order-size": 0.0001
      },
      {
        "local": "LTCUSD",
        "global": "LTC:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.0001
      },
      {
        "local": "UNIUSDT",
        "global": "UNI:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.001,
        "min-order-size": 0.0001
      },
      {
        "local": "TRXUSDT",
        "global": "TRX:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0001
      },
      {
        "local": "XRPUSDT",
        "global": "XRP:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0001,
        "min-order-size": 0.0001
      },
      {
        "local": "XLMUSDT",
        "global": "XLM:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0001
      }
    ],
    "balances": [
      {
        "local": "XBt",
        "global": "BTC",
        "type": "",
        "scale": 100000000
      }
    ],
    "errors": [
      {
        "local": "Account has insufficient Available Balance",
        "global": "NO_ENOUGH_MARGIN"
      },
      {
        "local": "Invalid orderQty",
        "global": "SIZE_TOO_SMALL"
      }
    ]
  },
  {
    "id": "bitmex",
    "endpoint": {
      "rest": "www.bitmex.com",
      "ws": "www.bitmex.com"
    },
    "channels": {
      "orderbook": "orderBookL2_25",
      "fills": "execution",
      "positions": "position",
      "orders": "order",
      "trades": "trade"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "MARKET"
      },
      "limit": {
        "local": "Limit",
        "global": "LIMIT"
      },
      "buy": {
        "local": "Buy",
        "global": "BUY"
      },
      "sell": {
        "local": "Sell",
        "global": "SELL"
      }
    },
    "markets": [
      {
        "local": "XBTUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.5,
        "min-order-size": 100
      },
      {
        "local": "ADAUSDT",
        "global": "ADA:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0005,
        "min-order-size": 0.0001
      },
      {
        "local": "DOGEUSDT",
        "global": "DOGE:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.001
      },
      {
        "local": "EOSUSDT",
        "global": "EOS:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.5,
        "min-order-size": 0.0001
      },
      {
        "local": "BCHUSD",
        "global": "BCH:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.000001
      },
      {
        "local": "DOGEUSDT",
        "global": "DOGE:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0001
      },
      {
        "local": "DOTUSDT",
        "global": "DOT:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0001,
        "min-order-size": 0.0001
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.000001
      },
      {
        "local": "LINKUSDT",
        "global": "LINK:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0005,
        "min-order-size": 0.0001
      },
      {
        "local": "LTCUSD",
        "global": "LTC:USD:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.05,
        "min-order-size": 0.0001
      },
      {
        "local": "UNIUSDT",
        "global": "UNI:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.001,
        "min-order-size": 0.0001
      },
      {
        "local": "TRXUSDT",
        "global": "TRX:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0001
      },
      {
        "local": "XRPUSDT",
        "global": "XRP:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.0001,
        "min-order-size": 0.0001
      },
      {
        "local": "XLMUSDT",
        "global": "XLM:USDT:PERP",
        "type": "INVERSE-QUANTO",
        "min-tick-size": 0.00001,
        "min-order-size": 0.0001
      }
    ],
    "balances": [
      {
        "local": "XBt",
        "global": "BTC",
        "type": "",
        "scale": 100000000
      }
    ],
    "errors": [
      {
        "local": "Account has insufficient Available Balance",
        "global": "NO_ENOUGH_MARGIN"
      },
      {
        "local": "Invalid orderQty",
        "global": "SIZE_TOO_SMALL"
      }
    ]
  },
  {
    "id": "bybit-testnet",
    "endpoint": {
      "rest": "api-testnet.bybit.com",
      "ws": "stream-testnet.bybit.com"
    },
    "channels": {
      "orderbook": "orderBookL2_25",
      "fills": "execution",
      "positions": "position",
      "orders": "order",
      "trades": "trade"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "market"
      },
      "limit": {
        "local": "Limit",
        "global": "limit"
      },
      "buy": {
        "local": "Buy",
        "global": "buy"
      },
      "sell": {
        "local": "Sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "BTCUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 1
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 0.0001
      },
      {
        "local": "BTCUSDT",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.0001
      },
      {
        "local": "DOGEUSDT",
        "global": "DOGE:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.0001,
        "min-order-size": 1
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "",
        "scale": 1
      },
      {
        "local": "USDT",
        "global": "USDT",
        "type": "",
        "scale": 1
      }
    ],
    "errors": [
      {
        "local": "30031",
        "global": "NO_ENOUGH_MARGIN"
      },
      {
        "local": "10001",
        "global": "SIZE_TOO_SMALL"
      }
    ]
  },
  {
    "id": "bybit",
    "endpoint": {
      "rest": "api.bybit.com",
      "ws": "stream.bybit.com"
    },
    "channels": {
      "orderbook": "orderBookL2_25",
      "fills": "execution",
      "positions": "position",
      "orders": "order",
      "trades": "trade"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "market"
      },
      "limit": {
        "local": "Limit",
        "global": "limit"
      },
      "buy": {
        "local": "Buy",
        "global": "buy"
      },
      "sell": {
        "local": "Sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "BTCUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 1
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 1
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.05,
        "min-order-size": 1
      },
      {
        "local": "BTCUSDT",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.0001
      },
      {
        "local": "LTCUSDT",
        "global": "LTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.1
      },
      {
        "local": "ETHUSD1231",
        "global": "ETH:USD:1231",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 0.05
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "",
        "scale": 1
      },
      {
        "local": "ETH",
        "global": "ETH",
        "type": "",
        "scale": 1
      },
      {
        "local": "USDT",
        "global": "USDT",
        "type": "",
        "scale": 1
      }
    ],
    "errors": [
      {
        "local": "30031",
        "global": "NO_ENOUGH_MARGIN"
      },
      {
        "local": "10001",
        "global": "SIZE_TOO_SMALL"
      }
    ]
  },
  {
    "id": "phemex",
    "endpoint": {
      "rest": "api.phemex.com",
      "ws": "phemex.com"
    },
    "channels": {
      "orderbook": "orderbook",
      "fills": "aop",
      "positions": "position",
      "trades": "trade",
      "orders": "aop"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "MARKET"
      },
      "limit": {
        "local": "Limit",
        "global": "LIMIT"
      },
      "buy": {
        "local": "Buy",
        "global": "BUY"
      },
      "sell": {
        "local": "Sell",
        "global": "SELL"
      }
    },
    "markets": [
      {
        "local": "BTCUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.5,
        "min-order-size": 1
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.05,
        "min-order-size": 0.005
      },
      {
        "local": "XRPUSD",
        "global": "XRP:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.0001,
        "min-order-size": 5
      },
      {
        "local": "LINKUSD",
        "global": "LINK:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.2
      },
      {
        "local": "BCHUSD",
        "global": "BCH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.05,
        "min-order-size": 0.005
      },
      {
        "local": "DOGEUSD",
        "global": "DOGE:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.0001,
        "min-order-size": 100
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "",
        "scale": 100000000
      },
      {
        "local": "USD",
        "global": "USD",
        "type": "",
        "scale": 10000
      }
    ],
    "deposits": [
      {
      "local": "USDT",
      "global": "USDT",
      "methods": ["TRC20", "ERC20"]
      },
      {
        "local": "BTC",
        "global": "BTC",
        "methods": ["BTC"]
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": ["ETH"]
       }
    ]

  },
  {
    "id": "phemex-testnet",
    "endpoint": {
      "rest": "testnet-api.phemex.com",
      "ws": "testnet.phemex.com"
    },
    "channels": {
      "orderbook": "orderbook",
      "fills": "aop",
      "positions": "position",
      "trades": "trade",
      "orders": "aop"
    },
    "order": {
      "market": {
        "local": "Market",
        "global": "MARKET"
      },
      "limit": {
        "local": "Limit",
        "global": "LIMIT"
      },
      "buy": {
        "local": "Buy",
        "global": "BUY"
      },
      "sell": {
        "local": "Sell",
        "global": "SELL"
      }
    },
    "markets": [
      {
        "local": "BTCUSD",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.5,
        "min-order-size": 1
      },
      {
        "local": "ETHUSD",
        "global": "ETH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.05,
        "min-order-size": 0.005
      },
      {
        "local": "XRPUSD",
        "global": "XRP:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.0001,
        "min-order-size": 5
      },
      {
        "local": "LINKUSD",
        "global": "LINK:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.2
      },
      {
        "local": "BCHUSD",
        "global": "BCH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.05,
        "min-order-size": 0.005
      },
      {
        "local": "DOGEUSD",
        "global": "DOGE:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.0001,
        "min-order-size": 100
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "",
        "scale": 100000000
      },
      {
        "local": "USD",
        "global": "USD",
        "type": "",
        "scale": 100000000
      }
    ],
    "deposits": [
      {
      "local": "USDT",
      "global": "USDT",
      "methods": ["TRC20", "ERC20"]
      },
      {
        "local": "BTC",
        "global": "BTC",
        "methods": ["BTC"]
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": ["ETH"]
       }
    ]
  },
  {
    "id": "huobi-usdt",
    "endpoint": {
      "rest": "api.hbdm.com",
      "ws": "api.hbdm.com"
    },
    "channels": {
      "orderbook": "orderbook",
      "fills": "matchOrders",
      "positions": "positions"
    },
    "order": {
      "market": {
        "local": "market",
        "global": "market"
      },
      "limit": {
        "local": "limit",
        "global": "limit"
      },
      "buy": {
        "local": "buy",
        "global": "buy"
      },
      "sell": {
        "local": "sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "BTC-PERP",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.00001
      },
      {
        "local": "BTC-PERP",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.00001
      }
    ],
    "balances": [
      {
        "local": "btc",
        "global": "BTC",
        "type": "LINEAR",
        "scale": 1
      },
      {
        "local": "usdt",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      },
      {
        "local": "iota",
        "global": "IOTA",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "pairs": [
      {
        "local": "btcusdt",
        "base": "BTC",
        "quoted": "USDT"
      }
    ]
  },
  {
    "id": "gateusdt",
    "endpoint": {
      "rest": "fx-api.gateio.ws",
      "ws": "fx-ws.gateio.ws"
    },
    "channels": {
      "orderbook": "orderbook",
      "fills": "futures.usertrades",
      "positions": "position"
    },
    "order": {
      "market": {
        "local": "market",
        "global": "market"
      },
      "limit": {
        "local": "limit",
        "global": "limit"
      },
      "buy": {
        "local": "buy",
        "global": "buy"
      },
      "sell": {
        "local": "sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "BTC-PERP",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 0.0001
      }
    ],
    "balances": [
      {
        "local": "BTC",
        "global": "BTC",
        "type": "LINEAR",
        "scale": 1000000
      },
      {
        "local": "USDT",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1000000
      },
      {
        "local": "IOTA",
        "global": "IOTA",
        "type": "INVERSE",
        "scale": 1000000
      }
    ]
  },
  {
    "id": "kraken-testnet",
    "endpoint": {
      "rest": "demo-futures.kraken.com/derivatives",
      "ws": "demo-futures.kraken.com/ws/v1"
    },
    "channels": {
      "orderbook": "book",
      "fills": "fills",
      "positions": "positions",
      "trades": "trade",
      "orders": "open_orders"
    },
    "order": {
      "market": {
        "local": "market",
        "global": "market"
      },
      "limit": {
        "local": "limit",
        "global": "limit"
      },
      "buy": {
        "local": "buy",
        "global": "buy"
      },
      "sell": {
        "local": "sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "pi_xbtusd",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 1
      }
    ],
    "balances": [
      {
        "local": "xbt",
        "global": "BTC",
        "type": "LINEAR",
        "scale": 1
      },
      {
        "local": "eth",
        "global": "ETH",
        "type": "LINEAR",
        "scale": 1
      },
      {
        "local": "usdt",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      },
      {
        "local": "usdc",
        "global": "USDC",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "pairs": [
      {
        "local": "btcusdt",
        "base": "BTC",
        "quoted": "USDT"
      }
    ]
  },
  {
    "id": "kraken",
    "endpoint": {
      "rest": "futures.kraken.com/derivatives",
      "ws": "futures.kraken.com/ws/v1"
    },
    "channels": {
      "orderbook": "book",
      "fills": "fills",
      "positions": "positions",
      "trades": "trade",
      "orders": "open_orders"
    },
    "order": {
      "market": {
        "local": "market",
        "global": "market"
      },
      "limit": {
        "local": "limit",
        "global": "limit"
      },
      "buy": {
        "local": "buy",
        "global": "buy"
      },
      "sell": {
        "local": "sell",
        "global": "sell"
      }
    },
    "markets": [
      {
        "local": "pi_xbtusd",
        "global": "BTC:USD:PERP",
        "type": "INVERSE",
        "min-tick-size": 0.01,
        "min-order-size": 1
      }
    ],
    "balances": [
      {
        "local": "xbt",
        "global": "BTC",
        "type": "LINEAR",
        "scale": 1
      },
      {
        "local": "eth",
        "global": "ETH",
        "type": "LINEAR",
        "scale": 1
      },
      {
        "local": "usdt",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      },
      {
        "local": "usdc",
        "global": "USDC",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "pairs": [
      {
        "local": "btcusdt",
        "base": "BTC",
        "quoted": "USDT"
      }
    ]
  },
  {
    "id": "bitfinex-testnet",
    "endpoint": {
      "rest": "api-pub.bitfinex.com",
      "ws": "api-pub.bitfinex.com"
    },
    "channels": {
      "orderbook": "book",
      "fills": "fills",
      "positions": "positions",
      "trades": "trades"
    },
    "markets": [
      {
        "local": "tTESTBTC:TESTUSD",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      },
      {
        "local": "tTESTBTCF0:TESTUSDTF0",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      }
    ],
    "balances": [
      {
        "local": "USTF0",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "BTC",
        "global": "BTC",
        "methods": []
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": []
      }
    ]
  },
  {
    "id": "bitfinex",
    "endpoint": {
      "rest": "api-pub.bitfinex.com",
      "ws": "api-pub.bitfinex.com"
    },
    "channels": {
      "orderbook": "book",
      "fills": "fills",
      "positions": "positions",
      "trades": "trades"
    },
    "markets": [
      {
        "local": "tBTCF0:USDF0",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.00006
      },
      {
        "local": "tBTCF0:USTF0",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.00006
      }
    ],
    "balances": [
      {
        "local": "USTF0",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "BTC",
        "global": "BTC",
        "methods": []
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": []
      }
    ]
  },
  {
    "id": "dydx-testnet",
    "endpoint": {
      "rest": "api.stage.dydx.exchange",
      "ws": "api.stage.dydx.exchange/v3/ws"
    },
    "channels": {
      "orderbook": "v3_orderbook",
      "fills": "",
      "positions": "",
      "trades": "v3_trades"
    },
    "markets": [
      {
        "local": "BTC-USD",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      },
      {
        "local": "ETH-USD",
        "global": "ETH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.1,
        "min-order-size": 0.01
      }
    ]
  },
  {
    "id": "dydx",
    "endpoint": {
      "rest": "api.dydx.exchange",
      "ws": "api.dydx.exchange/v3/ws"
    },
    "channels": {
      "orderbook": "v3_orderbook",
      "fills": "",
      "positions": "",
      "trades": "v3_trades"
    },
    "markets": [
      {
        "local": "BTC-USD",
        "global": "BTC:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      },
      {
        "local": "ETH-USD",
        "global": "ETH:USD:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.1,
        "min-order-size": 0.01
      }
    ],
    "balances": [
      {
        "local": "USDC",
        "global": "USD",
        "type": "",
        "scale": 1
      }
    ]
  },
  {
    "id": "terraswap",
    "endpoint": {
      "rest": "lcd.terra.dev",
      "ws": "terra-rpc.easy2stake.com",
      "extra": {
        "mirror": "graph.mirror.finance",
        "rpc": "terra-rpc.easy2stake.com"
      }
    },
    "channels": {
    },
    "markets": [
      {
        "local": "mNFLX",
        "global": "NFLX:USD:STOCK",
        "type": "INVERSE",
        "min-tick-size": 0.000001,
        "min-order-size": 1,
        "extra": {
          "pair_address": "terra1yppvuda72pvmxd727knemvzsuergtslj486rdq",
          "token_address": "terra1jsxngqasf2zynj5kyh0tgq9mj3zksa5gk35j4k"
        }
      }
    ],
    "balances": [
      {
        "local": "uusd",
        "global": "USD",
        "type": "NATIVE",
        "scale": 0.000001
      },
      {
        "local": "mNFLX",
        "global": "NFLX",
        "type": "CONTRACT",
        "scale": 0.000001
      }
    ]
  },
  {
    "id": "binance-futures-testnet",
    "endpoint": {
      "rest": "testnet.binancefuture.com",
      "ws": "stream.binancefuture.com"
    },
    "channels": {
      "orderbook": "depth@100ms",
      "trades": "aggTrade"
    },
    "markets": [
      {
        "local": "BTCUSDT",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      }
    ],
    "balances": [
      {
        "local": "USDT",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "BTC",
        "global": "BTC",
        "methods": []
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": []
      }
    ]
  },
  {
    "id": "binance-futures",
    "endpoint": {
      "rest": "fapi.binance.com",
      "ws": "fstream.binance.com"
    },
    "channels": {
      "orderbook": "depth@100ms",
      "trades": "aggTrade"
    },
    "markets": [
      {
        "local": "BTCUSDT",
        "global": "BTC:USDT:PERP",
        "type": "LINEAR",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      }
    ],
    "balances": [
      {
        "local": "USDT",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "BTC",
        "global": "BTC",
        "methods": []
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": []
      }
    ]
  },
  {
    "id": "binance-spot",
    "endpoint": {
      "rest": "api.binance.com",
      "ws": "stream.binance.com:9443"
    },
    "channels": {
      "orderbook": "depth@100ms",
      "trades": "aggTrade"
    },
    "markets": [
      {
        "local": "BTCBUSD",
        "global": "BTC:USD:SPOT",
        "type": "SPOT",
        "min-tick-size": 0.01,
        "min-order-size": 0.001
      }
    ],
    "balances": [
      {
        "local": "USDT",
        "global": "USDT",
        "type": "INVERSE",
        "scale": 1
      }
    ],
    "deposits": [
      {
        "local": "BTC",
        "global": "BTC",
        "methods": []
      },
      {
        "local": "ETH",
        "global": "ETH",
        "methods": []
      }
    ]
  }
]