Какое максимальное количество знаков после запятой может содержать min_price_step?

Страницы: 1
RSS
Какое максимальное количество знаков после запятой может содержать min_price_step?
 
getSecurityInfo возрващает поле min_price_step с типом number.
Некоторые инструменты имеют min_price_step 0.05.
Число 0.05 не имеет точного представления в типе number (double).
Код
local info = getSecurityInfo("SPBFUT", "MMM6");
message(string.format("%.20f", info.min_price_step), 1);  -- см. 3 последние цифры
Отсюда возникают вопросы:
1. Планируется ли менять тип min_price_step с number на string.
2. Регламентировано ли (и где) максимальное число значащих цифр после запятой для min_price_step.
3. Те же вопросы для любой переменной типа number c вещественной частью, возвращаемой через QLua API (пока столкнулся только с min_price_step).


Почему это важно:
Например, проверка на кратность цены вида ↓ работать не будет
Код
price = "235.7"
min_price_step = 0.5
assert(math.fmod(tonumber(price), min_price_step) == 0, "некратная цена");
 
На второй вопрос уже нашёл ответ.
Код
local info = getSecurityInfo("SPBFUT", "MMM6");
message(info.scale, 1);
Два других вопроса остаются в силе.
 
Цитата
Вячеслав + написал:
1. Планируется ли менять тип min_price_step с number на string.
3. Те же вопросы для любой переменной типа number c вещественной частью, возвращаемой через QLua API (пока столкнулся только с min_price_step).
1. Нет, не планируется.
2. для любого другого значения точность определяется либо параметром scale на инструменте, либо точность равна 2 если речь идет о деньгах -  лимиты, обороты и т.п.
Страницы: 1
Читают тему
Наверх