Советник на пересечении

 

Помогите, пожалуйста, с кодом для советника. Для входа в сделку мне необходимо следующее: поймать пересечение двух индикаторов на ближайших барах(на 1,2,3 или 4 баре), как на рисунке.

Проблема в том, что эти индикаторы имеют разные значения

Помогите, пожалуйста, с кодом.

Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства позиций
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства позиций
  • www.mql5.com
Свойства позиций - Торговые константы - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
значения минимума приведите за -1 и максимум за 1 для обоих индикаторов.
 
Dmitiry Ananiev #:
значения минимума приведите за -1 и максимум за 1 для обоих индикаторов.

а как это сделать?

 
Приводите оба индикатора к одному порядку и к одним значениям. Если порядок одинаковый - то просто из большего минусуете константу. Если порядок разный - то нужно еще и больший делить или вообще брать степенную функцию. Далее пересечение определяете как 
if (ind_buf1[current - 1] < ind_buf2[current - 1] && ind_buf1[current] > ind_buf2[current])
  place_order_buy();

if (ind_buf1[current - 1] > ind_buf2[current - 1] && ind_buf1[current] < ind_buf2[current])
  place_order_sell();
 
DrSky #:
Приводите оба индикатора к одному порядку и к одним значениям. Если порядок одинаковый - то просто из большего минусуете константу. Если порядок разный - то нужно еще и больший делить или вообще брать степенную функцию. Далее пересечение определяете как 

пересечение определить функцию я видел и понимаю ее, а вот привести к одному порядку это интересный подход. Есть дополнительная информация по этому подходу, может где-то почитать?

 
Fet #:

а как это сделать?

Еще можно так:


 
Ihor Herasko #:

Еще можно так:


так не получается, они становятся параллельными прямыми, которые не сходятся)

 
Это два отдельно живущих индикатора с разными системами отсчёта и при размещении в одном окне "точки пересечения" будут перерисовывать я не только с учётом времени, но и при изменении масштаба окна терминала. При изменении масштаба будут появляться или исчезать экстремумы и шкала индикатора будет сужаться или расширяться по вертикали. Т.к. это два разных индикатора не привязанных к общей шкале, то и расширяться/сужаться они будут по разному, перертсовывая точки пересечения. Данная идея если может иметь место, то только при определенном масштабе графика и выстроенной высоте окна индикатора. Пересечение высматривают я только глазками, либо при помощи их заменяющей камере.
Я когда с ьрейдингом только знакомился, случайно бросил осциллятор в окно графика цен: увиденные сигналы пересечения ценой линии осциллятора поразили своей точностью и я был готов кредетнуться в банке и нанять "мартышек" для круглосуточной торговли, но случайно изменил масштаб и... прозрел
 
Fet:

Помогите, пожалуйста, с кодом для советника. Для входа в сделку мне необходимо следующее: поймать пересечение двух индикаторов на ближайших барах(на 1,2,3 или 4 баре), как на рисунке.

Проблема в том, что эти индикаторы имеют разные значения

Помогите, пожалуйста, с кодом.

Надо посчитать WPR на 200-300 баров от обоих индикаторов и определять их пересечение.

 
Fet:

Помогите, пожалуйста, с кодом для советника. Для входа в сделку мне необходимо следующее: поймать пересечение двух индикаторов на ближайших барах(на 1,2,3 или 4 баре), как на рисунке.

Проблема в том, что эти индикаторы имеют разные значения

Помогите, пожалуйста, с кодом.

Пересечений будет очень много. Советник будет покупать - продавать - покупать - продавать... и сольет депозит

 
Konstantin Erin #:

Пересечений будет очень много. Советник будет покупать - продавать - покупать - продавать... и сольет депозит

Можно добавить гистерезис. Но всё равно сольёт, хоть и медленнее :)

Причина обращения: