Skip to content

Releases

CryptoExchange.Net.Web3 Version 13.0.0

Choose a tag to compare

Initial release

CryptoExchange.Net Version 13.2.3

Choose a tag to compare

@JKorf JKorf released this 03 Nov 13:25

Added additional constructor for NoApiCredentialsError
Updated test error messages
Fixed some timing issues in WebSocket closing

CryptoExchange.Net Version 13.2.2

Choose a tag to compare

@JKorf JKorf released this 22 Oct 08:20

Fixed UserDataTracker config not getting set correctly
Added UserDataTracker warning for missing tracked symbols if open orders request requires it

CryptoExchange.Net Version 13.2.1

Choose a tag to compare

@JKorf JKorf released this 19 Oct 06:52

Fixed subscription without any predefined routes failing to subscribe
Fixed test validation failing with empty body string

CryptoExchange.Net Version 13.2.0

Choose a tag to compare

@JKorf JKorf released this 13 Oct 09:41

Added Shared API ISubscribeFundingInfoSocket
Added DelayAfterConnect to SocketApiOptions
Added processor parameter for some methods in SocketApiClient to allow specific overriding behavior
Updated WebSocket duplicate subscription handling
Updated Shared APIs ISubscribeIncrementalOrderBook
Fixed incorrect status keeping of WebSocket subscriptions which don't expect a response
Fixed DelayAfterConnect not being respected on reconnection

CryptoExchange.Net Version 13.1.0

Choose a tag to compare

@JKorf JKorf released this 28 Sep 09:23

Added UnsubscribeAllAsync method to Shared APIs ISharedSubscription and ISharedApiClientBase
Added WaitAllAsync extension method for waiting on an IAsyncEnumerable to finish
Added SubscribeAllAsync extension methods for Shared API resolved capabilities

CryptoExchange.Net Version 13.0.0

Choose a tag to compare

@JKorf JKorf released this 23 Sep 08:08
  • Shared APIs
    • Added Shared API V2 with fine-grained capability interfaces for individual REST requests, WebSocket requests and subscriptions
    • Added transport-agnostic capability interfaces with REST- and WebSocket-specific variants where applicable
    • Added dynamic capability resolution support with optional transport preference option
    • Added RequestParameterRules and ExchangeParameterRules properties on Shared API options making request parameter rules and support clearer
    • Added new Shared API capabilities for ledger history, funding information and history, leverage tiers, transfers, mark prices and index prices
    • Added new capabilities for placing and editing multiple spot and futures orders
    • Added new capabilities for cancelling all open orders and all open symbol orders
    • Added new incremental order book, mark price and index price subscriptions
    • Added ReduceOnly parameter to PlaceFuturesTriggerOrderRequest
    • Added new SharedTicker as the common V2 ticker model for spot and futures markets
      • For additional futures ticker info like mark/index price and funding info separate interfaces are available in V2
    • Added SharedSpotOrderUpdate and SharedFuturesOrderUpdate models for WebSocket order updates
    • Added IExchangeCallResult and IExchangeCallResult<T> for transport-agnostic Shared API results
    • Retained the V1 aggregate Shared API interfaces for backwards compatibility
    • Renamed GetAssetsOptions to GetAllAssetsOptions
    • Renamed GetWithdrawalsOptions to GetWithdrawalHistoryOptions
    • Renamed GetDepositsOptions to GetDepositHistoryOptions
    • GetFuturesTickerOptions and GetSpotTickerOptions have been replaced by GetTickerOptions
    • Deprecated Subscribe request constructors using params for SharedSymbol parameter
  • Rate limiting
    • Added RateLimitAdmission for restricting requests to a configurable maximum rate limit utilization
    • Added the RateLimitAdmission client option callback for assigning admission rules based on request definition and weight
    • Added WithRateLimitAdmissionAsync for applying a rate limit admission rule to a specific REST, WebSocket or Shared API operation
    • Added configurable safety margins to fixed, sliding and fixed-after-first rate limit windows
    • Fixed decay rate limiter calculations and handling of partial decay progress
    • Fixed fixed and sliding window boundary calculations
  • Added automatic in-flight request coalescing for identical public REST GET requests
    • Sending identical public GET requests on the same client will only send a single request to the server and use the same response
    • Coalescing is enabled by default and can be disabled with the RequestCoalescingEnabled client option
  • Added DataTime, DataTimeLocal and SequenceNumber propagation when converting DataEvent<T> instances
  • Fixed form data URL encoding on .NET Framework when parameter values contain special characters
  • Fixed array converter not correctly handling decimal parsing for certain notations

CryptoExchange.Net Version 12.5.1

Choose a tag to compare

@JKorf JKorf released this 01 Sep 07:04

Fixed KlineTracker reporting incorrect High/Low price on GetStats result
Fixed caching issue for auth requests
Fixed failed ISymbolOrderBook start potentially leaving a pending background task
Fixed subscription query completion potentially reporting success too early for topic-filtered routes

CryptoExchange.Net Version 12.5.0

Choose a tag to compare

@JKorf JKorf released this 21 Aug 08:22
  • Shared APIs
    • Added ISpotOrderManagementSocketClient for placing/canceling Spot orders via Shared websocket implementation
    • Added IFuturesOrderManagementSocketClient for placing/canceling Futures orders via Shared websocket implementation
    • Added UpperFundingCap, LowerFundingCap to SharedFuturesSymbol model
    • Added UpperPriceLimitPerecentage, LowerPriceLimitPercentage, MakerFeePercentage and TakerFeePercentage to SharedSpotSymbol model
    • Added WithCalculatedQuantities(price, contractSize) to SharedQuantity to retrieve a copy with derived quantities
    • Added Description property to Shared EndpointOptions classes
    • Added additional check for symbol type to Shared Spot endpoints
    • Added QuantityType property to SharedOrderBook
    • Added auto calculated quote quantity where for SharedOrderQuantity where it makes sense
    • Updated SharedId value to be nullable
    • Updated quantity/volumes to SharedOrderQuantity model for SharedBookTicker, SharedOpenInterest, SharedPosition, SharedPositionHistory and SharedUserTrade
    • Updated Shared client info string representation
  • Added IQueryResult interface to QueryResult, moved OriginalData to the base class
  • Added UsePublicConnectionForAuth property to SocketApiClient
  • Added support for order polling where Shared order implementation doesn't support time filtering to UserDataTracker implementations
  • Added ManualUpdateSubscription and UpdateSubscription additional constructor to allow producing websocket events without actual connection
  • Updated logging unhandled websocket message
  • Split UserClientProvider into base class with RestClient and derived class also containing SocketClient
  • Removed unnecessary log from token manager
  • Fixed incorrect check test output

CryptoExchange.Net Version 12.4.0

Choose a tag to compare

@JKorf JKorf released this 28 Jul 10:45

Added AveragePrice property to SharedQuantity model
Added DebuggerDisplay attributes to Result objects
Updated SharedFuturesTicker, SharedSpotTicker, SharedTrade and SharedKline to use SharedOrderQuantity for volumes/quantities
Updated REST json deserialization error for empty response