Если в "Настройках клиентского места-Программа-Получение данных-Котировки" выбрать
"Умным заказом данных", то при первом в сессии Quik'а запуске Lua скрипта
параметр BGONP из таблицы текущих торгов недоступен для актива, не включённого ни в какую таблицу текущих торгов. Вместо текущего значения выдаётся 0 (НОЛЬ). Хотя, например, OPTIONTYPE, STEPPRICE, SEC_PRICE_STEP, THEORPRICE определяются исправно.
Правильное значение BGONP определяется только повторным запуском скрипта. Возможно, потому что этот параметр менее постоянный, чем некоторые другие?
Ухищрения с getParamEx2 и ParamRequest не помогают.
Как бы исхитриться в скрипте получать BGONP c первого запуска?
И не наткнуться на такую же засаду в другом параметре?
"Умным заказом данных", то при первом в сессии Quik'а запуске Lua скрипта
| Код |
|---|
function main()
local stp = getParamEx ("SPBOPT", "Si81000BV5", "STEPPRICE").param_value
local bgo = getParamEx ("SPBOPT", "Si81000BV5", "BGONP").param_value
local thr = getParamEx ("SPBOPT", "Si81000BV5", "THEORPRICE").param_value
message ("BGONP ".. tostring(bgo) .." ".. type(bgo)
.."\nTHEORPRICE ".. tostring(thr) .." ".. type(thr)
.."\nSTEPPRICE ".. tostring(stp) .." ".. type(stp))
end -- main() |
Правильное значение BGONP определяется только повторным запуском скрипта. Возможно, потому что этот параметр менее постоянный, чем некоторые другие?
Ухищрения с getParamEx2 и ParamRequest не помогают.
Как бы исхитриться в скрипте получать BGONP c первого запуска?
И не наткнуться на такую же засаду в другом параметре?