Type/to search
3
Follow
1510
Followers
通过获取深度解决下单精度问题
FAQ
Created 2020-03-20 09:10:52  Updated 2020-03-20 09:11:16
 2
 1836

由于各个交易所的不统一,FMZ并没有统一的下单精度返回函数。如果策略只做一个币种还好,如果要兼容多个交易对又兼容多个交易所,这里推荐使用获取深度,根据深度信息自动推算出下单精度。当然,如果要交易多个币种,还是推荐用HttpQuery访问原始API接口。
函数如下:

function GetPrecision(){ var precision = {price:0, amount:0} var depth = exchange.GetDepth() for(var i=0;i<exchange.GetDepth().Asks.length;i++){ var amountPrecision = exchange.GetDepth().Asks[i].Amount.toString().indexOf('.') > -1 ? exchange.GetDepth().Asks[i].Amount.toString().split('.')[1].length : 0 precision.amount = Math.max(precision.amount,amountPrecision) var pricePrecision = exchange.GetDepth().Asks[i].Price.toString().indexOf('.') > -1 ? exchange.GetDepth().Asks[i].Price.toString().split('.')[1].length : 0 precision.price = Math.max(precision.price,pricePrecision) } return precision }
Related Recommendations
Comment
All comments (2)

    这个放在init里边跑一次还是不错的

    5 years ago

    时间复杂度噌噌噌往上跑

    6 years ago
  • 1
Forums
PINE Language
Get the app
iPhone Download
© 2015 - ∞ INVENTOR PTE LTD (SG)