1
0
mirror of https://github.com/JKorf/CryptoExchange.Net.git synced 2026-08-15 10:22:57 +00:00

Added FTX to console example

This commit is contained in:
Jan Korf
2022-01-20 21:08:51 +01:00
parent 3e23882572
commit 325389cdf8
4 changed files with 104 additions and 2 deletions
+22 -2
View File
@@ -8,6 +8,8 @@ using Binance.Net.Objects;
using ConsoleClient.Exchanges;
using CryptoExchange.Net.Authentication;
using CryptoExchange.Net.Sockets;
using FTX.Net.Clients;
using FTX.Net.Objects;
using Microsoft.Extensions.Logging;
namespace ConsoleClient
@@ -16,7 +18,8 @@ namespace ConsoleClient
{
static Dictionary<string, IExchange> _exchanges = new Dictionary<string, IExchange>
{
{ "Binance", new BinanceExchange() }
{ "Binance", new BinanceExchange() },
{ "FTX", new FTXExchange() }
};
static async Task Main(string[] args)
@@ -26,10 +29,15 @@ namespace ConsoleClient
LogLevel = LogLevel.Trace,
ApiCredentials = new ApiCredentials("APIKEY", "APISECRET")
});
FTXClient.SetDefaultOptions(new FTXClientOptions
{
LogLevel = LogLevel.Trace,
ApiCredentials = new ApiCredentials("APIKEY", "APISECRET")
});
while (true)
{
Console.WriteLine("> Available commands: PlaceOrder, GetOpenOrders, CancelOrder, GetPrice, SubscribePrice");
Console.WriteLine("> Available commands: PlaceOrder, GetBalances, GetOpenOrders, CancelOrder, GetPrice, SubscribePrice");
var input = Console.ReadLine();
switch (input)
@@ -37,6 +45,9 @@ namespace ConsoleClient
case "PlaceOrder":
await ProcessPlaceOrder();
break;
case "GetBalances":
await ProcessGetBalances();
break;
case "GetOpenOrders":
await ProcessGetOpenOrders();
break;
@@ -75,6 +86,15 @@ namespace ConsoleClient
Console.WriteLine("Failed to place order: " + result.Error);
}
static async Task ProcessGetBalances()
{
var exchange = GetInput("Exchange?");
Console.WriteLine("Requesting balances...");
var balances = await _exchanges[exchange].GetBalances();
foreach (var balance in balances.Where(b => b.Value != 0))
Console.WriteLine($"> {balance.Key}: {balance.Value}");
}
static async Task ProcessGetOpenOrders()
{
var exchange = GetInput("Exchange?");