Знатоки. Есть тема для статьи.

 
Добрый день (или ночь) всем. У меня возникла такая проблема: нужно отрисовать линию индикатора в младших таймфреймах. Например сигнальную MACD H4 вместе с MACD H1 и M15. Как это сделать не знаю. Из текста индикатора MA-4H от lukas1 ничего не понял. Очень хочется почитать подробную статью на эту тему - наподобие "Звуковые сигналы в индикаторах" где все ясно и понятно расписано.
 
Тебе нужно отобразить линию со старшего таймфрейма на младшем? Я так понял?
Можно сделать так:
1. Определяем время i-го бара, на котором рассчитывается значение индикаторного буфера: Time[i].
Находим положение бара, соответствующего этому времени на старшем таймфрейме( например, Н4):
shift=iBarShift(NULL,PERIOD_H4,Time[i]);
2. Определяем значение сигнальной линии MACD Н4 на этом баре и присваиваем его i-му значению индикаторного буфера:
macd_signal-индикаторный буфер. Настройки MACD по умолчанию
macd_signal[i]=iMACD(NULL,PERIOD_H4,8,12,1,PRICE_CLOSE,MODE_SIGNAL,shift);
В целом код функции start() будет такой:
int    counted_bars=IndicatorCounted();
   int limit=Bars-counted_bars;
   int shift=0;
   for(int i=0;i<limit;i++)
   {
      shift=iBarShift(NULL,PERIOD_H4,Time[i]);
      macd_signal[i]=iMACD(NULL,PERIOD_H4,8,12,1,PRICE_CLOSE,MODE_SIGNAL,shift);
   }
 
Luptator, все несколько сложнее.

Где-то лежит у меня статья про это, но забракованная, надобы собраться отредактировать))) Если вдруг, есть пламенно желающие написать эту статью - пожалуйста.
 
2 Integer: забракованная-не забракованная, выложи пожайлуста сюда. Знаю что сложнее, подскажи в чем сложности. Поделись опытом.
Я как то пытался сделать чтобы на текущем можно было показывать и старшие тф и младшие. Вот только не додумался как это сделать.
Сделал по отдельности два индюка. Хотя можно было сделать два алгоритма в одном индюке( один для младших, другой для старших).
Сравнивать текущий тф с другим тф и в зависимости от соотношения запускать нужный алгоритм.
 
MVV:
Добрый день (или ночь) всем. У меня возникла такая проблема: нужно отрисовать линию индикатора в младших таймфреймах. Например сигнальную MACD H4 вместе с MACD H1 и M15. Как это сделать не знаю. Из текста индикатора MA-4H от lukas1 ничего не понял. Очень хочется почитать подробную статью на эту тему - наподобие "Звуковые сигналы в индикаторах" где все ясно и понятно расписано.
А не проще ли будет просто промасштабировать параметры индикатора старшего таймфрейма на младшем? Например берём таймфрейм H4 и MACD 12,26,9.
Хотим его нарисовать на таймфрейме М15. Соотношение между таймфреймами H4/M15=16. Соответственно помножаем коэффициенты индикатора на 16 и получаем MACD 192,416,144. Теперь мы можем на периоде М15 нарисовать этот индикатор, который по смыслу (только приближённо, так как точного совпадения не получится в виду разницы исходных данных для расчёта) должен нам давать примерно те же самые значения, что и MACD 12,26,9 на периоде H4. Можно нарисовать таким образом столько индикаторов сколько вам требуется по смыслу.
Или вы хотели что-то другое получить в результате?
 
solandr:
MVV:
Добрый день (или ночь) всем. У меня возникла такая проблема: нужно отрисовать линию индикатора в младших таймфреймах. Например сигнальную MACD H4 вместе с MACD H1 и M15. Как это сделать не знаю. Из текста индикатора MA-4H от lukas1 ничего не понял. Очень хочется почитать подробную статью на эту тему - наподобие "Звуковые сигналы в индикаторах" где все ясно и понятно расписано.
А не проще ли будет просто промасштабировать параметры индикатора старшего таймфрейма на младшем? Например берём таймфрейм H4 и MACD 12,26,9.
Хотим его нарисовать на таймфрейме М15. Соотношение между таймфреймами H4/M15=16. Соответственно помножаем коэффициенты индикатора на 16 и получаем MACD 192,416,144. Теперь мы можем на периоде М15 нарисовать этот индикатор, который по смыслу (только приближённо, так как точного совпадения не получится в виду разницы исходных данных для расчёта) должен нам давать примерно те же самые значения, что и MACD 12,26,9 на периоде H4. Можно нарисовать таким образом столько индикаторов сколько вам требуется по смыслу.
Или вы хотели что-то другое получить в результате?
Масштабировать параметры индикатора старшего таймфрейма на младшем не проще. Слишком большие расхождения между оригиналом и дубликатом. В принципе эта проблема решена в индикаторе MTF_MACD. Он написан в виде шаблона и легко переделывается под любой другой. Наверно, так и поступлю. Просто хотелось все нужные линии собрать в одном окне чтобы не загромождать экран. Спасибо всем кто откликнулся.
Файлы:
mtf_macd.mq4  5 kb
 

В MTF_MACD решена проблема загрубления старших таймфремов на младшем, т.е. на М15 каждые четыре бара часа будут показывать одно и тоже значение для М60. Соглашусь, что в этом можно найти какой-то смысл. Но вот скажите, какой смысл под каждым баром М60 иметь значение МАСД для каждого бара М15? Зачем размещать МАСД для М15 под графиком цены М60?

 
Vita:

В MTF_MACD решена проблема загрубления старших таймфремов на младшем, т.е. на М15 каждые четыре бара часа будут показывать одно и тоже значение для М60. Соглашусь, что в этом можно найти какой-то смысл. Но вот скажите, какой смысл под каждым баром М60 иметь значение МАСД для каждого бара М15? Зачем размещать МАСД для М15 под графиком цены М60?


О переносе индикаторов в старшие таймфреймы никто и не говорил.  В этом действительно нет никакого смысла.
Причина обращения: