Добрый день,
---------------------------
Пример простого, универсального советника на луа на основе любых индикаторов.
------------------------------
Советник - это программа,
которая формирует сигналы "купить/продать" и показывает их, но не совершает сделки.
---------------------
Пример на основе стратегии пересечения двух скользящих средних.
Помещаем два индикатора на график цены инструмента
Присваиваем им идентификаторы MOV1 и MOV2 как на рисунке:
далее пишем индикатор "nk_bot"
и помещаем его на график инструмента
В результате получим на истории торгов сигналы "купить/ продать" на графике инструмента
---------------------
На основе данного примера Вы можете построить советник для любых индикаторов,
которые встроены в терминал КВИК или написаны кем-то.
---------------------------
Пример простого, универсального советника на луа на основе любых индикаторов.
------------------------------
Советник - это программа,
которая формирует сигналы "купить/продать" и показывает их, но не совершает сделки.
---------------------
Пример на основе стратегии пересечения двух скользящих средних.
Помещаем два индикатора на график цены инструмента
Присваиваем им идентификаторы MOV1 и MOV2 как на рисунке:
далее пишем индикатор "nk_bot"
Код |
---|
Settings={ i1="MOV2",i2="MOV1", Name = 'nk_bot', } ------------------ local function gI(s,j,i) local t=getCandlesByIndex(s,j,i-1,1); if t then return t[0].close; else return 0 end end --значение индикатора ------------------------- local function cross(s1,j1,s2,j2,i) local m=i; local x= gI(s1,j1,m) local x1=gI(s2,j2,m); while m>1 and x~=0 and x1~=0 and x>x1 do m=m-1; x=gI(s1,j1,m); x1=gI(s2,j2,m) end if m>1 and i>m then return m end end --пересечение -------------------------- function OnCalculate(i) local Bu,Se; local i1=i-1; if i>1 then local jU_,jD_=jU,jD; jU=cross(Settings.i1,0,Settings.i2,0,i1); --MOV1 пересекает MOV2 снизу вверх jD=cross(Settings.i2,0,Settings.i1,0,i1); --MOV1 пересекает MOV2 сверху вниз if jU and jU_==nil then jBu=i; Bu=L(i)-0.1; end if jD and jD_==nil then jSe=i; Se=H(i)+0.1; end if i==Size() then -- последняя свеча end end return Se,Bu; end ----- function Init() local t={}; t[#t+1]={Name = "Se",Color = RGB(255,0,0),Type = 11,Width =3}; ---sell t[#t+1]={Name = "Bu",Color = RGB(0,255,0),Type = 10,Width =3}; ---buy Settings.line=t; return #t; end |
и помещаем его на график инструмента
В результате получим на истории торгов сигналы "купить/ продать" на графике инструмента
---------------------
На основе данного примера Вы можете построить советник для любых индикаторов,
которые встроены в терминал КВИК или написаны кем-то.