Skip to content

Releases: JKorf/CryptoClients.Net

Version 2.8.0

23 Dec 15:59
Compare
Choose a tag to compare
  • Updated reference CryptoExchange.Net version from 8.4.3 to 8.5.0
    • Added EmptyArrayObjectConverter System.Text.Json JsonConverter
    • Added JsonSerializerOptions parameter to SystemTextJsonMessageAccessor constructor
    • Changed JsonConverterCtorAttribute to use constructor type parameter instead of generic type parameter to support .net framework
    • Added SetOptions method to update client settings
    • Added SocketConnection parameter to PeriodicQuery callback
    • Added setting of DefaultProxyCredentials on HttpClient instance when client is not provided by DI
    • Added support for overriding request timeout per request
    • Added build target for net9.0
    • Added setting of KeepAliveTimeout on websocket connections to improve dropped connection detection
    • Changed max wait time for close handshake response from 5 seconds to 1 second
    • Fixed exception in trade tracker when there is no data in the initial snapshot
  • Updated Binance.Net from version 10.13.2 to version 10.15.0
    • Added initial Agent endpoints
    • Added onUserDataStreamTerminated and onBalanceLockUpdate updates to socketClient.SpotApi.SubscribeUserDataUpdatesAsync
    • Added IsLiquidationOrder, IsAdlAutoCloseOrder and IsSettlementOrder helper properties to BinanceFuturesOrder model
    • Added PreMarket handling to PermissionType enum
    • Split AccountType enum into AccountType and PermissionType
    • Changed restClient.UsdFuturesApi.Trading.GetOrdersAsync symbol parameter to be optional
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
    • Set Symbol on Spot and UsdFutures socket ExchangeData.GetOrderBookAsync response
  • Updated BingX.Net from version 1.18.1 to version 1.19.0
    • Fixed bingXRestClient.PerpetualFuturesApi.Account.GetIncomesAsync parameter serialization
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
    • Fixed BingXFuturesPlaceOrderRequest serialization
  • Updated Bitfinex.Net from version 7.12.2 to version 7.13.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
  • Updated Bitget.Net from version 1.18.1 to version 1.19.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Added page parameter to restClient.SpotApi.Account.GetTransferHistoryAsync, marked idLessThan as deprecated
    • Improved websocket disconnect detection
  • Updated BitMart.Net from version 1.10.1 to version 1.12.0
    • Added socketClient.UsdFuturesApi.SubscribeToBookTickerUpdatesAsync stream subscription
    • Added restClient.UsdFuturesApi.ExchangeData.GetFundingRateHistoryAsync endpoint
    • Added restClient.UsdFuturesApi.Account.GetTransactionHistoryAsync endpoint
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Added restClient.UsdFuturesApi.Trading.PlaceTrailingOrderAsync endpoint
    • Added restClient.UsdFuturesApi.Trading.CancelTrailingOrderAsync endpoint
    • Improved websocket disconnect detection
    • Removed trailing stop parameters from restClient.UsdFuturesApi.Trading.PlaceOrderAsync
  • Updated Bybit.Net from version 3.18.1 to version 3.19.0
    • Added restClient.V5Api.Account.GetTransferableAsync endpoint
    • Fixed socketClient.V5PrivateApi.CancelOrderAsync incorrect topic
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated Coinbase.Net from version 1.6.1 to version 1.7.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
  • Updated CoinEx.Net from version 7.12.1 to version 7.13.0
    • Fixed socketClient.SpotApiV2.SubscribeToOrderBookUpdatesAsync unsubscribe
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated CoinGecko.Net from version 3.2.0 to version 3.3.0
    • Added SetOptions methods on Rest client
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
  • Updated CryptoCom.Net from version 1.4.1 to version 1.5.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated GateIo.Net from version 1.15.0 to version 1.16.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated HTX.Net from version 6.7.2 to version 6.8.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated Kraken.Net from version 5.4.1 to version 5.5.0
    • Added newAssetNameResponse parameter to restClient.SpotApi.Account.GetBalancesAsync
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated Kucoin.Net from version 5.22.0 to version 5.23.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Added TradeType property to socketClient.FuturesApi.SubscribeToOrderUpdatesAsync update
    • Improved websocket disconnect detection
    • Updated SpotApi MaxSocketConnections from 150 to 500
    • Updated restClient.FuturesApi.Trading.CancelAllOrdersAsync from V1 to V3
  • Updated Mexc.Net from version 1.13.1 to version 1.15.0
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
    • Fixed deserialization of too large decimal values in Ticker and Kline models
    • Fixed typo in MexcAggregatedTrade and MexcKline models
    • Fix for restClient.SpotApi.Account.WithdrawAsync deserialization
  • Updated OKX.Net from version 2.12.1 to version 2.14.0
    • Added Europe environment
    • Added restClient.UnifiedApi.Account.PresetAccountModeSwitchAsync endpoint
    • Added restClient.UnifiedApi.Account.PrecheckAccountModeSwitchAsync endpoint
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated WhiteBit.Net from version 1.2.1 to version 1.3.0
    • Fixed deserialization of restClient.V4Api.Trading.GetClosedOrdersAsync without results
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection
  • Updated XT.Net from version 1.0.1 to version 1.1.0
    • Added client reference
    • Added SetOptions methods on Rest and Socket clients
    • Added setting of DefaultProxyCredentials to CredentialCache.DefaultCredentials on the DI http client
    • Improved websocket disconnect detection

Version 2.7.1

08 Dec 10:02
Compare
Choose a tag to compare
  • Updated reference CryptoExchange.Net version from 8.4.3 to 8.4.4
    • Changed JsonConverterCtorAttribute to use constructor type parameter instead of generic type parameter to support .net framework
  • Updated Binance from version 10.13.0 to version 10.13.2
    • Fixed deserialization error in .net framework
    • Fixed null exception caused by invalid key for copy trading
    • Fixed BinanceSubAccountTransferSubAccount model deserialization
  • Updated Bitfinex from version 7.12.1 to version 7.12.2
    • Fixed Shared balance subscription also sending funding balances
  • Updated BitMart from version 1.10.1 to version 1.10.1
    • Fixed clientOrderId parameter serialization in restClient.SpotApi.Trading.PlaceMultipleOrdersAsync
  • Updated CoinEx from version7.12.0 to version 7.12.1
    • Fixed deserialization error in .net framework
  • Updated HTX from version 6.7.1 to version 6.7.2
    • Fixed deserialization error in .net framework
  • Updated OKX from version 2.12.0 to version 2.12.1
    • Fixed deserialization error in .net framework
  • Updated XT from version 1.0.0 to version 1.0.1
    • Fixed change percentage response in Shared spot symbol response not being actual percentage

Version 2.7.0

