首页 > 解决方案 > Binance.Net 下单全部数量

问题描述

我想以 100% 的数量下订单,但我似乎没有在Binance.Net中找到内置功能,所以我决定自己制作。

var balance = _client.GetAccountInfo().Data.Balances.FirstOrDefault(e => e.Asset == "TRX").Free;
var orderId = _client.PlaceOrder("TRXUSDT", OrderSide.Sell, OrderType.Limit, quantity: balance, price: 0.01460m, timeInForce: TimeInForce.GoodTillCancel);

以下代码将我的 TRX 数量的 100% 出售给 USDT。

问题是我只有加密货币对保存到我的数据库(TRXUSDT)中,而我没有单独的 TRX 和 USDT。当然,我可以使用子字符串,但有超过 3 个符号的符号,例如 MATICUSDT。

是的,我可以使用 StartsWith:

var asdf = client.GetAccountInfo().Data.Balances.Where(e => e.Asset.StartsWith("TRXUSDT".Substring(0, 3)));

这得到了第一对(TRX),但第二对(USDT)呢?我想不出任何解决办法。

标签: c#binance

解决方案


我会使用https://www.binance.com/api/v3/exchangeInfo

这将返回一个包含所有符号的对象,并且对于每个符号,它将为您提供详细信息,例如 BaseAsset(第一对)和 QuoteAsset(第二对):

通过 exchangeinfo 对象的 Symbol 列表使用 for each 可以提取每个 Symbol 的详细信息,例如每对的信息


推荐阅读