币安量化交易
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

140 lines
8.0 KiB

using Binance.Net.Clients;
using Binance.Net.Objects;
using Binance.TradeRobot.Model.Base;
using CryptoExchange.Net.Authentication;
using Newtonsoft.Json;
using SDKAdapter.APIClient;
using System;
using Binance.TradeRobot.Common.Extensions;
using SDKAdapter.WebSockets.Order.SpotOrder;
using NLog;
namespace SDKTestConsole
{
internal class Program
{
static void Main(string[] args)
{
var apiKey = "NnLXgcdUAZ8FAye4Qge3zrrdg5o7ufoWbgtYsKzgfIXz0OMz27G1Kx4SykMzw7YS";
var secret = "lpJ3t50osPx6lEUerVFMdoKsZ6uHPc769OFPGtfhcoPANpv97CEcvR3pz3Bezhhv";
var client = BaseAPIClient.Create(Enums.Exchange.Binance, 0, apiKey, secret);
//逐仓杠杆账户资产
//var marginList = client.GetIsolatedMarginAccountAssets();
//var s = JsonConvert.SerializeObject(marginList);
//查询最大借币额度
//var maxLoan = client.QueryMaxLoanAmount("ETHUSDT");
//Console.WriteLine(maxLoan);
//借币
//var r1 = client.IsolatedMarginLoan("ETHUSDT", 10M);
//var r2 = client.IsolatedMarginLoan("ETHUSDT", 10M);
//Console.WriteLine(r2.AccountLoanAmount);
//还币
//var r3 = client.IsolatedMarginRepay("ETHUSDT", 20M);
//Console.WriteLine(r3);
var spotClientOption = new BinanceApiClientOptions()
{
BaseAddress = "https://api.binance.com",
ApiCredentials = new ApiCredentials(apiKey, secret)
};
var usdFuturesClientOption = new BinanceApiClientOptions()
{
BaseAddress = "https://fapi.binance.com",
ApiCredentials = new ApiCredentials(apiKey, secret)
};
var binanceClient = new BinanceClient(new BinanceClientOptions()
{
UsdFuturesApiOptions = usdFuturesClientOption,
SpotApiOptions = spotClientOption
});
var binanceSocketClient = new BinanceSocketClient();
//市价买币
//var r = client.IsolatedMarginPlaceOrder("ETHUSDT",
// Enums.TradeDirection.Buy,
// Enums.OrderType.MARKET,
// quoteAmount: 20M);
//var r = binanceClient.SpotApi.Trading.PlaceMarginOrderAsync("ETHUSDT",
// Binance.Net.Enums.OrderSide.Buy,
// Binance.Net.Enums.SpotOrderType.Market,
// quoteQuantity: 30M, //报价币金额
// //quantity: 100M,
// //timeInForce: Binance.Net.Enums.TimeInForce.GoodTillCanceled,
// //stopPrice: 1899M,
// isIsolated: true,
// orderResponseType: Binance.Net.Enums.OrderResponseType.Full).Result;
//
//市价卖币
//var qty = 0.00985570M.CutDecimal(4);
//var r = client.IsolatedMarginPlaceOrder("ETHUSDT",
// Enums.TradeDirection.Sell,
// Enums.OrderType.MARKET,
// quantity: qty);
//var r = binanceClient.SpotApi.Trading.PlaceMarginOrderAsync("ETHUSDT",
// Binance.Net.Enums.OrderSide.Sell,
// Binance.Net.Enums.SpotOrderType.Market,
// quantity: 0.0098M,
// //quoteQuantity: 20M, //报价币金额
// //quantity: 100M,
// //timeInForce: Binance.Net.Enums.TimeInForce.GoodTillCanceled,
// //stopPrice: 1899M,
// isIsolated: true,
// orderResponseType: Binance.Net.Enums.OrderResponseType.Full).Result;
//止损卖币
//var qty = 0.01224350M.CutDecimal(4);
//var r = client.IsolatedMarginPlaceOrder("ETHUSDT",
// Enums.TradeDirection.Sell,
// Enums.OrderType.STOP_LOSS_LIMIT,
// quantity: qty,
// price: 2033M,
// stopPrice: 2035M);
//var r = binanceClient.SpotApi.Trading.PlaceMarginOrderAsync("ETHUSDT",
// Binance.Net.Enums.OrderSide.Sell,
// Binance.Net.Enums.SpotOrderType.StopLossLimit,
// quantity: 0.0149M,
// price: 1699M,
// //quoteQuantity: 20M, //报价币金额
// //quantity: 100M,
// timeInForce: Binance.Net.Enums.TimeInForce.GoodTillCanceled,
// stopPrice: 1699M,
// isIsolated: true,
// orderResponseType: Binance.Net.Enums.OrderResponseType.Full).Result;
//
//var s = JsonConvert.SerializeObject(r);
//Console.WriteLine(s);
//
//var r1 = binanceClient.SpotApi.Trading.PlaceMarginOrderAsync("ETHUSDT",
// Binance.Net.Enums.OrderSide.Sell,
// Binance.Net.Enums.SpotOrderType.StopLossLimit,
// quantity: 0.0149M,
// price: 1699M,
// //quoteQuantity: 20M, //报价币金额
// //quantity: 100M,
// timeInForce: Binance.Net.Enums.TimeInForce.GoodTillCanceled,
// stopPrice: 1699M,
// isIsolated: true,
// orderResponseType: Binance.Net.Enums.OrderResponseType.Full).Result;
//var s1 = JsonConvert.SerializeObject(r1);
//var s = JsonConvert.SerializeObject(r);
//Console.WriteLine(s);
//var orderClient = new BinanceSpotOrderWebSocketClient(Enums.BusinessType.IsolateMargin, 0, apiKey, secret, LogManager.GetCurrentClassLogger());
//orderClient.Start("ETHUSDT");
Console.ReadKey();
}
}
}