首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Binance API响应显示错误的最小订购量

Binance API响应显示错误的最小订购量
EN

Stack Overflow用户
提问于 2022-09-01 07:05:42
回答 1查看 109关注 0票数 1

尝试命中fapi.binance.com/fapi/v1/exchangeInfo端点,以获得一对的当前最小订购量(让我们以ETHUSDT为例)。

以下是Binance显示的minQty:ETH的最低订购量为0.004 ETH。

当到达上述端点并检查ETHUSDT符号特定响应时:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{
  "symbol": "ETHUSDT",
  "pair": "ETHUSDT",
  "contractType": "PERPETUAL",
  "deliveryDate": 4133404800000,
  "onboardDate": 1569398400000,
  "status": "TRADING",
  "maintMarginPercent": "2.5000",
  "requiredMarginPercent": "5.0000",
  "baseAsset": "ETH",
  "quoteAsset": "USDT",
  "marginAsset": "USDT",
  "pricePrecision": 2,
  "quantityPrecision": 3,
  "baseAssetPrecision": 8,
  "quotePrecision": 8,
  "underlyingType": "COIN",
  "underlyingSubType": [
    "Layer-1"
  ],
  "settlePlan": 0,
  "triggerProtect": "0.0500",
  "liquidationFee": "0.015000",
  "marketTakeBound": "0.05",
  "filters": [
    {
      "minPrice": "39.86",
      "maxPrice": "306177",
      "filterType": "PRICE_FILTER",
      "tickSize": "0.01"
    },
    {
      "stepSize": "0.001",
      "filterType": "LOT_SIZE",
      "maxQty": "10000",
      "minQty": "0.001"
    },
    {
      "stepSize": "0.001",
      "filterType": "MARKET_LOT_SIZE",
      "maxQty": "2000",
      "minQty": "0.001"
    },
    {
      "limit": 200,
      "filterType": "MAX_NUM_ORDERS"
    },
    {
      "limit": 10,
      "filterType": "MAX_NUM_ALGO_ORDERS"
    },
    {
      "notional": "5",
      "filterType": "MIN_NOTIONAL"
    },
    {
      "multiplierDown": "0.9500",
      "multiplierUp": "1.0500",
      "multiplierDecimal": "4",
      "filterType": "PERCENT_PRICE"
    }
  ],
  "orderTypes": [
    "LIMIT",
    "MARKET",
    "STOP",
    "STOP_MARKET",
    "TAKE_PROFIT",
    "TAKE_PROFIT_MARKET",
    "TRAILING_STOP_MARKET"
  ],
  "timeInForce": [
    "GTC",
    "IOC",
    "FOK",
    "GTX"
  ]
}

我们可以看到,这里没有数据表明minQty是正确的,尽管filters数组中的一些文档(如LOT_SIZEMARKET_LOT_SIZE)正在尝试。

我是遗漏了什么,还是这是Binance API的bug?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-09-01 18:13:34

花了一段时间才弄明白,但我相信我已经找到了解决办法/解释。

如前所述,我们感兴趣的是在filters端点的响应中找到的fapi.binance.com/fapi/v1/exchangeInfo数组,特别是MARKET_LOT_SIZE (如果您对市场订单不感兴趣)和MIN_NOTIONAL过滤器。当我写这个问题的时候,我认为其中一个必须是事实的来源,但这两个问题中没有一个能始终与Binance UI上的最低订购量相匹配。

原来它不是其中的一个,而是两个combined...sort的。

对于缺乏经验的交易者来说--一个快速的定义。Base asset -你正在购买的资产。Quote asset -您正在获取的基本资产的资产。在我的例子中(ETHUSDT),ETH是基本资产,USDT是报价资产。

MIN_NOTIONAL过滤器告诉您获取基本资产所需的报价资产的最小金额。在投寄时ETHUSDT的情况下,此过滤器等于5 USDT。

MARKET_LOT_SIZE过滤器告诉您可以购买的基本资产的最小金额。如果在投寄时使用ETHUSDT,则此过滤器等于0.001。

取决于ETH的价格,0.001 ETH的成本可能低于5 USDT,这将无法满足MIN_NOTIONAL滤波器的要求。同样,如果由于价格原因,5 USDT购买的小于0.001 ETH,一个名义价值为5 USDT的订单将无法满足MARKET_LOT_SIZE过滤器的要求。

因此,要计算最小订购量,我们需要取两者的最大值,但有一个警告。我们首先需要将5 USDT的MIN_NOTIONAL滤波器值转换为ETH。我们可以通过将这个值除以ETH的当前价格来实现。请注意,如果除法的结果有更多的小数点,那么在Binance上资产的数量精度就会更高,我们需要把这个小数集合起来。

