Всем добрый день.
Есть такой код Lua, который работает только по одному инструменту: при запуске в Quik смотрит цену открытия и закрытия, и если цена закрытия становится больше цены открытия на 5%, то покупает по рынку 1 лот.
Подскажите, пожалуйста, что добавить в скрипт, чтобы можно было запустить его один раз, чтобы постоянно мониторил цену, пока не отключишь его.
А если необходимо сканировать несколько инструментов, например, SIBN, SBER, как нужно изменить скрипт?
Я начал изучать Lua на прошлой неделе, поэтому мой уровень почти нулевой. Буду благодарен, если дадите какие-либо наводки, что изучать.
Есть такой код Lua, который работает только по одному инструменту: при запуске в Quik смотрит цену открытия и закрытия, и если цена закрытия становится больше цены открытия на 5%, то покупает по рынку 1 лот.
Подскажите, пожалуйста, что добавить в скрипт, чтобы можно было запустить его один раз, чтобы постоянно мониторил цену, пока не отключишь его.
А если необходимо сканировать несколько инструментов, например, SIBN, SBER, как нужно изменить скрипт?
Код |
---|
stopped = false function OnStop() stopped = true return 5000 end function main() ticker = "SIBN" ds1, err = CreateDataSource("TQBR", ticker, INTERVAL_D1); sleep(400) CandleNum = ds1:Size() PriceC = ds1:C(CandleNum) PriceO = ds1:O(CandleNum) if PriceC > PriceO * 1.05 then -- Если цена закрытия становится больше цены открытия на 5%, то покупаем по рынку 1 лот A = { ACTION = 'NEW_ORDER', ACCOUNT = 'xxxxxxxxxxx', OPERATION = 'B', -- 'B' - покупка, 'S' - продажа CLASSCODE = 'TQBR', SECCODE = ticker, PRICE = tostring(0), QUANTITY = tostring(1), -- количество лотов TRANS_ID = tostring(1000), -- идентификатор транзакции, чтобы программа распознавала транзакции, когда много сделок TYPE = 'M' } Err_A = sendTransaction(A) message("error: "..Err_A) end end |
Я начал изучать Lua на прошлой неделе, поэтому мой уровень почти нулевой. Буду благодарен, если дадите какие-либо наводки, что изучать.