CCXT.SIMPLE
1.1.10
dotnet add package CCXT.SIMPLE --version 1.1.10
NuGet\Install-Package CCXT.SIMPLE -Version 1.1.10
<PackageReference Include="CCXT.SIMPLE" Version="1.1.10" />
<PackageVersion Include="CCXT.SIMPLE" Version="1.1.10" />
<PackageReference Include="CCXT.SIMPLE" />
paket add CCXT.SIMPLE --version 1.1.10
#r "nuget: CCXT.SIMPLE, 1.1.10"
#:package CCXT.SIMPLE@1.1.10
#addin nuget:?package=CCXT.SIMPLE&version=1.1.10
#tool nuget:?package=CCXT.SIMPLE&version=1.1.10
CCXT.Simple
π Modern .NET cryptocurrency trading library - Unified API access to 110 exchange adapters (8 FULL, 3 PARTIAL, 99 SKELETON) with a focus on simplicity and performance.
β¨ Key Features
- π― Unified Interface - Same API across all exchanges
- β‘ High Performance -
ValueTask<T>
async patterns, HTTP client pooling - π Type Safe - Strong typing with comprehensive data models
- π Global Coverage - 110 exchange adapters (8 fully validated, 3 in progress)
- π Complete API - Market data, trading, account management, funding operations
π Quick Start
Installation
dotnet add package CCXT.Simple
Basic Usage
using CCXT.Simple.Exchanges.Binance;
// Initialize exchange
var exchange = new Exchange("USD");
var binance = new XBinance(exchange, "api_key", "secret_key");
// Get market data
var btcPrice = await binance.GetPrice("BTCUSDT");
var orderbook = await binance.GetOrderbook("BTCUSDT", 10);
// Trading operations
var balances = await binance.GetBalance();
var order = await binance.PlaceOrder("BTCUSDT", SideType.Buy, "limit", 0.001m, 50000m);
π’ Exchange Support
β Fully Functional (8 exchanges)
OKX | Bitstamp | Coinbase | Coinone | Bithumb | Kraken | Binance | Upbit
π Partial / In Progress (3)
Huobi | KuCoin | Korbit
π§ Priority Development Queue
Bitfinex β’ Gemini β’ Poloniex β’ Mexc β’ Deribit β’ Bitmex
π Skeleton Ready (99 exchanges)
Remaining adapters are generated skeletons awaiting implementation.
π‘ Architecture
Built on a multi-exchange adapter pattern with a unified IExchange
interface:
public interface IExchange
{
// Market Data
ValueTask<Orderbook> GetOrderbook(string symbol, int limit = 5);
ValueTask<decimal> GetPrice(string symbol);
// Trading
ValueTask<OrderInfo> PlaceOrder(string symbol, SideType side, string orderType, decimal amount, decimal? price = null);
ValueTask<Dictionary<string, BalanceInfo>> GetBalance();
// Funding
ValueTask<DepositAddress> GetDepositAddress(string currency, string network = null);
ValueTask<WithdrawalInfo> Withdraw(string currency, decimal amount, string address);
}
π§ Configuration
// Basic setup
var exchange = new Exchange("USD"); // or "KRW", "EUR", etc.
exchange.ApiCallDelaySeconds = 1; // Rate limiting
exchange.Volume24hBase = 1000000; // Volume thresholds
// With events
exchange.OnMessageEvent += (ex, msg, code) => Console.WriteLine($"[{ex}] {msg}");
exchange.OnUsdPriceEvent += price => Console.WriteLine($"BTC: ${price}");
π Documentation & Examples
- πΊοΈ Development Roadmap - Future plans, milestones, technical tasks
- π’ Exchange Status - Complete list of 110 exchanges and implementation status
- π Changelog - Version history and recent updates
- π» Code Examples - Interactive samples for Bithumb, Bitget, Coinone, Kraken
Running Examples
git clone https://github.com/ccxt-net/ccxt.simple.git
cd ccxt.simple
dotnet run --project samples/ccxt.sample.csproj
π€ Contributing
We welcome contributions! Need a specific exchange implemented? Create an issue - exchanges with more community requests get priority.
Development Setup
git clone https://github.com/ccxt-net/ccxt.simple.git
cd ccxt.simple
dotnet build # Build solution
dotnet test # Run 73 tests
π Project Status
- Current Version: 1.1.10 (.NET 8.0 & 9.0 & 10.0)
- Architecture: Thread-safe, event-driven, REST API focused
- Test Coverage: 73 tests passing
- Active Development: Monthly updates, community-driven priorities
π₯ Team
Core Development Team
- SEONGAHN - Lead Developer & Project Architect (lisa@odinsoft.co.kr)
- YUJIN - Senior Developer & Exchange Integration Specialist (yoojin@odinsoft.co.kr)
- SEJIN - Software Developer & API Implementation (saejin@odinsoft.co.kr)
π Support & Contact
- π Issues: GitHub Issues
- π§ Email: help@odinsoft.co.kr
π License
MIT License - see LICENSE.txt for details.
Built with β€οΈ by the ODINSOFT Team | β Star us on GitHub
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- GraphQL.Client (>= 6.1.0)
- GraphQL.Client.Serializer.SystemTextJson (>= 6.1.0)
- Newtonsoft.Json (>= 13.0.3)
- System.IdentityModel.Tokens.Jwt (>= 8.13.1)
-
.NETStandard 2.1
- GraphQL.Client (>= 6.1.0)
- GraphQL.Client.Serializer.SystemTextJson (>= 6.1.0)
- Newtonsoft.Json (>= 13.0.3)
- System.IdentityModel.Tokens.Jwt (>= 8.13.1)
-
net8.0
- GraphQL.Client (>= 6.1.0)
- GraphQL.Client.Serializer.SystemTextJson (>= 6.1.0)
- Newtonsoft.Json (>= 13.0.3)
- System.IdentityModel.Tokens.Jwt (>= 8.13.1)
-
net9.0
- GraphQL.Client (>= 6.1.0)
- GraphQL.Client.Serializer.SystemTextJson (>= 6.1.0)
- Newtonsoft.Json (>= 13.0.3)
- System.IdentityModel.Tokens.Jwt (>= 8.13.1)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
v1.1.10 - Added: SHA256.HashDataCompat extension for .NET Standard 2.0/2.1 compatibility (static utility for hashing)
Added: ConvertExtensions.ToHexString for byte[] to hex string conversion across all target frameworks
Refactored: All usages of SHA256 hashing and hex string conversion to use new extension methods
Improved: Ensured compatibility and consistent behavior for cryptographic operations on all supported .NET versions
Maintenance: Minor code cleanup and namespace unification for extension methods
This update improves cross-framework compatibility and code maintainability for cryptographic operations.