04 Dec 09:38
Compare
Choose a tag to compare
  • Added XT.Net 1.0.0
  • Added DisplayName and ImageUrl to ExchangeInfo model
  • Added GetFeeClients methods on ExchangeRestClient
  • Added GetFeesAsync and GetFeesAsyncEnumerable methods on ExchangeRestClient
  • Added AddCryptoClients DI extension to support for loading settings from IConfiguration
  • Added dynamic SetApiCredentials method on ExchangeRestClient and ExchangeSocketClient
  • Refactored AddCryptoClients method to specify options in code to use a single callback per exchange
  • Updated reference CryptoExchange.Net version from 8.2.0 to 8.4.3
    • Added support for IOptions injection, allowing options to be read from IConfiguration
    • Added handling of Infinity values in decimal converter
    • Added rate limit update event
    • Added GetFeesAsync Shared REST client support
    • Added LibraryOptions base class
    • Added CommaSplitEnumConverter System.Text.Json converter
    • Added TimePeriodFilterSupport and MaxLimit properties to PaginatedEndpointOptions
    • Added JsonConverterCtorAttribute to allow specifying a custom JsonConverter with constructor parameters on properties
    • Added ReplaceConverter System.Text.Json converter
    • Added LibraryHelpers class for internal helper methods
    • Updated package dependency versions
    • Small refactor on client options internals
    • Fixed concurrency issue when unsubscribing websocket subscription during reconnection
    • Fixed KlineTracker update handling
  • Updated Binance.Net from version 10.9.2 to version 10.13.0
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BinanceExchange class
    • Added WithdrawInternalMin to restClient.SpotApi.Account.GetUserAssetsAsync response model
    • Added EnableFixApiTrade and EnableFixReadOnly to restClient.SpotApi.Account.GetAPIKeyPermissionsAsync response model
    • Added IsOptionsEnabled and IsPortfolioMarginRetailEnabled to restClient.SpotApi.Account.GetAccountVipLevelAndStatusAsync response model
    • Added listClientOrderId parameter to restClient.SpotApi.Trading.PlaceOcoOrderListAsync
    • Added GetFeesAsync Shared REST client implementations
    • Added AllowAppendingClientOrderId option
    • Updated BinanceOptions to LibraryOptions implementation
    • Updated client constructors to accept IOptions from DI
    • Updated test and analyzer package versions
    • Updated client order id logic
    • Removed BrokerId option
    • Removed redundant BinanceSocketClient constructor
    • Removed restClient.SpotApi.Account.GetAutoConvertStableCoinConfigAsync, SetAutoConvertStableCoinConfigAsync and ConvertBusdAsync as theyre deprecated
    • Fixed inverted order side for Shared trades
    • Fixed ListenKey property not set on spot websocket account data updates
    • Fixed restClient.GeneralApi.SimpleEarn.GetLockedProductPositionsAsync deserialization
    • Fixed orderbook creation via BinanceOrderBookFactory
  • Updated BingX.Net from version 1.15.1 to version 1.18.1
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BingXExchange class
    • Added restClient.PerpetualFuturesApi.Account.ApplyForVSTAssetsAsync
    • Added restClient.PerpetualFuturesApi.Account.SetMultiAssetModeAsync
    • Added restClient.PerpetualFuturesApi.Account.GetMultiAssetModeAsync
    • Added restClient.PerpetualFuturesApi.Account.GetMultiAssetRulesAsync
    • Added restClient.PerpetualFuturesApi.Account.GetMultiAssetsMarginAsync
    • Added restClient.PerpetualFuturesApi.Trading.GetOrdersAsync
    • Added restClient.PerpetualFuturesApi.Trading.PlaceTwapOrderAsync
    • Added restClient.PerpetualFuturesApi.Trading.GetOpenTwapOrdersAsync
    • Added restClient.PerpetualFuturesApi.Trading.GetTwapOrderAsync
    • Added restClient.PerpetualFuturesApi.Trading.GetClosedTwapOrdersAsync
    • Added restClient.PerpetualFuturesApi.Trading.CancelTwapOrderAsync
    • Added Demo BingXEnvironment
    • Added websocket connection limit perpetual futures
    • Added GetFeesAsync Shared REST client implementations
    • Updated client constructors to accept IOptions from DI
    • Updated BingXOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Removed redundant BingXSocketClient constructor
    • Fixed inverted order side for Shared trades
    • Fixed orderbook creation via BingXOrderBookFactory
  • Updated Bitfinex.Net from version 7.10.0 to version 7.12.1
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BitfinexExchange class
    • Added GetFeesAsync Shared REST client implementations
    • Updated BitfinexOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Updated client constructors to accept IOptions from DI
    • Removed redundant BitfinexSocketClient constructor
    • Fixed orderbook creation via BitfinexOrderBookFactory
  • Updated Bitget.Net from version 1.15.1 to version 1.18.1
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BitgetExchange class
    • Updated client constructors to accept IOptions from DI
    • Added restClient.SpotApiV2.Account.TransferSubAccountAsync endpoint
    • Added restClient.SpotApiV2.Account.GetSubAccountBalancesAsync endpoint
    • Added restClient.SpotApiV2.Account.GetSubAccountTransferHistoryAsync endpoint
    • Added restClient.SpotApiV2.Account.GetSubAccountDepositAddressAsync endpoint
    • Added restClient.SpotApiV2.Account.GetSubAccountDepositHistoryAsync endpoint
    • Added websocket rate limiting rules
    • Added GetFeesAsync Shared REST client implementations
    • Updated BitgetOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Changed restClient.FuturesApiV2.Account.GetLedgerAsync idLessThan parameter to long type to match response model id type
    • Removed redundant BitgetSocketClient constructor
    • Fixed restClient.SetApiCredentials having incorrect ApiCredentials type
    • Fixed orderbook creation via BitgetOrderBookFactory
  • Updated BitMart.Net from version 1.7.0 to version 1.10.0
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BitMartExchange class
    • Added socketClient.UsdFuturesApi.SubscribeToFundingRateUpdatesAsync stream
    • Added Approval enum mapping for Status property on socketClient.UsdFuturesApi.SubscribeToOrderUpdatesAsync update model
    • Added GetFeesAsync Shared REST client implementations
    • Updated client constructors to accept IOptions from DI
    • Updated PlaceMarginOrderAsync ratelimit from 1 per second per key to 20
    • Updated BitMartOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Removed clientOrderId parameter from restCLient.UsdFuturesApi.Trading.EditTpSlOrderAsync
    • Removed redundant BitMartSocketClient constructor
    • Fixed orderbook creation via BitMartOrderBookFactory
  • Updated Bybit.Net from version 3.16.0 to version 3.18.1
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to BybitExchange class
    • Added GetFeesAsync Shared REST client implementations
    • Added startTime/endTime params to restClient.V5Api.ExchangeData.GetLongShortRatioAsync endpoint
    • Added SpecialTreatmentLabel to restClient.V5Api.ExchangeData.GetSpotSymbolsAsync response model
    • Updated client constructors to accept IOptions from DI
    • Updated UnifiedMarginStatus enum values
    • Updated BybitOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Removed redundant BybitSocketClient constructor
    • Fixed orderbook creation via BybitOrderBookFactory
  • Updated Coinbase.Net from version 1.4.0 to version 1.6.1
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to CoinbaseExchange class
    • Added Platform property to restClient.AdvancedTradeApi.Account.GetAccountsAsync and GetAccountAsync response model
    • Added GetFeesAsync Shared REST client implementations
    • Updated CoinbaseOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Updated client constructors to accept IOptions from DI
    • Removed redundant CoinbaseSocketClient constructor
    • Fixed deserialization error in SubscribeToBatchedTickerUpdatesAsync subscription when there is no trade price
    • Fixed orderbook creation via CoinbaseBookFactory
  • Updated CoinEx.Net from version 7.9.0 to version 7.12.0
    • Added support for loading client settings from IConfiguration
    • Added DI registration method for configuring Rest and Socket options at the same time
    • Added DisplayName and ImageUrl properties to CoinExExchange class
    • Added AllowAppendingClientOrderId option
    • Added GetFeesAsync Shared REST client implementations
    • Updated client constructors to accept IOptions from DI
    • Updated CoinExOptions to LibraryOptions implementation
    • Updated test and analyzer package versions
    • Updated client order id logic for client reference
    • Removed redundant CoinExSocketClient constructor
    • Fix for orderbook creation via CoinExOrderBookFactory
  • Updated CoinGecko.Net from version 3.0.0 to version 3.2.0
    ...
