Текст скрипта -
-- =======================================================-- Скрипт для КВИК: Получение цены BRF6 и запись в лог-файл
-- =======================================================
local log_file_path = "C:\\Opt_Master_WORK\\lua_log.txt"
local class_code = "SPBFUT"
local sec_code = "BRF6" -- КОД ИНСТРУМЕНТА
local param_name = "LAST" -- Параметр: Цена последней сделки
-- Используем функцию QUIK API для получения данных
local success, value, datetime = getParamEx(class_code, sec_code, param_name)
local log_message = ""
if success then
--
log_message = " Цена " .. sec_code .. " = " .. tostring(value)
else
-- Ошибка
log_message = "ОШИБКА: Не удалось получить параметр " .. param_name .. " для " .. sec_code .. ". Проверьте коды класса/инструмента и активность торгов."
end
-- Запись сообщения в файл лога
local file = io.open(log_file_path, "a")
if file then
file:write(os.date("[%Y-%m-%d %H:%M:%S] ") .. log_message .. "\n")
io.close(file)
print("Лог записан в файл: " .. log_file_path) -- В системный лог QUIK
else
local error_popup = "КРИТИЧЕСКАЯ ОШИБКА: Невозможно открыть/записать файл лога по пути: " .. log_file_path
message(error_popup, true) -- Всплывающее окно в QUIK
print(error_popup)
end
Результат работы - [2025-12-10 21:51:24] Цена BRF6 = nil
То есть на экране есть таблица текущие параметры в которой данный инструмент содержится. Инструмент торгуемый активно и значит данные должны быть подгружены с сервера, но добиться получения цены
последней сделки хоть убей ! Всегда nil
-- =======================================================-- Скрипт для КВИК: Получение цены BRF6 и запись в лог-файл
-- =======================================================
local log_file_path = "C:\\Opt_Master_WORK\\lua_log.txt"
local class_code = "SPBFUT"
local sec_code = "BRF6" -- КОД ИНСТРУМЕНТА
local param_name = "LAST" -- Параметр: Цена последней сделки
-- Используем функцию QUIK API для получения данных
local success, value, datetime = getParamEx(class_code, sec_code, param_name)
local log_message = ""
if success then
--
log_message = " Цена " .. sec_code .. " = " .. tostring(value)
else
-- Ошибка
log_message = "ОШИБКА: Не удалось получить параметр " .. param_name .. " для " .. sec_code .. ". Проверьте коды класса/инструмента и активность торгов."
end
-- Запись сообщения в файл лога
local file = io.open(log_file_path, "a")
if file then
file:write(os.date("[%Y-%m-%d %H:%M:%S] ") .. log_message .. "\n")
io.close(file)
print("Лог записан в файл: " .. log_file_path) -- В системный лог QUIK
else
local error_popup = "КРИТИЧЕСКАЯ ОШИБКА: Невозможно открыть/записать файл лога по пути: " .. log_file_path
message(error_popup, true) -- Всплывающее окно в QUIK
print(error_popup)
end
Результат работы - [2025-12-10 21:51:24] Цена BRF6 = nil
То есть на экране есть таблица текущие параметры в которой данный инструмент содержится. Инструмент торгуемый активно и значит данные должны быть подгружены с сервера, но добиться получения цены
последней сделки хоть убей ! Всегда nil