From b9c07462bfd98d9dfd072df0f5241b34d46b3270 Mon Sep 17 00:00:00 2001 From: JKorf Date: Tue, 22 Oct 2024 20:31:03 +0200 Subject: [PATCH] Updated package versions, added CryptoCom --- CryptoClients.Net/CryptoClients.Net.csproj | 25 ++++----- CryptoClients.Net/CryptoClients.Net.xml | 53 ++++++++++++++++--- CryptoClients.Net/Enums/Exchange.cs | 6 +++ CryptoClients.Net/ExchangeOrderBookFactory.cs | 9 ++++ CryptoClients.Net/ExchangeRestClient.cs | 12 +++++ CryptoClients.Net/ExchangeSocketClient.cs | 13 +++++ CryptoClients.Net/Exchanges.cs | 14 +++++ .../ServiceCollectionExtensions.cs | 11 ++++ .../Interfaces/IExchangeOrderBookFactory.cs | 5 ++ .../Interfaces/IExchangeRestClient.cs | 5 ++ .../Interfaces/IExchangeSocketClient.cs | 5 ++ .../Models/ExchangeCredentials.cs | 5 ++ 12 files changed, 145 insertions(+), 18 deletions(-) diff --git a/CryptoClients.Net/CryptoClients.Net.csproj b/CryptoClients.Net/CryptoClients.Net.csproj index 9c01f85..1ff1637 100644 --- a/CryptoClients.Net/CryptoClients.Net.csproj +++ b/CryptoClients.Net/CryptoClients.Net.csproj @@ -1,4 +1,4 @@ - + netstandard2.0;netstandard2.1 enable @@ -49,21 +49,22 @@ - + - + - - - - - - - - - + + + + + + + + + + CryptoClients.Net.xml diff --git a/CryptoClients.Net/CryptoClients.Net.xml b/CryptoClients.Net/CryptoClients.Net.xml index 35539f8..b819d8e 100644 --- a/CryptoClients.Net/CryptoClients.Net.xml +++ b/CryptoClients.Net/CryptoClients.Net.xml @@ -49,6 +49,11 @@ CoinEx + + + Crypto.com + + Gate.io @@ -131,6 +136,9 @@ + + + @@ -149,7 +157,7 @@ - + DI constructor @@ -184,6 +192,9 @@ + + + @@ -393,12 +404,12 @@ Create a new ExchangeRestClient instance. Client instances will be created with default options. - + Create a new ExchangeRestClient instance - + DI constructor @@ -613,6 +624,11 @@ CoinEx exchange info + + + Crypto.com exchange info + + GateIo exchange info @@ -680,6 +696,9 @@ + + + @@ -799,12 +818,12 @@ Create a new ExchangeSocketClient instance. Client instances will be created with default options. - + Create a new ExchangeSocketClient instance - + DI constructor @@ -1072,6 +1091,11 @@ CoinEx order book factory + + + Crypto.com order book factory + + Gate.io order book factory @@ -1156,6 +1180,11 @@ CoinEx REST API + + + Crypto.com REST API + + Gate.io REST API @@ -2029,6 +2058,11 @@ CoinEx Websocket API + + + Crypto.com Websocket API + + Gate.io Websocket API @@ -2398,6 +2432,11 @@ CoinEx API credentials + + + Crypto.com API credentials + + Gate.io API credentials @@ -2488,7 +2527,7 @@ Extensions for DI - + Add all the exchange clients to the service collection as well as the IExchangeRestClient, IExchangeSocketClient and IExchangeOrderBookFactory aggregation interfaces @@ -2511,6 +2550,8 @@ The options options for the CoinEx rest client. Will override options provided in the global options The options options for the CoinEx socket client. Will override options provided in the global options The options options for the CoinGecko rest client. Will override options provided in the global options + The options options for the Crypto.com rest client. Will override options provided in the global options + The options options for the Crypto.com socket client. Will override options provided in the global options The options options for the Gate.io rest client. Will override options provided in the global options The options options for the Gate.io socket client. Will override options provided in the global options The options options for the HTX rest client. Will override options provided in the global options diff --git a/CryptoClients.Net/Enums/Exchange.cs b/CryptoClients.Net/Enums/Exchange.cs index 83d688c..d48f35a 100644 --- a/CryptoClients.Net/Enums/Exchange.cs +++ b/CryptoClients.Net/Enums/Exchange.cs @@ -6,6 +6,7 @@ using Bybit.Net; using Coinbase.Net; using CoinEx.Net; +using CryptoCom.Net; using GateIo.Net; using HTX.Net; using Kraken.Net; @@ -55,6 +56,10 @@ public static class Exchange /// public static string CoinEx => CoinExExchange.ExchangeName; /// + /// Crypto.com + /// + public static string CryptoCom => CryptoComExchange.ExchangeName; + /// /// Gate.io /// public static string GateIo => "GateIo"; @@ -92,6 +97,7 @@ public static class Exchange Bybit, Coinbase, CoinEx, + CryptoCom, GateIo, HTX, Kraken, diff --git a/CryptoClients.Net/ExchangeOrderBookFactory.cs b/CryptoClients.Net/ExchangeOrderBookFactory.cs index 996ad6c..f52ba78 100644 --- a/CryptoClients.Net/ExchangeOrderBookFactory.cs +++ b/CryptoClients.Net/ExchangeOrderBookFactory.cs @@ -16,6 +16,8 @@ using CoinEx.Net.Interfaces; using CryptoClients.Net.Enums; using CryptoClients.Net.Interfaces; +using CryptoCom.Net.Clients; +using CryptoCom.Net.Interfaces; using CryptoExchange.Net; using CryptoExchange.Net.Interfaces; using CryptoExchange.Net.SharedApis; @@ -54,6 +56,8 @@ public class ExchangeOrderBookFactory : IExchangeOrderBookFactory /// public ICoinExOrderBookFactory CoinEx { get; } /// + public ICryptoComOrderBookFactory CryptoCom { get; } + /// public IGateIoOrderBookFactory GateIo { get; } /// public IHTXOrderBookFactory HTX { get; } @@ -78,6 +82,7 @@ public ExchangeOrderBookFactory( IBybitOrderBookFactory bybit, ICoinbaseOrderBookFactory coinbase, ICoinExOrderBookFactory coinEx, + ICryptoComOrderBookFactory cryptoCom, IGateIoOrderBookFactory gateIo, IHTXOrderBookFactory htx, IKrakenOrderBookFactory kraken, @@ -93,6 +98,7 @@ public ExchangeOrderBookFactory( Bybit = bybit; Coinbase = coinbase; CoinEx = coinEx; + CryptoCom = cryptoCom; GateIo = gateIo; HTX = htx; Kraken = kraken; @@ -140,6 +146,9 @@ public ExchangeOrderBookFactory( var coinexClient = new CoinExRestClient(); return symbol.TradingMode == TradingMode.Spot ? CoinEx.Spot.Create(symbol.GetSymbol(coinexClient.SpotApiV2.FormatSymbol)) : CoinEx.Futures.Create(symbol.GetSymbol(coinexClient.FuturesApi.FormatSymbol)); + case "CryptoCom": + var cryptoComClient = new CryptoComSocketClient(); + return CryptoCom.Exchange.Create(symbol.GetSymbol(cryptoComClient.ExchangeApi.FormatSymbol)); case "GateIo": var gateClient = new GateIoRestClient(); return symbol.TradingMode == TradingMode.Spot ? GateIo.Spot.Create(symbol.GetSymbol(gateClient.SpotApi.FormatSymbol)) diff --git a/CryptoClients.Net/ExchangeRestClient.cs b/CryptoClients.Net/ExchangeRestClient.cs index 25ad09d..9c68e50 100644 --- a/CryptoClients.Net/ExchangeRestClient.cs +++ b/CryptoClients.Net/ExchangeRestClient.cs @@ -24,6 +24,9 @@ using CoinEx.Net.Objects.Options; using CryptoClients.Net.Interfaces; using CryptoClients.Net.Models; +using CryptoCom.Net.Clients; +using CryptoCom.Net.Interfaces.Clients; +using CryptoCom.Net.Objects.Options; using CryptoExchange.Net.Authentication; using CryptoExchange.Net.Interfaces.CommonClients; using CryptoExchange.Net.Objects; @@ -78,6 +81,8 @@ public class ExchangeRestClient : IExchangeRestClient /// public ICoinExRestClient CoinEx { get; } /// + public ICryptoComRestClient CryptoCom { get; } + /// public IGateIoRestClient GateIo { get; } /// public IHTXRestClient HTX { get; } @@ -251,6 +256,7 @@ public ExchangeRestClient() Bybit = new BybitRestClient(); Coinbase = new CoinbaseRestClient(); CoinEx = new CoinExRestClient(); + CryptoCom = new CryptoComRestClient(); GateIo = new GateIoRestClient(); HTX = new HTXRestClient(); Kraken = new KrakenRestClient(); @@ -275,6 +281,7 @@ public ExchangeRestClient( Action? bybitRestOptions = null, Action? coinbaseRestOptions = null, Action? coinExRestOptions = null, + Action? cryptoComRestOptions = null, Action? gateIoRestOptions = null, Action? htxRestOptions = null, Action? krakenRestOptions = null, @@ -313,6 +320,7 @@ Action SetGlobalRestOptions(GlobalExchangeOpti bybitRestOptions = SetGlobalRestOptions(global, bybitRestOptions, credentials?.Bybit); coinbaseRestOptions = SetGlobalRestOptions(global, coinbaseRestOptions, credentials?.Coinbase); coinExRestOptions = SetGlobalRestOptions(global, coinExRestOptions, credentials?.CoinEx); + cryptoComRestOptions = SetGlobalRestOptions(global, cryptoComRestOptions, credentials?.CryptoCom); gateIoRestOptions = SetGlobalRestOptions(global, gateIoRestOptions, credentials?.GateIo); htxRestOptions = SetGlobalRestOptions(global, htxRestOptions, credentials?.HTX); krakenRestOptions = SetGlobalRestOptions(global, krakenRestOptions, credentials?.Kraken); @@ -329,6 +337,7 @@ Action SetGlobalRestOptions(GlobalExchangeOpti Bybit = new BybitRestClient(bybitRestOptions); Coinbase = new CoinbaseRestClient(coinbaseRestOptions); CoinEx = new CoinExRestClient(coinExRestOptions); + CryptoCom = new CryptoComRestClient(cryptoComRestOptions); GateIo = new GateIoRestClient(gateIoRestOptions); HTX = new HTXRestClient(htxRestOptions); Kraken = new KrakenRestClient(krakenRestOptions); @@ -378,6 +387,7 @@ private void InitSharedClients() Coinbase.AdvancedTradeApi.SharedClient, CoinEx.SpotApiV2.SharedClient, CoinEx.FuturesApi.SharedClient, + CryptoCom.ExchangeApi.SharedClient, GateIo.SpotApi.SharedClient, GateIo.PerpetualFuturesApi.SharedClient, HTX.SpotApi.SharedClient, @@ -403,6 +413,7 @@ public ExchangeRestClient( IBybitRestClient bybit, ICoinbaseRestClient coinbase, ICoinExRestClient coinEx, + ICryptoComRestClient cryptoCom, IGateIoRestClient gateIo, IHTXRestClient htx, IKrakenRestClient kraken, @@ -421,6 +432,7 @@ public ExchangeRestClient( Bybit = bybit; Coinbase = coinbase; CoinEx = coinEx; + CryptoCom = cryptoCom; GateIo = gateIo; HTX = htx; Kraken = kraken; diff --git a/CryptoClients.Net/ExchangeSocketClient.cs b/CryptoClients.Net/ExchangeSocketClient.cs index a44e629..fe049e8 100644 --- a/CryptoClients.Net/ExchangeSocketClient.cs +++ b/CryptoClients.Net/ExchangeSocketClient.cs @@ -24,6 +24,9 @@ using CoinEx.Net.Objects.Options; using CryptoClients.Net.Interfaces; using CryptoClients.Net.Models; +using CryptoCom.Net.Clients; +using CryptoCom.Net.Interfaces.Clients; +using CryptoCom.Net.Objects.Options; using CryptoExchange.Net.Authentication; using CryptoExchange.Net.Objects; using CryptoExchange.Net.Objects.Options; @@ -77,6 +80,8 @@ public class ExchangeSocketClient : IExchangeSocketClient /// public ICoinExSocketClient CoinEx { get; } /// + public ICryptoComSocketClient CryptoCom { get; } + /// public IGateIoSocketClient GateIo { get; } /// public IHTXSocketClient HTX { get; } @@ -177,6 +182,7 @@ public ExchangeSocketClient() Bybit = new BybitSocketClient(); Coinbase = new CoinbaseSocketClient(); CoinEx = new CoinExSocketClient(); + CryptoCom = new CryptoComSocketClient(); GateIo = new GateIoSocketClient(); HTX = new HTXSocketClient(); Kraken = new KrakenSocketClient(); @@ -200,6 +206,7 @@ public ExchangeSocketClient( Action? bybitSocketOptions = null, Action? coinExSocketOptions = null, Action? coinbaseSocketOptions = null, + Action? cryptoComSocketOptions = null, Action? gateIoSocketOptions = null, Action? htxSocketOptions = null, Action? krakenSocketOptions = null, @@ -239,6 +246,7 @@ Action SetGlobalSocketOptions(GlobalExchangeOp bybitSocketOptions = SetGlobalSocketOptions(global, bybitSocketOptions, credentials?.Bybit); coinbaseSocketOptions = SetGlobalSocketOptions(global, coinbaseSocketOptions, credentials?.Coinbase); coinExSocketOptions = SetGlobalSocketOptions(global, coinExSocketOptions, credentials?.CoinEx); + cryptoComSocketOptions = SetGlobalSocketOptions(global, cryptoComSocketOptions, credentials?.CryptoCom); gateIoSocketOptions = SetGlobalSocketOptions(global, gateIoSocketOptions, credentials?.GateIo); htxSocketOptions = SetGlobalSocketOptions(global, htxSocketOptions, credentials?.HTX); krakenSocketOptions = SetGlobalSocketOptions(global, krakenSocketOptions, credentials?.Kraken); @@ -256,6 +264,7 @@ Action SetGlobalSocketOptions(GlobalExchangeOp Coinbase = new CoinbaseSocketClient(coinbaseSocketOptions ?? new Action((x) => { })); CoinEx = new CoinExSocketClient(coinExSocketOptions ?? new Action((x) => { })); HTX = new HTXSocketClient(htxSocketOptions ?? new Action((x) => { })); + CryptoCom = new CryptoComSocketClient(cryptoComSocketOptions ?? new Action((x) => { })); GateIo = new GateIoSocketClient(gateIoSocketOptions ?? new Action((x) => { })); Kraken = new KrakenSocketClient(krakenSocketOptions ?? new Action((x) => { })); Kucoin = new KucoinSocketClient(kucoinSocketOptions ?? new Action((x) => { })); @@ -277,6 +286,7 @@ public ExchangeSocketClient( IBybitSocketClient bybit, ICoinbaseSocketClient coinbase, ICoinExSocketClient coinEx, + ICryptoComSocketClient cryptoCom, IGateIoSocketClient gateIo, IHTXSocketClient htx, IKrakenSocketClient kraken, @@ -292,6 +302,7 @@ public ExchangeSocketClient( Bybit = bybit; Coinbase = coinbase; CoinEx = coinEx; + CryptoCom = cryptoCom; GateIo = gateIo; HTX = htx; Kraken = kraken; @@ -323,6 +334,7 @@ private void InitSharedClients() Coinbase.AdvancedTradeApi.SharedClient, CoinEx.SpotApiV2.SharedClient, CoinEx.FuturesApi.SharedClient, + CryptoCom.ExchangeApi.SharedClient, GateIo.SpotApi.SharedClient, GateIo.PerpetualFuturesApi.SharedClient, HTX.SpotApi.SharedClient, @@ -543,6 +555,7 @@ public async Task UnsubscribeAllAsync() Bybit.UnsubscribeAllAsync(), Coinbase.UnsubscribeAllAsync(), CoinEx.UnsubscribeAllAsync(), + CryptoCom.UnsubscribeAllAsync(), GateIo.UnsubscribeAllAsync(), HTX.UnsubscribeAllAsync(), Kraken.UnsubscribeAllAsync(), diff --git a/CryptoClients.Net/Exchanges.cs b/CryptoClients.Net/Exchanges.cs index 490b479..d0cbfc0 100644 --- a/CryptoClients.Net/Exchanges.cs +++ b/CryptoClients.Net/Exchanges.cs @@ -6,6 +6,7 @@ using Bybit.Net; using Coinbase.Net; using CoinEx.Net; +using CryptoCom.Net; using CryptoExchange.Net.RateLimiting; using GateIo.Net; using HTX.Net; @@ -102,6 +103,16 @@ public static class Exchanges ApiDocsUrl = CoinExExchange.ApiDocsUrl }; + /// + /// Crypto.com exchange info + /// + public static ExchangeInfo CryptoCom { get; } = new ExchangeInfo + { + Name = CryptoComExchange.ExchangeName, + Url = CryptoComExchange.Url, + ApiDocsUrl = CryptoComExchange.ApiDocsUrl + }; + /// /// GateIo exchange info /// @@ -175,6 +186,7 @@ public static class Exchanges Bybit, Coinbase, CoinEx, + CryptoCom, GateIo, HTX, Kucoin, @@ -195,6 +207,7 @@ public static event Action RateLimitTriggered BitgetExchange.RateLimiter.RateLimitTriggered += value; BitMartExchange.RateLimiter.RateLimitTriggered += value; CoinbaseExchange.RateLimiter.RateLimitTriggered += value; + CryptoComExchange.RateLimiter.RateLimitTriggered += value; GateIoExchange.RateLimiter.RateLimitTriggered += value; HTXExchange.RateLimiter.RateLimitTriggered += value; KrakenExchange.RateLimiter.RateLimitTriggered += value; @@ -209,6 +222,7 @@ public static event Action RateLimitTriggered BitgetExchange.RateLimiter.RateLimitTriggered -= value; BitMartExchange.RateLimiter.RateLimitTriggered -= value; CoinbaseExchange.RateLimiter.RateLimitTriggered -= value; + CryptoComExchange.RateLimiter.RateLimitTriggered -= value; GateIoExchange.RateLimiter.RateLimitTriggered -= value; HTXExchange.RateLimiter.RateLimitTriggered -= value; KrakenExchange.RateLimiter.RateLimitTriggered -= value; diff --git a/CryptoClients.Net/ExtensionMethods/ServiceCollectionExtensions.cs b/CryptoClients.Net/ExtensionMethods/ServiceCollectionExtensions.cs index c27c832..8fae7de 100644 --- a/CryptoClients.Net/ExtensionMethods/ServiceCollectionExtensions.cs +++ b/CryptoClients.Net/ExtensionMethods/ServiceCollectionExtensions.cs @@ -18,6 +18,8 @@ using CryptoClients.Net; using CryptoClients.Net.Interfaces; using CryptoClients.Net.Models; +using CryptoCom.Net.Interfaces.Clients; +using CryptoCom.Net.Objects.Options; using CryptoExchange.Net.Authentication; using CryptoExchange.Net.Interfaces.CommonClients; using CryptoExchange.Net.Objects.Options; @@ -65,6 +67,8 @@ public static class ServiceCollectionExtensions /// The options options for the CoinEx rest client. Will override options provided in the global options /// The options options for the CoinEx socket client. Will override options provided in the global options /// The options options for the CoinGecko rest client. Will override options provided in the global options + /// The options options for the Crypto.com rest client. Will override options provided in the global options + /// The options options for the Crypto.com socket client. Will override options provided in the global options /// The options options for the Gate.io rest client. Will override options provided in the global options /// The options options for the Gate.io socket client. Will override options provided in the global options /// The options options for the HTX rest client. Will override options provided in the global options @@ -99,6 +103,8 @@ public static IServiceCollection AddCryptoClients( Action? coinExRestOptions = null, Action? coinExSocketOptions = null, Action? coinGeckoRestOptions = null, + Action? cryptoComRestOptions = null, + Action? cryptoComSocketOptions = null, Action? gateIoRestOptions = null, Action? gateIoSocketOptions = null, Action? htxRestOptions = null, @@ -171,6 +177,8 @@ Action SetGlobalSocketOptions(GlobalExchangeOp coinExRestOptions = SetGlobalRestOptions(global, coinExRestOptions, credentials?.CoinEx); coinExSocketOptions = SetGlobalSocketOptions(global, coinExSocketOptions, credentials?.CoinEx); coinGeckoRestOptions = SetGlobalRestOptions(global, coinGeckoRestOptions, default); + cryptoComRestOptions = SetGlobalRestOptions(global, cryptoComRestOptions, credentials?.CryptoCom); + cryptoComSocketOptions = SetGlobalSocketOptions(global, cryptoComSocketOptions, credentials?.CryptoCom); gateIoRestOptions = SetGlobalRestOptions(global, gateIoRestOptions, credentials?.GateIo); gateIoSocketOptions = SetGlobalSocketOptions(global, gateIoSocketOptions, credentials?.GateIo); htxRestOptions = SetGlobalRestOptions(global, htxRestOptions, credentials?.HTX); @@ -194,6 +202,7 @@ Action SetGlobalSocketOptions(GlobalExchangeOp services.AddCoinbase(coinbaseRestOptions, coinbaseSocketOptions, socketClientLifetime); services.AddCoinEx(coinExRestOptions, coinExSocketOptions, socketClientLifetime); services.AddCoinGecko(coinGeckoRestOptions); + services.AddCryptoCom(cryptoComRestOptions, cryptoComSocketOptions, socketClientLifetime); services.AddGateIo(gateIoRestOptions, gateIoSocketOptions, socketClientLifetime); services.AddHTX(htxRestOptions, htxSocketOptions, socketClientLifetime); services.AddKraken(krakenRestOptions, krakenSocketOptions, socketClientLifetime); @@ -212,6 +221,7 @@ Action SetGlobalSocketOptions(GlobalExchangeOp x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), + x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), @@ -233,6 +243,7 @@ Action SetGlobalSocketOptions(GlobalExchangeOp x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), + x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), x.GetRequiredService(), diff --git a/CryptoClients.Net/Interfaces/IExchangeOrderBookFactory.cs b/CryptoClients.Net/Interfaces/IExchangeOrderBookFactory.cs index 8087d6f..d56c340 100644 --- a/CryptoClients.Net/Interfaces/IExchangeOrderBookFactory.cs +++ b/CryptoClients.Net/Interfaces/IExchangeOrderBookFactory.cs @@ -6,6 +6,7 @@ using Bybit.Net.Interfaces; using Coinbase.Net.Interfaces; using CoinEx.Net.Interfaces; +using CryptoCom.Net.Interfaces; using CryptoExchange.Net.Interfaces; using CryptoExchange.Net.SharedApis; using GateIo.Net.Interfaces; @@ -55,6 +56,10 @@ public interface IExchangeOrderBookFactory /// ICoinExOrderBookFactory CoinEx { get; } /// + /// Crypto.com order book factory + /// + ICryptoComOrderBookFactory CryptoCom { get; } + /// /// Gate.io order book factory /// IGateIoOrderBookFactory GateIo { get; } diff --git a/CryptoClients.Net/Interfaces/IExchangeRestClient.cs b/CryptoClients.Net/Interfaces/IExchangeRestClient.cs index 1eb98c1..0de1765 100644 --- a/CryptoClients.Net/Interfaces/IExchangeRestClient.cs +++ b/CryptoClients.Net/Interfaces/IExchangeRestClient.cs @@ -6,6 +6,7 @@ using Bybit.Net.Interfaces.Clients; using Coinbase.Net.Interfaces.Clients; using CoinEx.Net.Interfaces.Clients; +using CryptoCom.Net.Interfaces.Clients; using CryptoExchange.Net.Interfaces.CommonClients; using CryptoExchange.Net.Objects; using CryptoExchange.Net.SharedApis; @@ -59,6 +60,10 @@ public interface IExchangeRestClient /// ICoinExRestClient CoinEx { get; } /// + /// Crypto.com REST API + /// + ICryptoComRestClient CryptoCom { get; } + /// /// Gate.io REST API /// IGateIoRestClient GateIo { get; } diff --git a/CryptoClients.Net/Interfaces/IExchangeSocketClient.cs b/CryptoClients.Net/Interfaces/IExchangeSocketClient.cs index c637200..1c50173 100644 --- a/CryptoClients.Net/Interfaces/IExchangeSocketClient.cs +++ b/CryptoClients.Net/Interfaces/IExchangeSocketClient.cs @@ -6,6 +6,7 @@ using Bybit.Net.Interfaces.Clients; using Coinbase.Net.Interfaces.Clients; using CoinEx.Net.Interfaces.Clients; +using CryptoCom.Net.Interfaces.Clients; using CryptoExchange.Net.Objects; using CryptoExchange.Net.Objects.Sockets; using CryptoExchange.Net.SharedApis; @@ -60,6 +61,10 @@ public interface IExchangeSocketClient /// ICoinExSocketClient CoinEx { get; } /// + /// Crypto.com Websocket API + /// + ICryptoComSocketClient CryptoCom { get; } + /// /// Gate.io Websocket API /// IGateIoSocketClient GateIo { get; } diff --git a/CryptoClients.Net/Models/ExchangeCredentials.cs b/CryptoClients.Net/Models/ExchangeCredentials.cs index b1fb581..499c6ae 100644 --- a/CryptoClients.Net/Models/ExchangeCredentials.cs +++ b/CryptoClients.Net/Models/ExchangeCredentials.cs @@ -51,6 +51,11 @@ public class ExchangeCredentials /// public ApiCredentials? CoinEx { get; set; } + /// + /// Crypto.com API credentials + /// + public ApiCredentials? CryptoCom { get; set; } + /// /// Gate.io API credentials ///