Read more

Version 2.6.0

19 Nov 08:13
Compare
Choose a tag to compare
  • Updated Binance.Net to version 10.9.2
    • Added page parameter to restClient.UsdFuturesApi.Account.GetIncomeHistoryAsync endpoint
  • Updated BingX.Net to version 1.15.1
    • Added initial SubAccount API implementation
    • Fixed available balance response on shared futures implementation
    • Removed symbol parameters from GetPositionModeAsync and SetPositionModeAsync endpoints
  • Updated Bitget.Net to version 1.15.1
    • Split and corrected futures trigger plan type parameters
    • Added status filter to restClient.FuturesApiV2.Trading.GetClosedTriggerOrdersAsync
    • Added missing futures trigger order statuses
    • Updated restClient.FuturesApiV2.Account.GetLedgerAsync response model
  • Updated CoinGecko to version 3.0.0
    • Switched json (de)serialization from Newtonsoft.Json to System.Text.Json
    • Added support for setting API key
    • Added error parsing implementation
    • Added pro API endpoint to CoinGeckoEnvironment
    • Added GetMarketsAsync endpoint
    • Added GetCompanyHoldingsAsync endpoint
    • Added GetExchangeDerivativesDetailsAsync endpoint
    • Added GetApiUsageAsync endpoint
    • Added precision parameter to GetMarketChartAsync, GetOhlcAsync
    • Updated response models
    • Updated API doc references
    • Removed includeTickers parameter from GetDerivativesAsync endpoint
    • Removed assetPlatformId parameter from GetNftsAsync endpoint
  • Updated CryptoCom.Net to version 1.2.1
    • Fixed deserialization issue in restClient.ExchangeApi.ExchangeData.GetTickerAsync
  • Updated GateIo.Net to version 1.12.1
    • Fixed restClient.PerpetualFuturesApi.Trading.PlaceTriggerOrderAsync parameter serialization
  • Updated HTX.Net to version 6.4.1
    • Fixed deserialization issue in restClient.UsdtFuturesApi.ExchangeData.GetTickersAsync endpoint

Version 2.5.0

07 Nov 12:14
Compare
Choose a tag to compare
  • Added support for the WhiteBit exchange with WhiteBit.Net 1.0.0
  • Updated reference CryptoExchange version to 8.2.0
    • Added support for not allowing duplicate subscription topics on the same websocket connection
    • Added PerAccount SharedLeverageSettingMode enum value, changed Side on SharedUserTrade to nullable
    • Added support for object deserialization in SystemTextJsonMessageAccessor.GetValue
    • Changed SocketApiClient GetAuthenticationRequest to GetAuthenticationRequestAsync to allow for requesting token
    • Fixed socket connections trying to authenticated connection when it's marked as dedicated request connection even when no authentication is needed
    • Fixed System.Text.Json ArrayConverter not passing serializer options to nested deserialization
    • Fixed System.Text.Json ArrayConverter creating new serializer options each time a JsonConverter attribute is encountered
  • Updated Binance.Net to version 10.9.0
    • Added restClient.CoinFuturesApi.Account.GetDownloadIdForOrderHistoryAsync endpoint
    • Added restClient.CoinFuturesApi.Account.GetDownloadLinkForOrderHistoryAsync endpoint
    • Added restClient.CoinFuturesApi.Account.GetDownloadIdForTradeHistoryAsync endpoint
    • Added restClient.CoinFuturesApi.Account.GetDownloadLinkForTradeHistoryAsync endpoint
  • Updated BingX.Net to version 1.14.0
    • Added restClient.PerpetualFuturesApi.Account.GetIsolatedMarginChangeHistoryAsync endpoint
    • Added settleAsset parameter to FuturesApi.Trading endpoints
  • Updated Bitfinex.Net to version 7.10.0
  • Updated Bitget.Net to version 1.13.0
    • Added Cross and Isolated Margin API implementation
    • Fixed V1 API GET request authentication for requests without parameters
    • Fixed warning log when subscribing multiple symbols at the same time
  • Updated BitMart.Net to version 1.7.0
    • Added socketClient.UsdFuturesApi.SubscribeToOrderBookSnapshotUpdatesAsync subscription
    • Added socketClient.UsdFuturesApi.SubscribeToOrderBookIncrementalUpdatesAsync subscription
    • Added IOrderBookSocketClient to UsdFuturesApi Shared socket implementations
    • Added MaxMarketOrderQuantity to BitMartContract response model
  • Updated Bybit.Net to version 3.16.0
    • Added OtherBorrowAmount to restClient.V5Api.Account.GetCollateralInfoAsync response model
    • Added Kazakhstan environment urls
    • Added restClient.V5Api.Account.GetClassicContractTransactionHistoryAsync endpoint
  • Updated Coinbase.Net to version 1.4.0
    • Updated restClient.AdvancedTradeApi.Account.WithdrawCryptoAsync parameters
    • Removed restClient.AdvancedTradeApi.Account.TransferAsync as it's no longer supported
  • Updated CoinEx.Net to version 7.9.0
  • Updated CoinGecko.Net to version 2.8.0
  • Updated CryptoCom.Net to version 1.2.0
  • Updated GateIo.Net to version 1.12.0
    • Added restClient.SpotApi.Account.GetUnifiedLeverageConfigsAsync endpoint
    • Added restClient.SpotApi.Account.GetUnifiedLeverageAsync endpoint
    • Added restClient.SpotApi.Account.SetUnifiedLeverageAsync endpoint
    • Added Id property to restClient.PerpetualFuturesApi.Account.GetLedgerAsync response model
    • Added Leverage property to restClient.SpotApi.ExchangeData.GetDiscountTiersAsync response model
    • Added BestAskQuantity, BestBidQuantity properties to restClient.SpotApi.ExchangeData.GetTickersAsync response model
  • Updated HTX.Net to version 6.4.0
  • Updated Kraken.Net to version 5.2.0
    • Fixed exception during websocket reconnection when using websocket requests
  • Updated Kucoin.Net to version 5.18.0
    • Added restClient.SpotApi.Account.GetApiKeyInfoAsync endpoint
  • Updated Mexc.Net to version 1.11.0
  • Updated OKX.Net to version 2.8.0
    • Added AuctionEndTime property to restClient.UnifiedApi.ExchangeData.GetSymbolsAsync and socketClient.UnifiedApi.ExchangeData.SubscribeToSymbolUpdatesAsync models