最后,Python中的计算示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
max(
  MIN_MARKET_LOT_SIZE, 
  round_up((MIN_NOTIONAL / CURRENT_ETH_PRICE), ETH_QUANTITY_PRECISION)
) 

小数舍入函数的一个例子可以找到这里

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73571626

复制
相关文章
在eclipse中没有server(需在选项中设置)
①在软件eclipse下的Help->InstallNew Software->中,在Work with中点击Add,如下,加入
全栈程序员站长
2022/07/25
4K0
在eclipse中没有server(需在选项中设置)
eclipse里没有server选项怎么办(eclipse中没有server选项)
用eclipese写网页很多时候需要配置tomcat,但有些朋友跟着网上的教程配置发现eclipse->【Window】->【Preferences】里没有【server】从而配置不了Runtime Environment。所以需要通过eclipse进行安装。 下面给出解决办法 首先,获取你的eclipse的版本类型,点击【help】->【about eclipse IDE】
全栈程序员站长
2022/08/01
1.3K0
eclipse里没有server选项怎么办(eclipse中没有server选项)
eclipse设置中没有server选项[通俗易懂]
用eclipse准备配置tomcat,发现配置中没有server选项,参考各种解决方法之后成功解决。
全栈程序员站长
2022/08/01
6.5K1
eclipse设置中没有server选项[通俗易懂]
解决Eclipse中Preferences下没有Maven选项
朋友学习Maven时,告诉我他的Preferences下面没有Maven选项,如下图。
全栈程序员站长
2022/07/01
1.6K0
解决Eclipse中Preferences下没有Maven选项
电脑关机选项中没有休眠模式,怎么添加
https://jingyan.baidu.com/article/2f9b480d97c08000ca6cc20c.html
东风压倒西风
2022/09/26
1.2K0
【错误记录】IntelliJ IDEA 中右键点击源码目录选择 New 选项 没有创建 Java Class 选项 ( 将对应的源码目录标记为 Sources 选项 )
右键点击源码根目录 , 在弹出的菜单中选择 " Open Module Settings " 选项 ,
韩曙亮
2023/03/30
2.3K0
【错误记录】IntelliJ IDEA 中右键点击源码目录选择 New 选项 没有创建 Java Class 选项 ( 将对应的源码目录标记为 Sources 选项 )
Qt状态更改事件
可以捕获的状态有: QEvent::ToolBarChange (在macOS上工具栏按钮被切换) QEvent::ActivationChange (顶级窗口激活状态已更改) QEvent::EnabledChange (窗口的启用状态已更改) QEvent::FontChange (窗口的字体已更改) QEvent::StyleChange (窗口的样式已更改) QEvent::PaletteChange (窗口的调色板已更改) QEvent::WindowTitleChange (窗口的标题已更改) QEvent::IconTextChange (窗口的图标文本已更改(不赞成使用)) QEvent::ModifiedChange (窗口的修改状态已更改) QEvent::MouseTrackingChange (鼠标跟踪状态已更改) QEvent::ParentChange (窗口的父类已更改) QEvent::WindowStateChange (窗口的状态"最小化、最大化或全屏"已更改) QEvent::LanguageChange (应用程序翻译已更改) QEvent::LocaleChange (系统区域设置已更改) QEvent::LayoutDirectionChange (默认应用程序布局方向已更改) QEvent::ReadOnlyChange (窗口的只读模式已更改)
Qt君
2023/03/17
1.1K0
Qt状态更改事件
eclipse没有server选项怎么解决
eclipse是一个开放源代码的、基于java的可扩展开发平台。它使用频率十分高,然而当使用它部署项目时候,经常会发现一个重要的问题就是打开eclipse之后没有了server选项,那么该怎么解决这个问题呢?
全栈程序员站长
2022/07/23
2.6K0
eclipse没有server选项怎么解决
[pr]变速中的“时间插值”选择
【剪辑中那些关于变速的技巧!】https://zhuanlan.zhihu.com/p/40174821 【视频变速的时间插值方式核心原理,你懂吗?】https://zhuanlan.zhihu.com/p/67327108 【更改剪辑的持续时间和速度】https://helpx.adobe.com/cn/premiere-pro/using/duration-speed.html#main-pars_heading_11
杨肆月
2020/09/10
4K0
idea配置Tomcat时没有Artifacts选项
Artifacts是maven中的一个概念,表示某个module要如何打包,例如war exploded、war、jar、ear等等这种打包形式;
全栈程序员站长
2022/11/02
1.5K0
idea配置Tomcat时没有Artifacts选项
在nodejs中事件循环分析
在上一篇文章在chromev8中的JavaScript事件循环分析中分析到,在chrome中的js引擎是通过执行栈和事件队列的形式来完成js的异步操作。然而在node中,事件循环表现出的状态与浏览器中大致相同。不同的是node中有一套自己的模型。node中事件循环的实现是依靠的libuv引擎。我们知道node选择chrome v8引擎作为js解释器,v8引擎将js代码分析后去调用对应的node api,而这些api最后则由libuv引擎驱动,执行对应的任务,并把不同的事件放在不同的队列中等待主线程执行。 因此实际上node中的事件循环存在于libuv引擎中。
Yerik
2022/04/11
4K0
(五)在 React 中绑定事件
# 🥥一、在 React 中绑定事件 接着上一章的案例,给他绑定事件,动态的切换 boolea # 🥮二、预热原生事件绑定 # 原生事件绑定的几种方式 <button id="btn1">按钮一</button> <button id="btn2">按钮二</button> <button onclick="demo()">按钮三</button> <script> // 方法一 兼容性最好 const btn1 = document.getElmentById('btn1') btn1.addEvent
老怪兽
2023/02/22
2.6K0
ComboBoxEdit设置选项值(单选 多选)
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/120492.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/15
2.1K0
Android – 在Gradle中更改APK文件名
默认情况下,Android Studio中的Gradle构建命名为.apk文件app-release.apk。对应用程序build.gradle文件进行了一些小的更改,可以将.apk名称更改为<app name>-release-<version>.apk。 需要在app的目录下面修改build.gradle文件。 第一步是将project.archivesBaseName设置为您的应用程序名称。 android { compileSdkVersion 25 buildToolsVersio
code_horse
2018/07/02
2.9K0
解决H5页面在微信浏览器中打开 input file 在安卓上没有拍照选项
有时候我们会在微信公众号里开发会遇到上传图片的功能,当你写<input type=”file”> 的时候,在IOS上可以成功调起拍照和图库两块,在安卓手机上只能调取图库而没有拍照功能,解决办法:给input 加上accept属性
全栈程序员站长
2022/09/09
5K0
在没有外链情况下,如何提高PR值?
外链是提高PR值的有利方式,但现在外链建设愈发困难,各家都对自己的网站进行链接屏蔽,即使你的外链建设成功,在代码状态下依然是Nofollow状态,所以seoer对外链格外关注。
蝙蝠侠IT
2021/03/22
5410
在没有外链情况下,如何提高PR值?
即使在移动AI时代,软件仍将主导业界
人们已经达成了某种共识:那些在边缘设备(edge device)与物联网设备(IoT device)上实现了真正的智能的公司将定义计算的未来。为了实现这一目标,无论是谷歌,微软,亚马逊,苹果和 Facebook 等大型技术公司,还是初创公司,每年在研发上的投入都高达数百亿美元。工业界主要致力于开发用于机器学习和推理的专用硬件加速器,这么做的原因是他们认为硬件因素是实现真正的移动智能的主要限制因素。为此,工业界已经花费了数十亿美元来推动这种智能硬件竞赛。
机器之心
2020/05/19
4590
即使在移动AI时代,软件仍将主导业界
Java中只有按值传递,没有按引用传递!
今天,我在一本面试书上看到了关于java的一个参数传递的问题: 写道 java中对象作为参数传递给一个方法,到底是值传递,还是引用传递? 我毫无疑问的回答:“引用传递!”,并且还觉得自己对java的这一特性很是熟悉! 结果发现,我错了! 答案是: 值传递!Java中只有按值传递,没有按引用传递! 回家后我就迫不及待地查询了这个问题,觉得自己对java这么基础的问题都搞错实在太丢人! 综合网上的描述,我大概了解了是怎么回事,现在整理如下,如有不对之处望大神提出! 先来看一个作为程序员都熟悉的值传递的例子:
java达人
2018/01/31
1.1K0
Java中只有按值传递,没有按引用传递!
win10网络设置中没有wlan选项怎么办
小伙伴你们知道怎么解决win10网络设置没有wlan选项的方法吗?要是不知道的话,嘻嘻~那么你们问小编我就对了,因为小编前些这好学习了这各方面的内容,现在就来告诉你们解决win10网络设置中没有wlan选项的方法哈。
牛肉面
2021/04/06
7.1K0
react事件传值
React 父子组件传值 写法一:bind绑定this class XiaojiejieItem extends Component { render() { return ( <li onClick={this.delItem.bind(this)}>{this.props.list}</li> ); } delItem() { console.log(this.props.index) } } 写法二
hss
2022/02/25
4320

相似问题

即使没有更改,也要选择所选选项

54

即使选择没有更改,也会引发更改事件

11

在dijit.form.select中,它没有选择合适的

11

JQuery -在更改事件上没有附加选择选项

12

使用on change事件选择值不会更改选项

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文