exchanges: Add ByBit support (#887)

* few fixes and add ratelimiter

* adds test

* revert configtest.json changes

* configtest updated

* WIP: adds public endpoint support

* WIP: adds public endpoint support

* adds public endpoint support

* WIP: adds auth. endpoint support

* adds test for auth. endpoint

* fixes

* adds auth. endpoint support

* WIP: ws support

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* WIP

* Testing

* Complete WS spot testing

* adds support for ws events

* minor change

* WIP: adds REST support for CoinMarginedFutures

* Fixes

* WIP: adds REST support for CoinMarginedFutures

* Fixes

* improvement in SPOT REST

* Typo fix

* WIP: add REST support for CMF Account API

* minor fixes

* WIP: add support for CMF conditional orders and few minor fixes

* complete support for CMF conditional orders

* adds support for public CMF endpoint

* adds support for CMF position API

* Complete REST CMF support

* WIP

* Testing REST CMF support

* Testing REST CMF support

* Testing REST CMF support completed

* WIP: add support for UMF

* completed non-auth UMF

* WIP: add support for REST Auth. UMF

* WIP: add support for REST Auth. UMF and some improvements

* WIP

* WIP

* WIP

* completed REST UMF

* renaming

* adds REST support for futures

* add testcases for UMF and some optimizations

* add testcases for futures

* Testing UMF, futures and its changes

* Fixes

* Fixes after testing

* WIP

* WIP

* WIP

* completed ws USDT futures support

* WIP: ws support for futures

* fixes in WS futures

* fixes in WS support

* roll back changes made for WS CMF, USDT and Futures

* fixes

* WIP

* WIP

* fixes

* Steps for new PR

* WIP

* WIP

* WIP

* WIP

* complete PR setup

* fixes for successfully running tests

* update in symbol for futures pair in test file

* WIP

* Fixes in test file and other minor fix

* fix testdata/configtest.json

* reset CONTRIBUTORS file

* review changes

* remove unwanted file

* remove redundant code

* improvisation

* adds comment for exported functions

* remove unwanted TODO and commented code

* fix

* improvisation

* fix

* defined errors

* improvisation

* improvisation

* improvisation

* updates test

* adds comment for exported types

* review changes

* review changes

* fix

* fixes

* Changes for making BYBIT compatible with existing code base

* Test file changes

* Changes for making BYBIT compatible with existing code base

* Changes for making BYBIT compatible with existing code base

* fix lint issues

* fix

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* review changes

* WIP

* add test cases for new API's

* minor improvements

* add missing API and their tests

* minor fixes

* add bybitTime

* add bybitTimeSec, bybitTimeMilliSec, bybitTimeNanoSec and necessary support

* fix GetTradeHistory function

* error handling

* test fixes

* add GetServerTime API

* adds GetHistoricCandlesExtended and review changes

* test fixes

* minor fix

* integrating CMF Bybit recent change log

* minor fixes

* adds extractCurrencyPair

* minor fixes

* minor fix

* review changes

* adds variable declaration of error

* review commit

* adds embeddable type in API response for all API and integrate it

* fixes

* adds authentication WS connection

* review changes

* review changes

* compatible changes

* adds asset to GetWithdrawalsHistory

* adds asset_type in rpc.proto

* adds asset argument in gctcli withdrawal request command

* improve error handling in exchange API error

* web socket fix

* review changes

* improvements

* improvements

* minor fix

* review changes

* fixing wrapper issues

* fixes

* fixes

* review changes

* add test cases

* fix for GetActiveOrders

* lint fixes

* fixes in websocket

* adds wrapper testcases

* adds wrapper testcases

* adds wrapper testcases

* fixes

* fix issue with GetHistoricCandlesExtended

* fix merge issues

* improving error reporting

* adds wrapper testcases and a minor fix

* gctrpc changes

* adds test cases
fixes in websocket

* review changes for ws

* review changes in WS

* fix gctrpc

* merge fixes

* review changes

* WIP

* updates pair in configs

* adds new asset USDCMarginedFutures

* adds URL const for USDCMarginedFutures

* adds API support

* minor fixes

* adds kline API

* minor fix

* adds API

* adds API

* adds API

* WIP

* WIP

* WIP

* adds support for USDC auth requests to SendAuthHTTPRequest

* adds SendUSDCAuthHTTPRequest

* run test and fix them

* rollback support added for Auth. USDC request inside SendAuthHTTPRequest

* adds API and test cases

* adds API and test cases

* adds APIs and test cases

* adds APIs

* adds rate limit for USDC

* adds USDCMarginedFutures to wrapper

* adds USDC testcases in wrapper and fix few issues

* minor test fixes

* minor test fixes

* fix lint issues

* WIP

* Merge changes

* minor fixes

* remove "else" and optimize

* review changes

* review changes

* review changes

* fix lint issue

* merge fix

* fix test

* fix templates and run them

* changes after merge

* review changes and improvements

* code improvement

* fixes with respect to changes in API response in documentation

* fixed review change in test

* adds check in CancelExistingOrder

* update exchange template

* review changes

* adds GetDepositAddress API

* WIP: adds GetOrderHistory

* complete GetOrderHistory

* fixes

* adds test case

* fixes and add WithdrawFund API

* WIP

* WIP

* updating all SendAuthHTTPRequest call

* adds WithdrawCryptocurrencyFunds

* update test cases

* fix lint issues

* fixes after merge

* adds GetAvailableTransferChains and few fixes

* minor fix in GetDepositAddress

* minor fix with WS ping/pong handling

* add ping handler for WS Auth.

* fix typo mistake

* update doc
This commit is contained in:
Jaydeep Rajpurohit
2022-08-08 06:59:43 +05:30
committed by GitHub
parent 67c512e92d
commit 247da918a8
70 changed files with 17927 additions and 1773 deletions

View File

@@ -638,6 +638,112 @@
}
]
},
{
"name": "Bybit",
"enabled": true,
"verbose": false,
"httpTimeout": 15000000000,
"websocketResponseCheckTimeout": 30000000,
"websocketResponseMaxLimit": 7000000000,
"websocketTrafficTimeout": 30000000000,
"baseCurrencies": "",
"currencyPairs": {
"bypassConfigFormatUpgrades": false,
"requestFormat": {
"uppercase": true
},
"configFormat": {
"uppercase": true,
"delimiter": "-"
},
"useGlobalFormat": true,
"pairs": {
"coinmarginedfutures": {
"assetEnabled": true,
"enabled": "BTC-USD",
"available": "BTC-USD,XRP-USD,SOL-USD,ADA-USD,MANA-USD,LTC-USD,ETH-USD,EOS-USD,DOT-USD,BIT-USD"
},
"futures": {
"assetEnabled": true,
"enabled": "BTCUSD-Z22",
"available": "BTCUSD-U22,BTCUSD-M22,BTCUSD-Z22,ETHUSD-U22,ETHUSD-M22"
},
"spot": {
"assetEnabled": true,
"enabled": "BTC-USDT,ETH-USDT",
"available": "BTC-USDT,ETH-USDT,XRP-USDT,EOS-USDT,ETH-BTC,XRP-BTC,DOT-USDT,XLM-USDT,LTC-USDT,DOGE-USDT,BIT-USDT,CHZ-USDT,AXS-USDT,MANA-USDT,DYDX-USDT,MKR-USDT,COMP-USDT,AAVE-USDT,YFI-USDT,LINK-USDT,SUSHI-USDT,UNI-USDT,KSM-USDT,ICP-USDT,ADA-USDT,KLAY-USDT,XTZ-USDT,BCH-USDT,SRM-USDT,QNT-USDT,USDC-USDT,GRT-USDT,SOL-USDT,FIL-USDT,OMG-USDT,TRIBE-USDT,BAT-USDT,ZRX-USDT,CRV-USDT,AGLD-USDT,ANKR-USDT,PERP-USDT,MATIC-USDT,WAVES-USDT,LUNC-USDT,SPELL-USDT,SHIB-USDT,FTM-USDT,ATOM-USDT,ALGO-USDT,ENJ-USDT,CBX-USDT,SAND-USDT,AVAX-USDT,WOO-USDT,FTT-USDT,GODS-USDT,IMX-USDT,ENS-USDT,GM-USDT,CWAR-USDT,CAKE-USDT,STETH-USDT,GALFT-USDT,LFW-USDT,SLP-USDT,C98-USDT,PSP-USDT,GENE-USDT,AVA-USDT,ONE-USDT,PTU-USDT,SHILL-USDT,XYM-USDT,BOBA-USDT,INSUR-USDT,JASMY-USDT,GALA-USDT,RNDR-USDT,TRVL-USDT,WEMIX-USDT,XEM-USDT,KMA-USDT,BICO-USDT,CEL-USDT,UMA-USDT,HOT-USDT,NEXO-USDT,AMP-USDT,BNT-USDT,SNX-USDT,REN-USDT,1INCH-USDT,TEL-USDT,SIS-USDT,LRC-USDT,LDO-USDT,REAL-USDT,KRL-USDT,DEVT-USDT,CRAFT-USDT,BIT-BTC,BIT-USDC,ETH-USDC,BTC-USDC,1SOL-USDT,PLT-USDT,IZI-USDT,QTUM-USDT,DCR-USDT,ZEN-USDT,THETA-USDT,MX-USDT,DGB-USDT,RVN-USDT,EGLD-USDT,RUNE-USDT,XLM-BTC,XLM-USDC,SOL-USDC,XRP-USDC,ALGO-BTC,SOL-BTC,DFL-USDT,RAIN-USDT,RUN-USDT,XEC-USDT,ICX-USDT,XDC-USDT,HNT-USDT,BTG-USDT,ZIL-USDT,HBAR-USDT,FLOW-USDT,SOS-USDT,KASTA-USDT,GAS-USDT,STX-USDT,SIDUS-USDT,VPAD-USDT,GGM-USDT,LOOKS-USDT,MBS-USDT,DAI-USDT,BUSD-USDT,ACA-USDT,MV-USDT,MIX-USDT,LTC-USDC,MANA-BTC,MATIC-BTC,LTC-BTC,DOT-BTC,SAND-BTC,MANA-USDC,MATIC-USDC,SAND-USDC,DOT-USDC,LUNC-USDC,RSS3-USDT,SYNR-USDT,TAP-USDT,ERTHA-USDT,GMX-USDT,POSI-USDT,T-USDT,ACH-USDT,JST-USDT,SUN-USDT,BTT-USDT,TRX-USDT,NFT-USDT,POKT-USDT,SCRT-USDT,PSTAKE-USDT,SON-USDT,HERO-USDT,DOME-USDT,ZBC-USDT,USTC-USDT,BNB-USDT,NEAR-USDT,PAXG-USDT,SD-USDT,APE-USDT,BTC3S-USDT,BTC3L-USDT,FIDA-USDT,MINA-USDT,SC-USDT,RACA-USDT,IME-USDT,CAPS-USDT,STG-USDT,LMR-USDT,GLMR-USDT,MOVR-USDT,ZAM-USDT,ETH-DAI,BTC-DAI,WBTC-USDT,XAVA-USDT,MELOS-USDT,GMT-USDT,GST-USDT,CELO-USDT,SFUND-USDT,ELT-USDT,LGX-USDT,BIT-DAI,APEX-USDT,CTC-USDT,COT-USDT,KMON-USDT,PLY-USDT,XWG-USDT,FITFI-USDT,STRM-USDT,GAL-USDT,FCD-USDT,ETH3S-USDT,ETH3L-USDT,KOK-USDT,FAME-USDT,XRP3S-USDT,XRP3L-USDT,USDD-USDT,LUNA-USDT"
},
"usdcmarginedfutures": {
"assetEnabled": true,
"enabled": "BTC-PERP",
"available": "BTC-PERP"
},
"usdtmarginedfutures": {
"assetEnabled": true,
"enabled": "BTC-USDT",
"available": "BTC-USDT,AGLD-USDT,RAY-USDT,ASTR-USDT,XTZ-USDT,SFP-USDT,REEF-USDT,XEM-USDT,IOST-USDT,SLP-USDT,JASMY-USDT,ZEC-USDT,SC-USDT,MINA-USDT,HNT-USDT,XRP-USDT,MATIC-USDT,BNB-USDT,CHZ-USDT,OMG-USDT,ZEN-USDT,PEOPLE-USDT,DAR-USDT,SUN-USDT,DODO-USDT,AKRO-USDT,RUNE-USDT,YGG-USDT,XCN-USDT,FITFI-USDT,BIT-USDT,PAXG-USDT,KDA-USDT,AVAX-USDT,GALA-USDT,RVN-USDT,MTL-USDT,GAL-USDT,SXP-USDT,KAVA-USDT,CREAM-USDT,CKB-USDT,BSW-USDT,EOS-USDT,UNI-USDT,SUSHI-USDT,ATOM-USDT,LRC-USDT,SAND-USDT,GRT-USDT,CVC-USDT,1000BTT-USDT,FLM-USDT,VET-USDT,CELO-USDT,OGN-USDT,BCH-USDT,DOGE-USDT,CRV-USDT,LPT-USDT,DGB-USDT,TOMO-USDT,ETC-USDT,FLOW-USDT,STORJ-USDT,KLAY-USDT,SPELL-USDT,10000NFT-USDT,STMX-USDT,ALGO-USDT,DASH-USDT,API3-USDT,GLMR-USDT,ZRX-USDT,IOTX-USDT,QTUM-USDT,SKL-USDT,IOTA-USDT,KNC-USDT,ROSE-USDT,ARPA-USDT,SOL-USDT,BAT-USDT,ICX-USDT,ACH-USDT,XLM-USDT,SHIB1000-USDT,YFI-USDT,EGLD-USDT,REQ-USDT,APE-USDT,BOBA-USDT,TRX-USDT,COMP-USDT,CRO-USDT,ALPHA-USDT,LTC-USDT,AAVE-USDT,NEAR-USDT,ENS-USDT,RSR-USDT,STX-USDT,XMR-USDT,BNX-USDT,CVX-USDT,GST-USDT,ADA-USDT,SRM-USDT,CELR-USDT,C98-USDT,GTC-USDT,AR-USDT,SCRT-USDT,LINK-USDT,DOT-USDT,DYDX-USDT,ANKR-USDT,AUDIO-USDT,KSM-USDT,REN-USDT,IMX-USDT,MASK-USDT,WAVES-USDT,CTSI-USDT,LINA-USDT,MKR-USDT,ANT-USDT,DUSK-USDT,HOT-USDT,BSV-USDT,ALICE-USDT,GMT-USDT,BAKE-USDT,SNX-USDT,BICO-USDT,ZIL-USDT,FIL-USDT,ENJ-USDT,ICP-USDT,FTT-USDT,ILV-USDT,CTK-USDT,LOOKS-USDT,THETA-USDT,ONE-USDT,TLM-USDT,RNDR-USDT,DENT-USDT,NEO-USDT,OCEAN-USDT,ETH-USDT,AXS-USDT,COTI-USDT,JST-USDT,FXS-USDT,HBAR-USDT,CHR-USDT,1INCH-USDT,RSS3-USDT,1000XEC-USDT,BAL-USDT,CTC-USDT,MANA-USDT,FTM-USDT,WOO-USDT,LIT-USDT,BAND-USDT"
}
}
},
"api": {
"authenticatedSupport": true,
"authenticatedWebsocketApiSupport": false,
"credentials": {
"key": "Key",
"secret": "Secret"
},
"credentialsValidator": {
"requiresKey": true,
"requiresSecret": true
},
"urlEndpoints": {
"RestCoinMarginedFuturesURL": "https://api.bybit.com",
"RestFuturesURL": "https://api.bybit.com",
"RestSpotURL": "https://api.bybit.com",
"RestUSDTMarginedFuturesURL": "https://api.bybit.com",
"WebsocketSpotURL": "wss://stream.bybit.com/spot/quote/ws/v2",
"RestUSDCMarginedFuturesURL": "https://api.bybit.com"
}
},
"features": {
"supports": {
"restAPI": true,
"restCapabilities": {
"autoPairUpdates": false
},
"websocketAPI": true,
"websocketCapabilities": {}
},
"enabled": {
"autoPairUpdates": false,
"websocketAPI": true,
"saveTradeData": false,
"tradeFeed": false,
"fillsFeed": false
}
},
"bankAccounts": [
{
"enabled": false,
"bankName": "",
"bankAddress": "",
"bankPostalCode": "",
"bankPostalCity": "",
"bankCountry": "",
"accountName": "",
"accountNumber": "",
"swiftCode": "",
"iban": "",
"supportedCurrencies": ""
}
],
"orderbook": {
"verificationBypass": false,
"websocketBufferLimit": 5,
"websocketBufferEnabled": false,
"publishPeriod": 10000000000
}
},
{
"name": "LBank",
"enabled": true,