Version 2.4.0

28 Oct 14:16
Compare
Choose a tag to compare
  • Simplified ExchangeOrderBookFactory.Create implementation
  • Added ExchangeTrackerFactory for creating Kline/Trade trackers
  • Updated reference CryptoExchange version to 8.1.0
    • Added KlineTracker and TradeTracker implementation
    • Added Side to SharedTrade model
    • Added overload for Create method in OrderBookFactory using SharedSymbol
    • Added ValidateMessage method to websocket Query object to filter messages even though it is matched to the query based on the ListenIdentifier
    • Added DoHandleReset method for websocket subscriptions
    • Added ConnectionId to RequestDefinition to correctly handle connection and path rate limiting configuration
    • Added System.Text.Json ArrayConverter Write implementation
    • Updated SharedFuturesTicker LastPrice, HighPrice and LowPrice properties to be nullable
    • Updated SetApiCredentials method to also updated the credentials on the client specific options to prevent unknown client credentials in some situations
  • Updated Binance.Net to version 10.8.0
    • Moved FormatSymbol to BinanceExchange class
    • Added support Side setting on SharedTrade model
    • Added BinanceTrackerFactory for creating trackers
    • Added overload to Create method on BinanceOrderBookFactory support SharedSymbol parameter
    • Fixed Shared rest GetTradeHistoryAsync pagination
    • Added catch around HttpClientHandler.AutomaticDecompression setting as it's not support on Blazor WASM
  • Updated BingX.Net to version 1.12.0
    • Moved FormatSymbol to BingXExchange class
    • Added support Side setting on SharedTrade model
    • Added BingXTrackerFactory for creating trackers
    • Added overload to Create method on BingXOrderBookFactory support SharedSymbol parameter
    • Added Shared websocket kline subscription implementation for futures and spot APIs
  • Updated Bitfinex.Net to version 7.9.0
    • Moved FormatSymbol to BitfinexExchange class
    • Added support Side setting on SharedTrade model
    • Added BitfinexTrackerFactory for creating trackers
    • Added overload to Create method on BitfinexOrderBookFactory support SharedSymbol parameter
    • Added filtering of TradeUpdate messages in Shared rest trade socket subscription (Trade execution messages are still processed)
  • Updated Bitget.Net to version 1.11.0
    • Moved FormatSymbol to BitgetExchange class
    • Added support Side setting on SharedTrade model
    • Added BitgetTrackerFactory for creating trackers
    • Added overload to Create method on BitgetOrderBookFactory support SharedSymbol parameter
  • Updated BitMart.Net to version 1.5.0
    • Moved FormatSymbol to BitMartExchange class
    • Added support Side setting on SharedTrade model
    • Added BitMartTrackerFactory for creating trackers
    • Added overload to Create method on BitMartOrderBookFactory support SharedSymbol parameter
  • Updated Bybit.Net to version 3.15.0
    • Moved FormatSymbol to BybitExchange class
    • Added support Side setting on SharedTrade model
    • Added BybitTrackerFactory for creating trackers
    • Added overload to Create method on BybitOrderBookFactory support SharedSymbol parameter
    • Added websocket stream URI for Turkey users
  • Updated Coinbase.Net to version 1.2.0
    • Moved FormatSymbol to CoinbaseExchange class
    • Added support Side setting on SharedTrade model
    • Added CoinbaseTrackerFactory for creating trackers
    • Added overload to Create method on CoinbaseOrderBookFactory support SharedSymbol parameter
    • Added GetKlinesAsync to Shared rest client
    • Fixed exception on restClient.AdvancedTradingAi.Trading.CancelOrderAynsc when order not found
    • Fixed exception on restClient.AdvancedTradingAi.Trading.CancelOrdersAynsc when request fails
    • Fixed restClient.AdvancedTradingAi.ExchangeData.GetKlinesAsync time filter
    • Fixed issue with concurrent websocket subscription acknowledgements
    • Removed incorrect rate limit of 100 message per second per ip for websockets
  • Updated CoinEx.Net to version 7.8.0
    • Moved FormatSymbol to CoinExExchange class
    • Added support Side setting on SharedTrade model
    • Added CoinExTrackerFactory for creating trackers
    • Added overload to Create method on CoinExOrderBookFactory support SharedSymbol parameter
  • Updated CoinGecko.Net to version 2.7.0
  • Updated CryptoCom.Net to version 1.1.0
    • Moved FormatSymbol to CryptoComExchange class
    • Added support Side setting on SharedTrade model
    • Added CryptoComTrackerFactory for creating trackers
    • Added overload to Create method on CryptoComOrderBookFactory support SharedSymbol parameter
    • Renamed CreateExchange method on CryptoComOrderBookFactory to Create
  • Updated GateIo.Net to version 1.10.0
    • Moved FormatSymbol to GateIoExchange class
    • Added support Side setting on SharedTrade model
    • Added GateIoTrackerFactory for creating trackers
    • Added overload to Create method on GateIoOrderBookFactory support SharedSymbol parameter
  • Updated HTX.Net to version 6.3.0
    • Moved FormatSymbol to HTXExchange class
    • Added support Side setting on SharedTrade model
    • Added HTXTrackerFactory for creating trackers
    • Added overload to Create method on HTXOrderBookFactory support SharedSymbol parameter
    • Fixed rate limiting incorrectly applied to websocket market data connections
  • Updated Kraken.Net to version 5.1.0
    • Moved FormatSymbol to KrakenExchange class
    • Added support Side setting on SharedTrade model
    • Added KrakenTrackerFactory for creating trackers
    • Added overload to Create method on KrakenOrderBookFactory support SharedSymbol parameter
    • Fixed websocket Unsubscribe for orderbook subscriptions
  • Updated Kucoin.Net to version 5.17.0
    • Moved FormatSymbol to KucoinExchange class
    • Added support Side setting on SharedTrade model
    • Added KucoinTrackerFactory for creating trackers
    • Added overload to Create method on KucoinOrderBookFactory support SharedSymbol parameter
  • Updated Mexc.Net to version 1.10.0
    • Moved FormatSymbol to MexcExchange class
    • Added support Side setting on SharedTrade model
    • Added MexcTrackerFactory for creating trackers
    • Added overload to Create method on MexcOrderBookFactory support SharedSymbol parameter
  • Updated OKX.Net to version 2.7.0
    • Moved FormatSymbol to OKXExchange class
    • Added support Side setting on SharedTrade model
    • Added OKXTrackerFactory for creating trackers
    • Added overload to Create method on OKXOrderBookFactory support SharedSymbol parameter
    • Added support for different order book levels in OKXSymbolOrderBook

