Значения канала в эксперте

 

Такой вопрос.

Хотелось бы использовать в эксперте в качестве чувствительных точек (переменных типа double) значения канала такого типа, какой изображен на картинке (ну, или примерно). Причем рисовать все это совсем необязательно (есть индикатор соответствующий). Просто, чтобы были значения: double ch_up=(формула) и double ch_dn=(формула). Соответственно, как правильно указать формулы с использовнием highs/lows? Что-то на что-то должно быть умножено, наверное, возведено в степень - у меня слабо с математикой, к сожалению...

Наверное, формулы есть в прикрепленном индикаторе, раз он рисует эти уровни, и хотелось бы, чтобы математически наметанный глаз их из кода извлек на наше обозрение.

Сам индикатор в эксперте использовать не хотелось бы (хотя, наверное, можно торговать от графических объектов как-то), чтобы эксперт был легким и не тормозил.

Заранее большое спасибо!

Файлы:
 

Немного по-другому поставлю вопрос:

Если я мне известны две точки в прошлом - как мне узнать координаты прямой, соединяющей две эти точки в настоящем?

Спасибо.

 
Idalgo писал (а):
Если я мне известны две точки в прошлом - как мне узнать координаты прямой, соединяющей две эти точки в настоящем?

Для этого нужно использовать уравнение прямой:

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 12.10.2007                                                     |
//|  Описание : Уравнение прямой.                                              |
//|             Вычисляет значение Y для X в точке пересечения с прямой.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    x1,y1 - координаты первой точки,                                        |
//|    x2,y2 - координаты второй точки,                                        |
//|    x     - значение, для которого вычислить Y                              |
//+----------------------------------------------------------------------------+
double EquationDirect(double x1, double y1, double x2, double y2, double x) {
  if (x==x1) return(y1);
  if (x2==x1) return(0);
  return((y2-y1)/(x2-x1)*(x-x1)+y1);
}
Иксы - это либо номера баров, либо время открытия баров, вообщем, абсциссы.
Игреки - это ценовые уровни или ординаты.
 
KimIV:
Idalgo писал (а):
Если я мне известны две точки в прошлом - как мне узнать координаты прямой, соединяющей две эти точки в настоящем?

Для этого нужно использовать уравнение прямой:

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 12.10.2007                                                     |
//|  Описание : Уравнение прямой.                                              |
//|             Вычисляет значение Y для X в точке пересечения с прямой.       |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    x1,y1 - координаты первой точки,                                        |
//|    x2,y2 - координаты второй точки,                                        |
//|    x     - значение, для которого вычислить Y                              |
//+----------------------------------------------------------------------------+
double EquationDirect(double x1, double y1, double x2, double y2, double x) {
  if (x==x1) return(y1);
  if (x2==x1) return(0);
  return((y2-y1)/(x2-x1)*(x-x1)+y1);
}
Иксы - это либо номера баров, либо время открытия баров, вообщем, абсциссы.
Игреки - это ценовые уровни или ординаты.

Игорь, у человека плохо с математикой. А ты его в формулы тычешь.
 
Vinin писал (а):
Игорь, у человека плохо с математикой. А ты его в формулы тычешь.
А шо делать? Нада разбираца... тут без формул никак
 
Idalgo, специально для Вас выложил на сайт свою старую разработку - советник, торгующий от нарисованных пользователем линий.
 
KimIV:
Idalgo, специально для Вас выложил на сайт свою старую разработку - советник, торгующий от нарисованных пользователем линий.


Игорь, огромное Вам спасибо! Не первый раз пользуюсь Вашими функциями и наработками - без сомнения, Вы один из наиболее ярких и ценных представителей российского mql-сообщества.

Vinin писал (а):
Игорь, у человека плохо с математикой. А ты его в формулы тычешь.

Ну, уж как-нибудь готовые функции я смогу приладить.