En raison de l’inhomogénéité des échanges, FMZ n’a pas de fonction de retour de précision de commande uniforme. Si la stratégie est de ne faire qu’une seule monnaie, il est préférable d’utiliser la profondeur d’acquisition, qui permet de calculer automatiquement la précision de commande en fonction de l’information de profondeur. La fonction est la suivante:
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
}