Version 2.3.0

23 Oct 08:08
Compare
Choose a tag to compare
  • Added Crypto.com support with CryptoCom.Net to version 1.0.1
  • Added minimalDepth parameter to ExchangeOrderBookFactory Create method
  • Updated Binance.Net to version 10.7.0
    • Added SelfTradePreventionMode and PriceMatch parameters and responses for Coin-M Futures API
    • Added returnPermissionSets and symbolStatus parameters to restClient.SpotApi.ExchangeData.GetExchangeInfoAsync endpoint
    • Fixed issues with restClient.GeneralApi.AutoInvest.GetSubscriptionTransactionHistoryAsync
    • Fixed deserialization issue subaccount transfer
  • Updated BingX.Net to version 1.11.2
    • Added Tier property to restClient.PerpetualFuturesApi.Trading.GetPositionAndMarginInfoAsync response model
    • Added ReduceOnly property to socketClient.PerpetualFuturesApi.SubscribeToUserDataUpdatesAsync order update model
  • Updated Bitget.Net to version 1.10.4
    • Fixed V1 GET request signing without parameters
    • Fixed request signing V2 with special characters
    • Fixed restClient.SpotApi.Trading.GetOrderAsync exception when order not found
  • Updated BitMart.Net to version 1.4.0
    • Added restClient.UsdFuturesApi.Account.GetSymbolTradeFeeAsync endpoint
    • Added TakerFeeRateD and MakerFeeRateD properties to restClient.SpotApi.Account.GetBaseTradeFeesAsync response model
    • Added FundingIntervalHours to restClient.UsdFuturesApi.ExchangeData.GetContractsAsync response model
  • Updated Coinbase.Net to version 1.1.2
    • Updated ExchangeData endpoints to use the Products endpoint instead of Public endpoint if API credentials are provided
    • Added restClient.AdvancedTradeApi.ExchangeData.GetBookTickersAsync and GetBookTickerAsync endpoints
    • Fixed websocket market data subscriptions for "USDT-USDC" and "EURC-USDC" symbols
    • Fixed deserialization issue on websocket ticker updates
  • Updated GateIo.Net to version 1.9.0
    • Added restClient.SpotApi.Account.GetRateLimitsAsync endpoint
    • Added support for clientOrderId to restClient.PerpetualFuturesApi.Trading.GetOrderAsync, CancelOrderAsync and EditOrderAsync endpoints
  • Updated Kraken.Net to version 5.0.2
    • Fixed socketClient.SpotApi.SubscribeToAggregatedOrderBookUpdatesAsync and SubscribeToInvidualOrderBookUpdatesAsync not passing the depth parameter to the server
    • Fixed userReference parameter incorrectly set at restClient.SpotApi.Trading.PlaceOrderAsync
    • Fixed timestamp serialization for socketClient.SpotApi queries
    • Fixed websocket subscription request revitalization throwing an exception
  • Updated Kucoin.Net to version 5.16.0
    • Added restClient.FuturesApi.Trading.CancelMultipleOrdersAsync endpoint
    • Added restClient.SpotApi.Account.GetIsHfAccountAsync endpoint
    • Added restClient.SpotApi.ExchangeData.GetAnnouncementsAsync endpoint
    • Added AveragePrice to Futures order response model
    • Added AveragePrice setting to Shared IFuturesOrderRestClient responses
    • Updated restClient.SpotApi.Account.WithdrawAsync to V3 endpoint
    • Updated KucoinAssetNetwork response model
    • Fixed CancelAfter parameter type for restClient.SpotApi.Trading.PlaceBulkOrderAsync endpoint
    • Fixed Shared IBalanceRestClient implementation to only return spot balances
  • Updated Mexc.Net to version 1.9.0
    • Added mexcRestClient.SpotApi.Account.GetKycStatusAsync endpoint
    • Added ListenkeyRenewed event to socketClient.SpotApi client so users can react to updated listenkeys for keep-alive caused by reconnecting
  • Updated OKX.Net to version 2.6.0
    • Added restClient.UnifiedApi.Account.ManualBorrowRepayAsync, SetAutoRepayAsync and GetBorrowRepayHistoryAsync endpoints
    • Added EasyConvertDustAsync, GetEasyConvertDustAssetsAsync and GetEasyConvertDustHistoryAsync endpoints
    • Added BurningFeeRate property to restClient.UnifiedApi.Account.GetAssetsAsync response model
    • Updated AccountBillSubType and AccountSubType Enum values
    • Refactored restClient.UnifiedApi.Trading.PlaceOrderAsync take profit / stop loss parameters to support the full functionality offered by the API
    • Fixed restClient.UnifiedApi.Trading.CancelMultipleOrdersAsync order canceled event processing
    • Removed restClient.UnifiedApi.Account.ConvertDustAsync deprecated endpoint

