френк френков
френк френков личный блог
15 мая 2016, 22:50

программа зиг-заг

скачать на бот 4 сале индикатор
программа рабочая. но с продвижением линии сигнал меняется.демо от часа до 4х хватает!

--Параметры: p_classcode=«SPBFUT» --Код класса p_seccode=«RIM6» --Код инструмента p_account="...." --Код счета p_clientcode="...." --Клиенткий код p_count=1 --Размер позиции p_spread=10 --Проскальзывание p_sell_level_zigzag=500 --уровень RSI, при котором продаем p_buy_level_zigzag=500 --уровень RSI, при котором покупаем p_svech=60

is_run = true count = 0

function main()  while is_run do   sleep(100)   robot()  end end

function robot()  local N1=getNumCandles(«RIM6-zig-zag»)    local N=getNumCandles(«MyPrice-RIM6»)

 

for i=1,p_svech-1 do

t1,n1,i1=getCandlesByIndex(«RIM6-zig-zag», 0, N1-i, 1)--(«RSI-1», 0, N1-p_svech, 2)

     if t1[0].close>0 then           --p_svech=p_svech-1      --else            message(" RIM6-zig-zag: "..t1[0].close,1)-- message(«MA1-RIH5: »..t1[0].close,1)       end end

   t,n,i=getCandlesByIndex(«MyPrice-RIM6», 0, N-1, 1)

 message(«MyPrice-RIM6: »..t[0].close,1)

        --сигнал на продажу (первый мувинг пересекает втрой RSI-15-BRJ5 сверху вниз  if t[0].close<t1[0].close and t1[0].close>t[0].close+p_sell_level_zigzag  then--фильтр уровня

            --if t1[1].close>p_sell_level_RSI --фильтр уровня   Trade(«S»,count+p_count,t[0].close-p_spread)  --end  end    --сигнал на покупку (первый мувинг RSI-5-BRJ5 пересекает второй снизу вверх  if t[0].close>t1[0].close and t1[0].close<t[0].close-p_buy_level_zigzag  then--фильтр уровня                    --if t1[1].close<p_buy_level_RSI --фильтр уровня   Trade(«B»,p_count-count,t[0].close+p_spread)  --end  end end

function Trade(a_oper,a_count,a_price)  if a_count>0 then   t = {     [«CLASSCODE»]=p_classcode,     [«SECCODE»]=p_seccode,     [«ACTION»]=«NEW_ORDER»,     [«ACCOUNT»]=p_account,     [«CLIENT_CODE»]=p_clientcode,     [«TYPE»]=«L»,     [«OPERATION»]=a_oper,     [«QUANTITY»]=tostring(a_count),     [«PRICE»]=tostring(a_price),     [«EXPIRY_DATE»]=«TODAY»,     [«TRANS_ID»]=«1»    }   res=sendTransaction(t)   message(«Количество до »..tostring(count).."  количество сделки "..tostring(a_count).."  тип операции"..a_oper,1)   if a_oper==«B» then    count=count+a_count   else    count=count-a_count   end   message(«Количество после »..tostring(count),1)  end end

function OnStop(stop_flag)  is_run=false --stop_flag=1--УБРАТЬ ЗА ТИРЕ   end

5 Комментариев
  • Stoic
    16 мая 2016, 18:47
    Надо говорить русским языком — индикатор перерисовывается)

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн