Облигационный торговый робот — различия между версиями
Материал из ТХАБ.РФ
СмартЛаб (обсуждение | вклад) (→Код робота) |
Админ (обсуждение | вклад) м |
||
(не показаны 3 промежуточные версии 1 участника) | |||
Строка 5: | Строка 5: | ||
--Вывод сообщения с количеством сделок при каждом получении/изменении сделок | --Вывод сообщения с количеством сделок при каждом получении/изменении сделок | ||
--<BODY | --<BODY | ||
− | message("Скрипт запущен.") | + | message("Скрипт запущен. Основной поток") |
--BODY> | --BODY> | ||
− | function OnInit(script) | + | function OnInit(script) -- Инициализация |
− | + | message("Начало инициализации - запуск OnInit()", 2) | |
− | + | is_run = true | |
− | end | + | end -- Конец инициализации запуск доп. потока |
− | function OnTrade(trade) | + | |
+ | -- ФУНКЦИИ ОБРАБОТКИ СОБЫТИЙ - Основной поток!! (Функции обратного вызова) | ||
+ | function OnTrade(trade) -- Обработка события ПРОДАЖА | ||
message(string.format("Обработка сделки №%i по инструменту %s [%s]", | message(string.format("Обработка сделки №%i по инструменту %s [%s]", | ||
table_of_trades[1].trade_num, | table_of_trades[1].trade_num, | ||
Строка 20: | Строка 22: | ||
message("Общее количество сделок: " .. number_of_trades) | message("Общее количество сделок: " .. number_of_trades) | ||
end | end | ||
− | function OnStop() | + | |
+ | function OnStop() -- Событие Остановка скрипта | ||
message("OnStop()", 2) | message("OnStop()", 2) | ||
is_run = false | is_run = false | ||
− | return 2000 | + | return 2000 -- 2 секунды на остановку доп. потока |
end | end | ||
+ | |||
-- Дополнительный поток - НАЧАЛО | -- Дополнительный поток - НАЧАЛО | ||
− | function main() | + | function main() -- НАЧАЛО основного потока |
− | + | message("Начало работы main() - Доп поток", 2) | |
− | + | while is_run do -- Основной цикл доп. потока | |
− | + | sleep(100) -- имитация обработки | |
− | + | end -- Конец цикла while | |
end -- Дополнительный поток - КОНЕЦ | end -- Дополнительный поток - КОНЕЦ | ||
− | + | ||
− | --<BODY | + | --<BODY |
− | + | message("Здесь тоже <BODY>", 2) | |
− | --BODY> | + | --BODY> |
== См. также == | == См. также == | ||
− | + | * [[Торговый робот с приоритетами обработки потоков (заготовка)]] | |
+ | * [[Простой торговый робот по скользящей средней]] | ||
== Ссылки == | == Ссылки == | ||
* https://smart-lab.ru/algotrading/Есть%20ли%20в%20свободном%20доступе%20пример%20самого%20простого%20торгового%20робота%20на%20QLua Обсуждение этого торгового робота | * https://smart-lab.ru/algotrading/Есть%20ли%20в%20свободном%20доступе%20пример%20самого%20простого%20торгового%20робота%20на%20QLua Обсуждение этого торгового робота |
Текущая версия на 12:20, 6 апреля 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>
См. также
- Торговый робот с приоритетами обработки потоков (заготовка)
- Простой торговый робот по скользящей средней
Ссылки
- https://smart-lab.ru/algotrading/Есть%20ли%20в%20свободном%20доступе%20пример%20самого%20простого%20торгового%20робота%20на%20QLua Обсуждение этого торгового робота