거래의 기본 화폐에 대한 계산 정확도 (소수점 뒤에 있는 숫자) 값의 종류를 반환합니다
거래에 대한 가격의 정확성 (소수점 뒤에 있는 숫자) 값의 종류를 반환합니다
최소 주문량에 거래 값의 타입을 반환합니다
최대 주문량 거래 값의 종류를 반환합니다
거래에 대한 거래 금액의 정확도 (작은 소수점 뒤에 있는 숫자) 값의 종류를 반환합니다
최소 주문 금액 (오र्डर 유형이 제한 가격 주문인 경우, 주문 인터페이스가 전송하는 금액 * 가격); 주문 유형이 구매-시장인 경우, 주문 인터페이스가 전송하는??amount
) 값의 종류를 반환합니다
var _symbols = _C(getSymbols) var _cacheTicker = {} function parseJson(str) { try { return JSON.parse(str) } catch(e) { Log(str + e.message + '#FF0000') return null } } function getSymbols() { var ret = parseJson(HttpQuery('https://api.huobi.pro/v1/common/symbols')) if (ret && ret.status === 'ok') { return ret.data } else { return null } } function getTicker(ex) { var currency = getCurreny(ex) if (_cacheTicker[currency] && Unix() - _cacheTicker[currency].UpdatedAt < TICKER_EXPIRE_TIME) { return _cacheTicker[currency] } var sym = currency.replace('_', '').toLocaleLowerCase() var ret = parseJson(HttpQuery('https://api.huobi.pro/market/detail/merged?symbol=' + sym)) if (ret && ret.status === 'ok') { _cacheTicker[currency] = _.extend({ UpdatedAt: Unix() }, ret.tick) return ret.data } else { return null } } function getCurreny(ex) { var currency = null if (typeof(ex) === 'object') { return ex.GetCurrency() } else { return ex } } function getCoin(ex) { var currency = getCurreny(ex) var currencyAry = _.map(currency.split('_'), function(sym) { return sym.toLocaleLowerCase() }) return _.find(_symbols, function(coin) { return currencyAry[0] === coin['base-currency'] && currencyAry[1] === coin['quote-currency'] }) } $.getSymbols = getSymbols $.getAmountPrecision = function (ex) { var coin = getCoin(ex) if (coin) { return coin['amount-precision'] } return 0 } $.getPricePrecision = function(ex) { var coin = getCoin(ex) if (coin) { return coin['price-precision'] } return 0 } $.getMinOrderAmount = function(ex, price) { var coin = getCoin(ex) if (coin) { price = price || _C(getTicker, ex).close return +(new Decimal(coin['min-order-value']).mul(1.1).div(price).toFixed($.getAmountPrecision(ex), Decimal.ROUND_CEIL)) } return 0 } $.getMaxOrderAmount = function(ex) { var coin = getCoin(ex) if (coin) { return coin['max-order-amt'] } return 0 } $.getValuePrecision = function(ex) { var coin = getCoin(ex) if (coin) { return coin['value-precision'] } return 0 } $.getMinValue = function(ex) { var coin = getCoin(ex) if (coin) { return coin['min-order-value'] } return 0 }