Version 2.2.1

14 Oct 16:48
Compare
Choose a tag to compare
  • Updated library client versions
  • Fixed TypeLoadException during initialization

Version 2.2.0

14 Oct 14:55
Compare
Choose a tag to compare
  • Updated reference CryptoExchange version to 8.0.3
    • Updated dependency versions, including System.Text.Json from 8.0.4 to 8.0.5 containing a vulnerability fix
    • Added support for duplicate array indexes in System.Text.Json ArrayConverter
    • Added fallback for unparsable value in System.Text.Json NumberStringConverter
    • Added Authenticated property on base client and shared client
    • Added GetValues System.Text.Json implementation in message accessor
  • Updated Binance.Net to version 10.6.0
    • Added USD-M Futures web socket order API
    • Fixed pagination for shared closed orders USD futures
  • Updated BitMart.Net to version 1.3.1
    • Fixed symbol formatting order book factory
    • Fixed IBitMartOrderBookFactory DI lifetime
  • Updated Bybit.Net to version 3.14.2
    • Fixed restClient.V5Api.Account.GetBalancesAsync deserialization in demo environment without any transactions
    • Added missing TrailingProfit value to StopOrderType Enum
  • Updated CoinEx.Net to version 7.7.1
    • Fixed Shared interface REST spot order quantity parsing
    • Fixed Shared interface REST spot order status parsing
  • Updated GateIo.Net to version 1.8.0
    • Fixed ICoinbaseOrderBookFactory DI lifetime
    • Added clientOrderId parameter to restClient.SpotApi.Trading.EditOrderAsync
    • Added clientOrderId parameter to socketClient.SpotApi.EditOrderAsync
  • Updated HTX.Net to version 6.1.2
    • Fixed cancellation token not being passed to subscribe method in Shared client
  • Updated Kraken.Net to version 5.0.0
    • Updated the library to use System.Text.Json for (de)serialization instead of Json.Net
    • Updated Spot websocket implementation from V1 to V2
      • Moved requesting of WebSocket token for private endpoints from user endpoint to internal
      • Removed automatic mapping of BTC to XBT (V2 API used BTC as symbol instead of the previous XBT)
      • Respone models have been updated to V2
      • Spread subscription has been removed, part of Ticker stream now
      • Added individual order book subscription
      • Added instrument subscription
      • Added user balances subscription
      • UserTrade subscription has been removed, part of Order stream now
      • Added socketClient.SpotApi.PlaceMultipleOrdersAsync endpoint
      • Added socketClient.SpotApi.EditOrderAsync endpoint
    • Added socketClient.SpotApi.ReplaceOrderAsync endpoint
    • Added Shared implementation for Futures WebSocket and REST APIs
    • Extended Shared implementation for Spot WebSocket API
    • Added restClient.SpotApi.Trading.CancelAllOrdersAfterAsync endpoint
    • Added restClient.FuturesApi.ExchangeData.GetTickerAsync endpoint
    • Added restClient.FuturesApi.Trading.GetOrdrAync endpoint
    • Renamed clientOrderId to userReference parameters in Spot orders as it was implemented with the userref field
    • Added new clientOrderId parameter to Spot orders using the correct cl_ord_id field
    • Updated Shared Spot REST implementation to use new clientOrderId property
    • Updated restClient.FuturesApi.GetBalancesAsync response so it's more discoverable
    • Updated AssetStatus Enum values
    • Updated SymbolStatus Enum values
    • Fixed deserialization issue FuturesApi.Trading.GetOpenPositionsAsync

