Облигационный торговый робот — различия между версиями

Материал из ТХАБ.РФ
Перейти к: навигация, поиск
м (Код робота)
м (Код робота)
Строка 5: Строка 5:
 
  --Вывод сообщения с количеством сделок при каждом получении/изменении сделок
 
  --Вывод сообщения с количеством сделок при каждом получении/изменении сделок
 
  --<BODY
 
  --<BODY
   message("Скрипт запущен.")
+
   message("Скрипт запущен. Основной поток")
 
  --BODY>
 
  --BODY>
 +
 
  function OnInit(script) -- Инициализация  
 
  function OnInit(script) -- Инициализация  
   message("OnInit()", 2)
+
   message("Начало инициализации - запуск OnInit()", 2)
 
   is_run = true
 
   is_run = true
 
  end -- Конец инициализации запуск доп. потока
 
  end -- Конец инициализации запуск доп. потока
 +
 
  -- ФУНКЦИИ ОБРАБОТКИ СОБЫТИЙ - Основной поток!! (Функции обратного вызова)
 
  -- ФУНКЦИИ ОБРАБОТКИ СОБЫТИЙ - Основной поток!! (Функции обратного вызова)
 
  function OnTrade(trade) -- Обработка события ПРОДАЖА
 
  function OnTrade(trade) -- Обработка события ПРОДАЖА
Строка 26: Строка 28:
 
  return 2000 -- 2 секунды на остановку доп. потока
 
  return 2000 -- 2 секунды на остановку доп. потока
 
  end
 
  end
 +
 
  -- Дополнительный поток - НАЧАЛО
 
  -- Дополнительный поток - НАЧАЛО
 
  function main() -- НАЧАЛО основного потока  
 
  function main() -- НАЧАЛО основного потока  
     message("main()", 2)  
+
     message("Начало работы main() - Доп поток", 2)  
 
     while is_run do -- Основной цикл доп. потока
 
     while is_run do -- Основной цикл доп. потока
 
       sleep(100) -- имитация обработки
 
       sleep(100) -- имитация обработки
 
     end -- Конец цикла while
 
     end -- Конец цикла while
 
  end -- Дополнительный поток - КОНЕЦ
 
  end -- Дополнительный поток - КОНЕЦ
 
+
--<BODY
+
--<BODY
  message("Здесь тоже <BODY>", 2)
+
    message("Здесь тоже <BODY>", 2)
--BODY>
+
--BODY>
  
 
== См. также ==
 
== См. также ==

Версия 20:42, 31 марта 2020

Описание торгового робота

Код робота

--Вывод сообщения с количеством сделок при каждом получении/изменении сделок
--<BODY
  message("Скрипт запущен. Основной поток")
--BODY>
function OnInit(script) -- Инициализация 
  message("Начало инициализации - запуск OnInit()", 2)
  is_run = true
end -- Конец инициализации запуск доп. потока
-- ФУНКЦИИ ОБРАБОТКИ СОБЫТИЙ - Основной поток!! (Функции обратного вызова)
function OnTrade(trade) -- Обработка события ПРОДАЖА
  message(string.format("Обработка сделки №%i по инструменту %s [%s]",
 table_of_trades[1].trade_num,
 table_of_trades[1].sec_code,
 table_of_trades[1].class_code))
 number_of_trades = getNumberOf("trades")
message("Общее количество сделок: " .. number_of_trades)
end
function OnStop() -- Событие Остановка скрипта
  message("OnStop()", 2)
  is_run = false
return 2000 -- 2 секунды на остановку доп. потока
end
-- Дополнительный поток - НАЧАЛО
function main() -- НАЧАЛО основного потока 
   message("Начало работы main() - Доп поток", 2) 
   while is_run do -- Основной цикл доп. потока
      sleep(100) -- имитация обработки
   end -- Конец цикла while
end -- Дополнительный поток - КОНЕЦ

--<BODY
   message("Здесь тоже <BODY>", 2)
--BODY>

См. также

Ссылки