Добрый  день,
Рассказываю, как просто сделать робота в виде скрипта индикатора.
Сначала картинка работы такого робота.

В чем достоинство такого робота по сравнению с роботом на основе колбеков.
Робот значительно проще написать
Он загружается на график торгуемого инструмента,
Если для реализации алгоритма торговли достаточно встроенных в QUIK индикаторов,
то нет надобности их программировать.
----------------
Пример варианта основного фрагмента такого робота:
Продолжение вероятно следует...
				Рассказываю, как просто сделать робота в виде скрипта индикатора.
Сначала картинка работы такого робота.
В чем достоинство такого робота по сравнению с роботом на основе колбеков.
Робот значительно проще написать
Он загружается на график торгуемого инструмента,
Если для реализации алгоритма торговли достаточно встроенных в QUIK индикаторов,
то нет надобности их программировать.
----------------
Пример варианта основного фрагмента такого робота:
| Код | 
|---|
| name="nkbot24"
Settings={["Name"] =name,["line"] ={},["account"]="",["client"]="",["Q"]=1;["wt"]=1000,["short"]=0}
Settings.Nind=0;
paths = "D:/QUIK_SCRIPT/"
package.cpath =package.cpath ..";"..paths.."?.dll";
package.path =package.path..paths.."?.lua;"
fnlog=paths..name..".log"; Log=io.open(fnlog,"w")
loadfile(paths.."nkbot24_func.lua")
function nkbuy(i,f)
---алгоритм покупки
 -- f=cross(1,1,2,1,1);
return f;
end
function nksell(i,f)
--алгоритм продажи
-- f=cross(1,1,2,1,1);
return f;
end
function nobuy(i,f)
--фильтр покупки
return f;
end
function nosell(i,f)
--фильтр продажи
return f;
end
function OnCalculate(i)
   local i1=i-1;
   if i==1 then nkInit(); return end
   if i~=i_ then    getI()   end
   N,torder=order(N);    Q=depo();
   if #t==0 then
--      f,j=cross(1,1,2,1,5); --пересечение двух индикаторов
      if i~=i_ then torg(nkbuysel(i));end
      M=os.clock();
   else
      del_ord(M);
   end
   i_=i;
return M1,M2;
end
 | 