Version 2.1.0

08 Oct 13:27
Compare
Choose a tag to compare
  • Added Coinbase support with Coinbase.Net 1.0.0
  • Updated reference CryptoExchange version to 8.0.1
    • Added cached library version properties on base client
    • Added support for derserializing 0001-01-01 as datetime null value
    • Added ToRfc3339String extension method for DateTime type
  • Updated Bitfinex.Net to version 7.8.1
    • Limit shared interface GetBalancesAsync result to Exchange balances to prevent duplicate asset balances
  • Updated Bitget.Net to version 1.10.1
    • Added BitgetSymbolStatus.Halt Enum value
    • Added converting to uppercase for CancelAllOrdersAsync marginAsset parameter
    • Fixed FutureApiV2.Trading.CancelTriggerOrdersAsync endpoint
  • Updated BitMart.Net to version 1.3.0
    • Added UsdFuturesApi.Trading.PlaceTpSlOrderAsync endpoint
    • Added UsdFuturesApi.Trading.EditTpSlOrderAsync endpoint
    • Added UsdFuturesApi.Trading.EditTriggerOrderAsync endpoint
    • Added UsdFuturesApi.Trading.EditPresetTriggerOrderAsync endpoint
    • Added clientOrderId parameter to CancelOrderAsync and CancelTriggerOrderAsync endpoints
    • Added planType parameter to GetTriggerOrdersAsync endpoint
  • Updated Bybit.Net to version 3.14.1
    • Added ClosedPnl property to BybitOrderUpdate model
    • Added Pnl property to BybitUserTradeUpdate model
  • Updated GateIo.Net to version 1.7.0
    • Added SpotApi.Account.GetTransferHistoryAsync endpoint
    • Added SpotApi.Account.TransferToAccountAsync endpoint
    • Added PerpetualFuturesApi.Trading.EditMultipleOrdersAsync endpoint
    • Added BestBidQuantity/BestAskQuantity properties to GateIoPerpTicker response model
    • Added startTime/endTime parameters to PerpetualFuturesApi.ExchangeData.GetFundingRateHistoryAsync and updated shared implementation to support pagination
    • Added support for clientOrderId to SpotApi.Trading.GetOrderAsync endpoint
    • Fixed some serialization issues in batch endpoints
  • Updated HTX.Net to version 6.1.1
    • Fixed LastPrice value on SpotTicker Shared implementation
  • Updated Kucoin.Net to version 5.15.0
    • Added FuturesApi.Account.GetMarginModeAsync endpoint
    • Added FuturesApi.Account.SetMarginModeAsync endpoint
    • Added FuturesApi.Account.GetCrossMarginLeverageAsync endpoint
    • Added FuturesApi.Account.SetCrossMarginLeverageAsync endpoint
    • Added marginMode parameter to FuturesApi.Trading.PlaceOrderAsync and PlaceMultipleOrdersAsync endpoints
    • Added onWalletUpdate update handler to FuturesApi.SubscribeToBalanceUpdatesAsync stream
    • Added FuturesApi.SubscribeToMarginModeUpdatesAsync stream
    • Added FuturesApi.SubscribeToCrossMarginLeverageUpdatesAsync stream
    • Updated various order and trade response/update models with margin mode properties
    • Update position models with MarginMode, PositionSide, Leverage and PositionFunding properties
    • Fixed cancellation token not getting passed in shared ticker subscriptions
  • Updated OKX.Net to version 2.5.0
    • Added ExchangeData.GetAnnouncementsAsync and GetAnnouncementTypesAsync endpoints
    • Added asset parameter to Account.GetLeverageAsync endpoint
    • Added IsTradeBorrowMode property to Algo order response model
    • Updated OKXAccountConfiguration response model
    • Updated OKXDiscountInfo response model