Bitmex.Net.Client is a .Net wrapper for the Bitmex API as described on Bitmex. It includes all features the API provides using clear and readable C# objects including
- Reading market info
- Placing and managing orders
- Reading balances and funds
- Live updates using the websocket
- Loading historical data
Additionally it adds some convenience features like:
- Configurable rate limiting
- Autmatic logging
Available on NuGet:
PM> Install-Package Bitmex.Net.Client
To get started with Bitmex.Net.Client first you will need to get the library itself. The easiest way to do this is to install the package into your project using NuGet.
To get started we have to add the Bitmex.Net.Client namespace: using Bitmex.Net.Client;
.
Bitmex.Net.Client provides three clients to interact with the Bitmex API:
The BitmexClient
provides all rest API calls.
The BitmexSocketClient
provides functions to interact with the websocket provided by the Bitmex API.
The BitmexHistoricalTradesLoader
provides ability to bulk load historical trading data from Bitmex public data endpoint
See examples here. Note that you have to add your own appconfig.json and set up connection to testnet or production Bitmex API:
{
"testnet": {
"key": "yourTestentKey",
"secret": "yourTestentSecret"
},
"prod": {
"key": "yourProdKey",
"secret": "yourProdSecret"
}
}
If you think something is broken, something is missing or have any questions, please open an Issue
Implementation is build upon the CryptoExchange.Net library, make sure to also check out the documentation on that: docs
Other CryptoExchange.Net implementations:
Bitfinex |
Bittrex |
Binance |
CoinEx |
Huobi |
Kucoin |
Kraken |
Switcheo |
Liquid |
OKEx |
Exante |
- 3.0.1
- updated to CryptoExchange.Net v6.2.1
- small fixess
- 3.0.0
- updated to CryptoExchange.Net v6.1.4
- 2.0.3
- updated to CryptoExchange.Net v5.4.3
- 2.0.2
- fixed setting up rate limiter
- 2.0.1
- updated documentation
- 2.0.0
- updated to CryptoExchange.Net v5.3.1. See examples here how to use BitmexClient.
- removed some unused fields due to bitmex.com updates
- nontrade socket subscriptions on different endpoint (due to bitmex.com updates)
- ratelimiter by default:
- 30/min for unsigned requests
- 120/min for signed ones
- 10/1s (in addition to 120/min) for orders requests
- fixed resubscribing SymbolOrderBook
- position: renamed RealisedPnl=> RealisedPnlAfterRebalancing. RealisedPnl is a result of calculation now
- renamed models Order=>BitmexOrder and so on, to avoid conflict with base lib naming
- revert=true by default! Be careful, by default, requests return the latest values first
- added a few new requesting methods
- removed sync version of requesting methods
- v1.6.1
- ws endpoint update, bulk orders changes
- v1.6.0
- fix user wallet history deserialization error
- v1.5.2
- base library major update, bulk orders cancelling fixes
- v1.4.8
- dependencies update
- v1.4.7
- added milliseconds accuracy to start/end time filters
- v1.4.6
- added auth in not auth methods for better rate limits
- v1.4.6
- fix boolean values serialization
- v1.4.4
- Wallet history fix
- v1.4.3
- Fix typo at Get all price indices endpoint
- v1.4.2
- base library update
Donations are greatly appreciated and a motivation to keep improving.
Btc: 14nuXrFEKTrvyhHWYW7RgRt4zVxBfwff5V
Eth: 0xa399Fff5Cd14fc589030C85C5671cdEdC4C413b1