Блог им. DEVOTEE

Автоматизация QUIK - Сигнал начала нового таймфрейма

Тут уже проскочило пару постов на тему автоматизации. За что авторам спасибо.
У меня же вопрос и задача такая (к знатокам LUA).

Есть скрипт взят отсюда (https://quik2dde.ru/viewtopic.php?id=79)
-- подключить библиотеку w32
local w32 = require("w32")

-- функция проигрывания файла
-- вызов: PaySoundFile("имя файла")
function PaySoundFile(file_name)
  w32.mciSendString("CLOSE QUIK_MP3") 
  w32.mciSendString("OPEN \"" .. file_name .. "\" TYPE MpegVideo ALIAS QUIK_MP3")
  w32.mciSendString("PLAY QUIK_MP3")
end


Необходимо добавить в скрипт, чтобы звуковой файл проигрывался с заданным интервалом всю торговую сессию? (каждые 15,60,240минут)
Буду благодарен и не только я, если «добавите в рецепт свои пряности». Главное чтобы заработало.
Спасибо.
Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
515 | ★3
17 комментариев
s = getInfoParam («SERVERTIME») 
if tonumber(string.sub(s,4,5)) == 0 then
    PaySoundFile(file_name)
end

Будет запускаться каждый час. По аналогии напишите остальные.
avatar
Karim, Karim, Спасибо за ответ. Можно хотя бы минимальную инструкцию? для аналогии:).
avatar
Karim, S — присваиваем время сервера. ДА?
Paysound — играем файл. В пути используем двойной слэш (C:\\QUIK OSL\\Звуки\\Bell.mp3 — так?)
А вот tonumber :). Помощь плиз

avatar
Виталий, Ну почитайте хотя бы мануал по QLua, или погуглите. Там все есть. tonumber() — преобразовать строку в число
avatar
Нового бара, а не таймфрейма)
avatar
Чёрный кот, какая разница? Главное быть понятым, о чём речь.
Бар -это бар.
Таймфрейм-это временной интревал.
avatar
Ответьте на тупой вопрос: а как эта функция определит, что час уже прошел и надо вызываться?
Сергей Гаврилов, У начала каждого часа минуты равны 0.
avatar
Karim, вопрос не в этом… Функцию нужно вызвать… Что-то я таймера или какого другого периодического события в коде не наблюдаю..
Сергей Гаврилов, Ну я уж не стал весь код приводить. Вопрос был, что добавить в скрипт, а не как его написать.

function main()
 IsRun = true
 while IsRun do
  s = getInfoParam («SERVERTIME») 
  if tonumber(string.sub(s,4,5)) == 0 then
     PaySoundFile(file_name)
  end
  sleep(1000)
 end
end

avatar
Karim, Домучал таки и заработало, только при sleep 1000 он выдаёт сигнал всю первую минуту. Поставил 60000. Может есть другой способ сделать срабатывание один раз? — это первый вопрос.
А второй- как сделать сигнал на каждые 15 минут, я точно не знаю :(.
Я не програмист вообще! Для меня эти цифры как иероглифы, в которых я пытаюсь разобраться...
Спасибо зараннее, если поможешь.
avatar
function main()
 IsRun = true
 begin = true
 while IsRun do
  s = getInfoParam («SERVERTIME») 
  if tonumber(string.sub(s,4,5)) == 0 and begin then
     PaySoundFile(file_name)
     begin = false
  end
  if tonumber(string.sub(s,4,5)) == 1 then     
     begin = true
  end
  sleep(1000)
 end
end

Как то так. Проверять нет времени. 
Если не программист, то есть два варианта. Либо стать им и написать самому, либо нанять.
avatar
Karim, Спасибо за код, я его и так, я его и сяк, но не работает совсем через 15 минут :(.
avatar
Попробуй так:

  if tonumber(string.sub(s,4,5))%15 == 0 and begin then
     PaySoundFile(file_name)
     begin = false
  end
avatar

Читайте на SMART-LAB:
🔔 Завтра — результаты Займера за I квартал
Напоминаем, что вебинар по финансовым результатам Займера за I квартал 2026 года состоится уже завтра в 11:00 МСК. Генеральный директор компании...
Сеть «ОКОЛО» достигла 6 000 магазинов
📌 Юбилейная торговая точка открылась во Всеволожском районе Ленинградской области, где уже работают 312 магазинов сети. Франчайзи выбирают «ОКОЛО»...
Фото
Портфель активного трейдера. Первые изменения
Мы продолжаем вести модельный портфель для активного трейдера. В регулярном материале отражены текущие изменения в портфеле с...
Фото
Хэдхантер. Отчет МСФО за Q1 2026г. Всё будет непросто…но…есть надежда.
Вышли финансовые результаты по МСФО за Q1 2026г. от компании Хэдхантер: 👉Выручка — 9,49 млрд руб. (-1,5% г/г) 👉Операционные расходы —...

теги блога Виталий

....все тэги



UPDONW
Новый дизайн