Количество торгуемых инструментов роботом

Страницы: 1
RSS
Количество торгуемых инструментов роботом
 
Добрый день. Подскажите, есть ли ограничение на количество торгуемых инструментов одним роботом одновременно? К примеру, необходимо, чтобы робот написанный на луа отслеживал порядка ста инструментов. И соответственно количество выставляемых заявок роботом.
 
Цитата
Владимир А. пишет:
Добрый день. Подскажите, есть ли ограничение на количество торгуемых инструментов одним роботом одновременно? К примеру, необходимо, чтобы робот написанный на луа отслеживал порядка ста инструментов. И соответственно количество выставляемых заявок роботом.
Здравствуйте,
Именно на роботов нет ограничений.
Есть ограничения на количество стаканов, его устанавливает брокер. По умолчанию разрешено открыть 200 стаканов.
Также есть ограничение на количество транзакций в секунду, тоже настраивается брокером. По умолчанию отключено.
 
Что произойдёт, если клиент захочет открыть стаканов больше ограничения, установленного брокером?
Тот же вопрос по транзакциям.
Надо делать так, как надо. А как не надо - делать не надо.
 
Цитата
Старатель пишет:
Что произойдёт, если клиент захочет открыть стаканов больше ограничения, установленного брокером?
Тот же вопрос по транзакциям.
Будет сообщение об ошибке.
 
Цитата
Sergey Gorokhov пишет:
Будет сообщение об ошибке.
Конкретней можно? Какое сообщение в каждом из случаев?
Надо делать так, как надо. А как не надо - делать не надо.
 
Есть ограничение на количество переменных в скрипте робота.
 
Цитата
Николай Камынин пишет:
Есть ограничение на количество переменных в скрипте робота.
В Lua такого ограничения нет.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Михаил, Вы заблуждаетесь.
Есть ограничение на чиcло локальных переменных Я уже писал об этом на форуме, а читал в документации ссылку дать не могу, так как не фиксировал.
Более того, это ограничение я уже наблюдал в скриптах индикаторах.
Пришлось повозиться, пока дошло что это оно самое.
 
Цитата
Николай Камынин пишет:
Михаил, Вы заблуждаетесь.
Есть ограничение на чиcло локальных переменных Я уже писал об этом на форуме, а читал в документации ссылку дать не могу, так как не фиксировал.
Более того, это ограничение я уже наблюдал в скриптах индикаторах.
Пришлось повозиться, пока дошло что это оно самое.
Я буду рад информации.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Цитата
s_mike@rambler.ru пишет:
Цитата
Николай Камынин пишет:
Михаил, Вы заблуждаетесь.
Есть ограничение на чиcло локальных переменных Я уже писал об этом на форуме, а читал в документации ссылку дать не могу, так как не фиксировал.
Более того, это ограничение я уже наблюдал в скриптах индикаторах.
Пришлось повозиться, пока дошло что это оно самое.
Я буду рад информации.
Тоже интересно. Беглый поиск в интернете не дал результата.
 
Цитата
Sergey Gorokhov пишет:
Есть ограничение на чиcло локальных переменных
Цитата
Sergey Gorokhov пишет:
Тоже интересно. Беглый поиск в интернете не дал результата.
Да, есть такое ограничение. Не помню точное число. Но вы можете определить это экспериментальным путём, создав большое число локальных переменных  ;-)
Соответственно, это ограничение можно обойти созданием ещё одной функции и переносом части вычислений и переменных в неё. Или созданием таблицы переменных.
Цитата
s_mike@rambler.ru пишет:
В Lua такого ограничения нет.
Просто у вас внутри каждой функции количество переменных меньше этого ограничения. Вот вы с этим и не сталкивались.
Надо делать так, как надо. А как не надо - делать не надо.
 
Решил проверить.

Создаем функцию с 10000 локальными переменными


Код
define(`m4_forloop',         `pushdef(`$1',`$2')indir(`m4$forloop',`$1',`$2',`$3',`$4')popdef(`$1')')
define(`m4$forloop',         `$4`'ifelse($1,`$3', ,`define(`$1',incr($1))indir(`m4$forloop',`$1',`$2',`$3',`$4')')')


function main()

m4_forloop(`i',0,10000,`local a`'i = i;')

end

main()

Компилируем и запускаем:


Код
function at line 5 has more than 200 local variables


И действительно, лимит имеется.
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
200 это количество локальных переменных по умолчанию для одной функции. В этом месте QLua собрана без изменений

Код
/*
@@ LUAI_MAXVARS is the maximum number of local variables per function
@* (must be smaller than 250).
*/
#define LUAI_MAXVARS      200 
причем это количество локальных переменных для одного блока кода

Код
MAX_LOCALS=arg[1] or 200

for i=1, MAX_LOCALS do
   if i%10 ==0 then
      io.write("\n")
   end
   io.write(string.format("local x%03d ", i))
end
io.write("\n")

print("function foo()\n")
io.write("\t")
for i=1, MAX_LOCALS do
   if i%10 ==0 then
      io.write("\n\t")
   end
   io.write(string.format("local x%03d ", i))
end
print("\n\treturn 1\nend\n")

print("function foo1()\n")
io.write("\t")
for i=1, MAX_LOCALS do
   if i%10 ==0 then
      io.write("\n\t")
   end
   io.write(string.format("local x%03d ", i))
end
print("\n\treturn 1\nend\n")
 
при MAX_LOCALS <=200 генерируется вполне рабочий код, который Lua может обработать. Хотя лично я не представляю себе осмысленного кода с таким количеством локальных переменных.
Страницы: 1
Читают тему
Наверх