From 3e290b185e6af705d7beb5b772c3400e386b330e Mon Sep 17 00:00:00 2001
From: JKorf
Date: Tue, 13 Feb 2024 21:37:25 +0100
Subject: [PATCH] Docs
---
README.md | 25 +++++++++++++------------
docs/assets/css/stylesheet.css | 10 +++++++++-
docs/assets/images/logo.png | Bin 2157 -> 2144 bytes
docs/index.html | 29 ++++++++++++++++++++++-------
4 files changed, 44 insertions(+), 20 deletions(-)
diff --git a/README.md b/README.md
index 08e4c86..0f63b77 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# CryptoExchange.Net
-[](https://github.com/JKorf/CryptoExchange.Net/actions/workflows/dotnet.yml) [](https://www.nuget.org/packages/CryptoExchange.Net)
+[](https://github.com/JKorf/CryptoExchange.Net/actions/workflows/dotnet.yml) [](https://www.nuget.org/packages/CryptoExchange.Net) 
CryptoExchange.Net is a base library which is used to implement different cryptocurrency (exchange) API's. It provides a standardized way of implementing different API's, which results in a very similar experience for users of the API implementations.
@@ -11,19 +11,20 @@ The following API's are directly supported. Note that there are 3rd party implem
|Exchange|Repository|Nuget|
|--|--|--|
-|Binance|[JKorf/Binance.Net](https://github.com/JKorf/Binance.Net)|[](https://www.nuget.org/packages/Binance.Net)|
-|Bitfinex|[JKorf/Bitfinex.Net](https://github.com/JKorf/Bitfinex.Net)|[](https://www.nuget.org/packages/Bitfinex.Net)|
-|Bitget|[JKorf/Bitget.Net](https://github.com/JKorf/Bitget.Net)|[](https://www.nuget.org/packages/Bitget.Net)|
-|Bybit|[JKorf/Bybit.Net](https://github.com/JKorf/Bybit.Net)|[](https://www.nuget.org/packages/Bybit.Net)|
-|CoinEx|[JKorf/CoinEx.Net](https://github.com/JKorf/CoinEx.Net)|[](https://www.nuget.org/packages/CoinEx.Net)|
-|CoinGecko|[JKorf/CoinGecko.Net](https://github.com/JKorf/CoinGecko.Net)|[](https://www.nuget.org/packages/CoinGecko.Net)|
-|Huobi/HTX|[JKorf/Huobi.Net](https://github.com/JKorf/Huobi.Net)|[](https://www.nuget.org/packages/Huobi.Net)|
-|Kraken|[JKorf/Kraken.Net](https://github.com/JKorf/Kraken.Net)|[](https://www.nuget.org/packages/KrakenExchange.Net)|
-|Kucoin|[JKorf/Kucoin.Net](https://github.com/JKorf/Kucoin.Net)|[](https://www.nuget.org/packages/Kucoin.Net)|
-|Mexc|[JKorf/Mexc.Net](https://github.com/JKorf/Mexc.Net)|[](https://www.nuget.org/packages/JK.Mexc.Net)|
-|OKX|[JKorf/OKX.Net](https://github.com/JKorf/OKX.Net)|[](https://www.nuget.org/packages/JK.OKX.Net)|
+|Binance|[JKorf/Binance.Net](https://github.com/JKorf/Binance.Net)|[](https://www.nuget.org/packages/Binance.Net)|
+|Bitfinex|[JKorf/Bitfinex.Net](https://github.com/JKorf/Bitfinex.Net)|[](https://www.nuget.org/packages/Bitfinex.Net)|
+|Bitget|[JKorf/Bitget.Net](https://github.com/JKorf/Bitget.Net)|[](https://www.nuget.org/packages/Bitget.Net)|
+|Bybit|[JKorf/Bybit.Net](https://github.com/JKorf/Bybit.Net)|[](https://www.nuget.org/packages/Bybit.Net)|
+|CoinEx|[JKorf/CoinEx.Net](https://github.com/JKorf/CoinEx.Net)|[](https://www.nuget.org/packages/CoinEx.Net)|
+|CoinGecko|[JKorf/CoinGecko.Net](https://github.com/JKorf/CoinGecko.Net)|[](https://www.nuget.org/packages/CoinGecko.Net)|
+|Huobi/HTX|[JKorf/Huobi.Net](https://github.com/JKorf/Huobi.Net)|[](https://www.nuget.org/packages/Huobi.Net)|
+|Kraken|[JKorf/Kraken.Net](https://github.com/JKorf/Kraken.Net)|[](https://www.nuget.org/packages/KrakenExchange.Net)|
+|Kucoin|[JKorf/Kucoin.Net](https://github.com/JKorf/Kucoin.Net)|[](https://www.nuget.org/packages/Kucoin.Net)|
+|Mexc|[JKorf/Mexc.Net](https://github.com/JKorf/Mexc.Net)|[](https://www.nuget.org/packages/JK.Mexc.Net)|
+|OKX|[JKorf/OKX.Net](https://github.com/JKorf/OKX.Net)|[](https://www.nuget.org/packages/JK.OKX.Net)|
## Discord
+[](https://discord.gg/MSpeEtSY8t)
A Discord server is available [here](https://discord.gg/MSpeEtSY8t). Feel free to join for discussion and/or questions around the CryptoExchange.Net and implementation libraries.
## Support the project
diff --git a/docs/assets/css/stylesheet.css b/docs/assets/css/stylesheet.css
index 660f4d2..c2ee343 100644
--- a/docs/assets/css/stylesheet.css
+++ b/docs/assets/css/stylesheet.css
@@ -1773,7 +1773,7 @@ hr {
color: #0366d6 !important;
}
.accordion:not(.accordion-alternate) .card-header a {
- background-color: #0366d6;
+ background-color: #76ace8;
color: #fff;
}
.accordion:not(.accordion-alternate) .card-header a.collapsed {
@@ -1987,6 +1987,7 @@ hr {
/*=== 5.5 Tabs ===*/
.nav-tabs {
border-bottom: 1px solid #d7dee3;
+ padding-bottom: 16px;
}
.nav-tabs .nav-item .nav-link {
border: 0;
@@ -2973,3 +2974,10 @@ input:-internal-autofill-selected {
left: -40px;
border-radius: 4px 0px 0px 4px;
}
+
+.tab-wrap{
+ border-top: 1px solid #eee;
+ border-bottom: 1px solid #eee;
+ padding: 0 10px;
+ margin-bottom: 40px;
+}
diff --git a/docs/assets/images/logo.png b/docs/assets/images/logo.png
index a35b6c82557cd659136b2466991e7cf9c853d02a..eb9f55b8f60c85925d57df7928535a20f044cf30 100644
GIT binary patch
delta 2082
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
Z@-LY=PlyDgnh*d0002ovPDHLkV1k0K6aN4J
diff --git a/docs/index.html b/docs/index.html
index 4c0a13a..158b0d4 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -190,7 +190,8 @@
Installation
Add the package via dotnet, or add it via the package manager. Any number of libraries can be installed, just make sure you're always using the latest at that moment.
-
+
-
+
-
-
@@ -284,6 +283,7 @@
All client libraries support and encourage usage via the Dotnet dependency injection system. Add all necesary services by calling the Add[Library]();
extension method on the service collection. Options for the clients can be passed as parameters.
Using the dependecy injection mechanism also makes sure the HttpClient is used correctly
+
+
This registers the following interfaces which can then be injected
+
+
@@ -707,6 +710,7 @@
Each library provides a REST API client. This client follows the following naming convention: [Library]RestClient
. The REST API client is split into different sub-API access clients, which in turn are split into different topics. This structure is the same for each library, which makes it easier to navigate the clients.
The client can be injected via dependency injection, or constructed manually.
+
+
The response object
Calls made with the REST API client will return a WebCallResult
object. This object contains information about both the request that was send and the response that was received. The WebCallResult
object exposes the following properties:
@@ -944,6 +949,7 @@ else
The client can be injected via dependency injection, or constructed manually. When constructing manually keep in mind that when the client is disposed all connections will get closed as well.
Subscribing
+
-
Binance
@@ -1088,6 +1094,7 @@ if (!subscribeResult.Success)
// Subscribing was successfull, the data will now be streamed into the data handler
+
The subscription result object
Subscriptions calls will return a CallResult<UpdateSubscription>
object. This object contains information about the status of the intial subscription, and the UpdateSubscription data object exposes events for status changes and methods for managing the subscription. The CallResult<UpdateSubscription>
object exposes the following properties:
@@ -1287,6 +1294,7 @@ options.ApiCredentials = new ApiCredentials("YOUR PUBLIC KEY", "YOUR PRIVATE KEY
Dependency injection
When adding a library to the service collection (see Dependency Injection) the options for the clients can be provided as argument to the calls. Options are split between the REST and the websocket client.
+
-
Binance
@@ -1420,9 +1428,11 @@ options.ApiCredentials = new ApiCredentials("YOUR PUBLIC KEY", "YOUR PRIVATE KEY
});
+
Client constructor
When creating a client via the constructor options can be provided as parameters
+
-
Binance
@@ -1526,9 +1536,11 @@ options.ApiCredentials = new ApiCredentials("YOUR PUBLIC KEY", "YOUR PRIVATE KEY
});
+
SetDefaultOptions
The options can be defined using the static SetDefaultOptions method on the client BEFORE creating the client. Any client created after this call will use the specified options
+
-
Binance
@@ -1643,6 +1655,7 @@ var client = new MexcRestClient();
var client = new OKXRestClient();
+
@@ -1817,7 +1830,7 @@ var client = new OKXRestClient();
Creation and starting
The order book implementations can be created directly, or can be instantiated via the I[Exchange]OrderBookFactory
factory. After creation the synchronization can be started by calling the StartAync
method
-
+
-
Binance
@@ -1982,6 +1995,7 @@ await book.StopAsync();
+
The order book object
@@ -2169,7 +2183,7 @@ This adds another limit of 10 requests per 2 seconds for the order endpoint in a
@@ -2204,11 +2218,12 @@ app.Run();