Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 238

 
Vyacheslav Kornev:
Ну что тут непонятного. Над баром это в общем смысле. Для нижней линии это под баром. Левая крайняя точка собственно откуда и начинается линия. 
Линия красная верхняя, розовая нижняя

Детали имеют важное значение.
Ошибся в вопросе - где правая точка?
 
Artyom Trishkin:
Детали имеют важное значение.
Ошибся в вопросе - где правая точка?
Ну она показана в окне данных. Поднимайтесь по линии. Она на минимуме предпоследнем. Это значение мне удалось взять
 
Vyacheslav Kornev:
Ну она показана в окне данных. Поднимайтесь по линии. Она на минимуме предпоследнем. Это значение мне удалось взять
Ну значит у индикатора есть два буфера. Выдают значения для бара1. Для бара0 нужно его посчитать как я уже говорил.
 
Artyom Trishkin:
Ну значит у индикатора есть два буфера. Выдают значения для бара1. Для бара0 нужно его посчитать как я уже говорил.
Так я так и сделал!
Напишите полностью как надо
 
Vyacheslav Kornev:
Так я так и сделал!
Напишите полностью как надо

Вам нужно рассчитать значение на баре0. Уравнение прямой:

//+------------------------------------------------------------------+
//| Уравнение прямой                                                 |
//+------------------------------------------------------------------+
double EquationDirect(const int left_bar,const double left_price,const int right_bar,const double right_price,const int bar_to_search) {
  return((right_bar==left_bar)?left_price:(right_price-left_price)/(right_bar-left_bar)*(bar_to_search-left_bar)+left_price);
}
//+------------------------------------------------------------------+

По именам формальных переменных всё понятно что передавать в функцию.

Возвращает значение на искомом баре.

 
Artyom Trishkin:

Вам нужно рассчитать значение на баре0. Уравнение прямой:

По именам формальных переменных всё понятно что передавать в функцию.

Возвращает значение на искомом баре.


ой как сложно боже мой.  Мне удалось получить значение, надо всего лишь написать  ObjectGetValueByShift,    фуууууух.   Скиньте мне, пожалуйста, каких нибудь видеоуроков, я смотрел как делать индикаторы но там такого не нашел.   Все работает. Взял из этого же вопросаhttps://www.mql5.com/ru/forum/121347

Без понятия, можно ли так оформлять буферы.. но работает.  что такое ncurbar я не особо понял.

//---- Move Object in Chart

   ObjectMove("Trend DN-0",1,Time[st1],s1);

   ObjectMove("Trend DN-0",0,Time[st2],s2);

    Dn[nCurBar] =  ObjectGetValueByShift("Trend DN-0",0);

//----

   ObjectMove("Trend UP-0",1,Time[rt1],r1);

   ObjectMove("Trend UP-0",0,Time[rt2],r2);

   Up[nCurBar] =  ObjectGetValueByShift("Trend UP-0",0);

 

Помогите с кодом!!!
Помогите с кодом!!!
  • 2009.10.23
  • www.mql5.com
Ситуация такая, пишу индикатор, он должен рисовать уровни поддержки и сопротивления...
 
Vyacheslav Kornev:

ой как сложно боже мой.  Мне удалось получить значение, надо всего лишь написать  ObjectGetValueByShift,    фуууууух.   Скиньте мне, пожалуйста, каких нибудь видеоуроков, я смотрел как делать индикаторы но там такого не нашел.   Все работает.

//---- Move Object in Chart

   ObjectMove("Trend DN-0",1,Time[st1],s1);

   ObjectMove("Trend DN-0",0,Time[st2],s2);

    Dn[nCurBar] =  ObjectGetValueByShift("Trend DN-0",0);

//----

   ObjectMove("Trend UP-0",1,Time[rt1],r1);

   ObjectMove("Trend UP-0",0,Time[rt2],r2);

   Up[nCurBar] =  ObjectGetValueByShift("Trend UP-0",0);

 


А теперь сделайте из советника распринтовку значения, которое вы получаете от линии в журнал и запустите НЕ в визуальном режиме. Остановите тест и поглядите в журнал.

Я же вам говорил, что в тестере не в режиме визуализации вы не сможете получать значения от графических объектов - они просто не строятся.

А вот добавить в индикатор нормальный расчёт всего по одной строчке на каждое значение из двух линий вам сложно.

Ну что ж, уговаривать не буду.

 
Artyom Trishkin:

А теперь сделайте из советника распринтовку значения, которое вы получаете от линии в журнал и запустите НЕ в визуальном режиме. Остановите тест и поглядите в журнал.

Я же вам говорил, что в тестере не в режиме визуализации вы не сможете получать значения от графических объектов - они просто не строятся.

А вот добавить в индикатор нормальный расчёт всего по одной строчке на каждое значение из двух линий вам сложно.

Ну что ж, уговаривать не буду.


Да я не умею просто... куда это добавить то...

я не понял у меня ошибки пишет, куда это добавлять
 
Vyacheslav Kornev:

Да я не умею просто... куда это добавить то...

я не понял у меня ошибки пишет, куда это добавлять

Вы знаете что такое функция? Я вам дал функцию. Впишите её за пределами тела любой функции индикатора и вызывайте её из кода вводя в неё нужные данные. На выходе она вам даст цену искомого бара.

Вот тут я лет триста назад писал статью - ещё на mql4.com - там есть описание как работать с уравнением прямой - функция теперь видоизменена, но от этого она не перестала быть функцией, возвращающей цену искомого бара.

Вот тут индикатор, сделанный по мотивам той статьи.

 
Artyom Trishkin:

Вы знаете что такое функция? Я вам дал функцию. Впишите её за пределами тела любой функции индикатора и вызывайте её из кода вводя в неё нужные данные. На выходе она вам даст цену искомого бара.

Вот тут я лет триста назад писал статью - ещё на mql4.com - там есть описание как работать с уравнением прямой - функция теперь видоизменена, но от этого она не перестала быть функцией, возвращающей цену искомого бара.

Вот тут индикатор, сделанный по мотивам той статьи.


Спасибо за помощь, а при реальной торговле разницы нет как брать цену? ведь придется и индикатор и советник на график набросить?

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