Получение в индикаторе данных со старшего таймфрейма

Страницы: 1
RSS
Получение в индикаторе данных со старшего таймфрейма
 
Не подкскажите, как получить данные  в индикаторе с дневного или недельного таймфрейма?
 
Здравствуйте,
Индикатор работает только с тем таймфреймом который выбран на графике куда добавлен сам индикатор.
Единственный вариант, открыть еще один график с нужным таймфреймом и обратиться к нему через getCandlesByIndex
 
Есть и другой вариант.

пересчитать свечи из текущего таймфрейма в более старший внутри индикатора. При этом длительности таймфрейма должны быть кратны.
 
Меня интересуют High, Low и Close  предыдущей недели, не подскажите может уже кто решал такую проблему?
 
Для расчета этих данных совершенно не требуется информация о недельном таймфрейма.

у вас есть все на текущем таймфрейма, если он не месячный.

у каждой свечи есть время, смотрите от текущей свечи влево, находите свечу, где с енилась неделя и идите дальше до следующей смены недели. При этом рассчитайте low и high.
 
Цитата
s_mike@rambler.ru написал:
Для расчета этих данных совершенно не требуется информация о недельном таймфрейма.

у вас есть все на текущем таймфрейма, если он не месячный.

у каждой свечи есть время, смотрите от текущей свечи влево, находите свечу, где с енилась неделя и идите дальше до следующей смены недели. При этом рассчитайте low и high.
С этим разобрался, хочу отобразить экстремумы недели в виде горизонтальных линий, как сделать чтобы рисовались уровни только последней недели? У меня сейчас отрисовываются уровни всех недель.
 
Считать только на той свече, которая является последней.
 
Цитата
s_mike@rambler.ru написал:
Считать только на той свече, которая является последней.
Я так и делаю и работает до начала нового дня, как только начинается новый день предыдущие линии остаются
 
Цитата
Andrei написал:
Цитата
   s_mike@rambler.ru написал:
Считать только на той свече, которая является последней.
Я так и делаю и работает до начала нового дня, как только начинается новый день предыдущие линии остаются
когда начинается новый день на реальных торгах индикатор делает полный рестарт, вся имеющаяся на нем информация стирается и начинается новый расчет с первой свечи. Поэтому написанное вами происходить не может и вам следует поискать ошибку.
 
Цитата
Andrei написал:
Цитата
   s_mike@rambler.ru написал:
Считать только на той свече, которая является последней.
Я так и делаю и работает до начала нового дня, как только начинается новый день предыдущие линии остаются
когда начинаются новые торги графики не рестартуются.
Поэтому у Вас все правильно. Но если вам мешают линии ранее нарисованные, то сотрите их, либо сделайте рестарт графика а в скрипте поставьте условие рисования линий по времени и дате.
 
Цитата
Николай Камынин написал:
Цитата
Andrei написал:
 
Цитата
    s_mike@rambler.ru  написал:
Считать только на той свече, которая является последней.
 Я так и делаю и работает до начала нового дня, как только начинается новый день предыдущие линии остаются
когда начинаются новые торги графики не рестартуются.
Поэтому у Вас все правильно. Но если вам мешают линии ранее нарисованные, то сотрите их, либо сделайте рестарт графика а в скрипте поставьте условие рисования линий по времени и дате.
ну как же не рестартуются?

смена торгового дня всегда приводит через процедуру очистки (даже колбек даден - oncleanup).

посмотрите на досуге, как утром в момент подключения все ваши графики становятся черными, ресетятся все экранные таблицы и начинается перестроение графиков.

я вам даже индикатор напишу, вот он:

function oncalculate(i)
message(tostring(i))
end

запустите его на ночь и посмотрите, как происходит пересчет графиков и не обманывайте никого.
 
Цитата
s_mike@rambler.ru написал:
Цитата
Николай  Камынин написал:
 
Цитата
Andrei  написал:
 
Цитата
     s_mike@rambler.ru   написал:
Считать только на той свече, которая является последней.
  Я так и делаю и работает до начала нового дня, как только начинается новый день предыдущие линии остаются
 когда начинаются новые торги графики не рестартуются.
Поэтому у Вас все правильно. Но если вам мешают линии ранее нарисованные, то сотрите их, либо сделайте рестарт графика а в скрипте поставьте условие рисования линий по времени и дате.
ну как же не рестартуются?

смена торгового дня всегда приводит через процедуру очистки (даже колбек даден - oncleanup).

посмотрите на досуге, как утром в момент подключения все ваши графики становятся черными, ресетятся все экранные таблицы и начинается перестроение графиков.

я вам даже индикатор напишу, вот он:

function oncalculate(i)
message(tostring(i))
end

запустите его на ночь и посмотрите, как происходит пересчет графиков и не обманывайте никого.
откройте квик до начала торгов.
новые торги начнутся без изменения нарисованных графиков.
Но настаивать не буду, возможно Вы и правы - у вас графики стираются, но у меня - нет.
 
Вы путаете понятия "начало торгов" и "смена торговой даты". Это не одно и то же.

когда вы включаете терминал впервые утром к примеру в 9-30, у вас при подключении к серверу происходит cleanup и меняется дата. При этом  пересчитывается все и вся, включая графики.

если вы не выключите на ночь компьютер, то все равно произойдет cleanup в момент, определяемый брокером. Это можно проверить, написав простейший скрипт с колбеком oncleanup

в момент начала торгов конечно ничего подобного уже не происходит, ибо незачем.
 
s_mike@rambler.ru
не надо приписывать другим то, чем занимаетесь сами.
Вполне допускаю, что ошибся. Но хамить не имеет смысла.
 
Добрый день. Подскажите, как установить идентификатор на график САР старшего таймфрейма?

Спасибо  
 
Цитата
Роман написал:
Добрый день. Подскажите, как установить идентификатор на график САР старшего таймфрейма? Спасибо  
Здравствуйте.

Идентификатор -  уникальный строковый идентификатор, присваиваемый графику. Идентификатор используется при получении доступа к указанному графику средствами языка QLua или QPILE.

Он, как любое свойство графика, задается в окне редактирования (Диаграмма - Область N - <Название индикатора> - Дополнительно). В поле ввода нужно ввести любые символы, чтобы обозначить конкретный график-индикатор (в каком-то смысле, так мы даем ему имя). После этого, в коде скрипт-файла необходимо использовать название этого идентификатора (этого "имени"), для того, чтобы скрипт начал работать с нужным Вам индикатором
Страницы: 1
Читают тему (гостей: 1)
Наверх