roq-bybit#
Links#
Purpose#
Maintain network connectivity with the Bybit exchange
Route exchange updates to connected clients
Route client requests to the relevant exchange accounts
Stream all messages to an event-log
Overview#
Products
Spot |
✓ |
Futures |
✓ |
Options |
✓ |
Market Data
Reference Data |
✓ |
Market Status |
✓ |
Top of Book |
✓ |
Market by Price (L2) |
✓ |
Market by Order (L3) |
|
Trade Summary |
✓ |
Statistics |
✓ |
Order Management
Create |
✓ |
Modify |
✓ |
Cancel |
✓ |
Cancel All |
✓ |
Auto Cancellation |
Account Management
Positions |
✓ |
Funds |
✓ |
Data center located in: TBD
Conda#
$ mamba install \
--channel https://roq-trading.com/conda/stable \
roq-bybit
$ cp $CONDA_PREFIX/share/roq-bybit/config.toml $CONFIG_FILE_PATH
# Then modify $CONFIG_FILE_PATH to match your specific configuration
$ roq-bybit \
--name "bybit" \
--api "spot" \
--config_file "$CONFIG_FILE_PATH" \
--client_listen_address "$UNIX_SOCKET_PATH" \
--service_listen_address "$TCP_LISTEN_PORT" \
--flagfile "$FLAG_FILE"
Config#
Flags#
$ roq-bybit --help
|
|
|
The required Market by Price depth. Please consult the Bybit documentation for specifics. The lowest latency feed is chose if this flag is undefined. |
Environments#
# flagfile
--rest_uri=https://api.bybit.com
--ws_public_uri=wss://stream.bybit.com/v5/public
--ws_private_uri=wss://stream.bybit.com/v5/private
# flagfile
--rest_uri=https://api-testnet.bybit.com
--ws_public_uri=wss://stream-testnet.bybit.com/v5/public
--ws_private_uri=wss://stream-testnet.bybit.com/v5/private
Market Data#
Event |
Stream |
Messages |
Comments |
---|---|---|---|
MarketData |
|
||
MarketData |
orderbook.<ws_mbp_depth>.<symbol> |
||
MarketData |
publicTrade.<symbol> |
||
MarketData |
tickers.<symbol> |
Event |
Stream |
Messages |
Comments |
---|---|---|---|
Rest |
/v5/market/instruments-info |
||
Rest |
/v5/market/instruments-info |
||
Statistics#
Type |
Comments |
---|---|
|
(tickers) |
|
(tickers) |
|
(tickers) |
|
(tickers) |
Order Management#
Event |
Stream |
Messages |
Comments |
---|---|---|---|
DropCopy |
order |
||
DropCopy |
execution |
Event |
Stream |
Messages |
Comments |
---|---|---|---|
OrderEntry |
/v5/order/realtime |
||
OrderEntry |
/v5/execution/list |
Event |
Stream |
Messages |
Comments |
---|---|---|---|
OrderEntry |
/v5/order/create |
||
OrderEntry |
/v5/order/amend |
||
OrderEntry |
/v5/order/cancel |
||
OrderEntry |
/v5/order/cancel-all |
Event |
Stream |
Messages |
Comments |
---|---|---|---|
OrderEntry |
Order Types#
Type |
Comments |
---|---|
|
Mapped to |
|
Mapped to |
Time in Force#
Type |
Comments |
---|---|
|
Mapped to |
|
Mapped to |
|
Mapped to |
Position Effect#
Note
Not supported
Execution Instructions#
Type |
Comments |
---|---|
|
Mapped to |
Account Management#
Event |
Stream |
Messages |
Comments |
---|---|---|---|
DropCopy |
position |
||
DropCopy |
wallet |
Event |
Stream |
Messages |
Comments |
---|---|---|---|
OrderEntry |
/v5/position/list” |
||
OrderEntry |
/v5/account/wallet-balance |
Streams#
Type |
Comments |
---|---|
REST |
Primary purpose
|
Type |
Comments |
---|---|
WebSocket |
Primary purpose
Each connection
|
Type |
Comments |
---|---|
REST |
Primary purpose
|
Type |
Comments |
---|---|
WebSocket |
Primary purpose
|
Constraints#
The gateway can not simultaneously support all product categories due to overlapping symbol names, e.g. BTCUSDT being both spot and linear. For this reason, the
--api
flag controls the product category and, if necessary, the--name
or--exchange
flags must be configured to appropriately differentitate the sources.The
order
channel doesn’t give us any information about last traded, only the aggregate fields (traded / remaining / average price) are available. The last trade price/quantity fields are therefore estimated.Note
The
execution
channel will independently report the fills.
Comments#
TopOfBook
is based onorderbook.1
for spot andtickers
for all other categories.