Энн (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Индикатор на lua, получить значения High и Low дневных баров в индикатор
 
Уважаемые форумчане! Существует ли способ получить значения High и Low 5 последних дневных баров в индикатор на пятиминутном графике? Если знаете, прошу, подскажите :what:  
Индикатор на lua, Значение индикатора не меняется при смене инструмента
 
Цитата
nikolz написал:
У Вас значения вычисляются лишь один раз при запуске скрипта
Чтобы значение пересчитывалось надо вычисления поместить в функцию OnCalculate
Попробуйте так:
Код
   function   Init ()
 return   1 
 end 

 function   OnCalculate (index)
x  =   getNumCandles ( 'ACTIVE' )  -- расчет количества баров на дневном графике с идентификатором "ACTIVE" 
ACTIVE, ACTIVE_N, ACTIVE_Name  =   getCandlesByIndex ( 'ACTIVE' ,  0 ,  0 , x)  -- поиск параметров конкретного бара на дневном графике с идентификатором "ACTIVE" 
L1_ACTIVE  =  ACTIVE[ACTIVE_N -  2 ].low  -- low -1 бара 
 return  L1_ACTIVE  -- вывожу искомое значение 
 end 
 
Спустя время квик выдает 17 тысяч оповещений.

C:\QuikFinam\LuaIndicators\aaa.lua:19: attempt to index a nil value (field '?')
Индикатор на lua, Значение индикатора не меняется при смене инструмента
 
Такой вариант тоже испробован. При добавлении индикатора, Квик просто перестает отвечать (висит). Приходится перезагружать программу полностью.
Может знаете еще какой-нибудь способ?
Индикатор на lua, Значение индикатора не меняется при смене инструмента
 
Уважаемые форумчане! Нужна помощь начинающему.

На графике нужна линия лоя предыдущего дневного бара по активу, график которого в данный момент открыт.

Из таблицы текущих торгов создано 2 графика: пятиминутный и дневной с идентификатором ACTIVE (оба графика привязываю к таблице текущих торгов). Добавляю написанный скрипт на пятиминутку. Происходит следующее - рисуется линия с ценой на момент добавления индикатора на график. При смене инструмента линия не перерисовывается.

Пример: открыт график NLMK, добавляю индикатор - рисуется линия на отметке 165,7; перелистываю график на CHMF - линия там же, а должна быть на отметке 1160,6.

Прошу, подскажите, как изменить скрипт, чтобы он работа корректно.

Код, который написан мной, приведен ниже.
--------------------------------------------------------------------------------------------------------------------------
Settings=
{ Name = "1.aaa",
line =
{ Name = "Low",
Color = RGB(34,177,76),
Type = TYPE_DASH,
Width = 1
}
}

x = getNumCandles('ACTIVE') -- расчет количества баров на дневном графике с идентификатором "ACTIVE"
ACTIVE, ACTIVE_N, ACTIVE_Name = getCandlesByIndex('ACTIVE', 0, 0, x) -- поиск параметров конкретного бара на дневном графике с идентификатором "ACTIVE"
L1_ACTIVE = ACTIVE[ACTIVE_N-2].low -- low -1 бара

function Init()
return 1
end

function OnCalculate(index)
return L1_ACTIVE -- вывожу искомое значение
end
Страницы: 1
Наверх