Вопросы по каналам.

 

1. Где можно посмотреть формулы, используемые в МТ для построения верхней и нижней линий Канала Стандартных Отклонений?

2. По-моему, рисунок на странице Канала Линейной Регрессии не соответствует истинному виду Канала на указанном промежутке времени (видимо, какие-то рисунки перепутаны). Где можно посмотреть формулы, используемые в МТ для построения этого канала?

 
Берется линейная регрессия и от нее откладывается одно или больее стандартных отклонений за период, на котором была рассчитана линейная регрессия.
 

Вот как раз я и хотел бы увидеть формулы, по которым в МТ расчитывается отклонение. По этим формулам: Стандартное отклонение ?

 
Формула стандартного отклонения - это корень из дисперсии.
 
SK. писал (а):

Вот как раз я и хотел бы увидеть формулы, по которым в МТ расчитывается отклонение. По этим формулам: Стандартное отклонение ?

Да.
 

Канал регрессии не хочет строиться по заявленному. Синий - штатный. Красная линия - правильная.

 
SK. писал (а):

Канал регрессии не хочет строиться по заявленному. Синий - штатный. Красная линия - правильная.

Попробовал в Excell-e - получил синюю, буду пробовать в МТ...
 
Rich:
Попробовал в Excell-e - получил синюю, буду пробовать в МТ...

Если крайние линии должны проходить по максимально удалённым клозам свечей, то.. невооружённым глазом видно, что синяя режет свечку.
Снимок сделан сегодня на евре немного после 15:00 по Альпаровскому времени.
 

может при расчете ско, береться нормирующий коэффициент не 1/n, а 1/(n-1) или 1/(n-2).

 
SK. писал (а):

1. Где можно посмотреть формулы, используемые в МТ для построения верхней и нижней линий Канала Стандартных Отклонений?

2. По-моему, рисунок на странице Канала Линейной Регрессии не соответствует истинному виду Канала на указанном промежутке времени (видимо, какие-то рисунки перепутаны). Где можно посмотреть формулы, используемые в МТ для построения этого канала?


#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Red
#property indicator_color2 Blue
#property indicator_color3 Blue
//---- input parameters
extern int N=10;
extern double StdDev=2.0;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
double ExtMapBuffer3[];
//+------------------------------------------------------------------+
int init()
{
SetIndexStyle(0,DRAW_LINE);
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexStyle(1,DRAW_LINE);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexStyle(2,DRAW_LINE);
SetIndexBuffer(2,ExtMapBuffer3);
return(0);
}
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
int start()
{
int j;
double a,b,Summ_x,Summ_y,Summ_x_2,Summ_xy,Deviation,StdDeviation,Sredn_y;
if (Bars < N+1) return(0);
for (int x=1;x<=N;x++)
{ j=N-x;
Summ_x=Summ_x+x;
Summ_y=Summ_y+Close[j];
Summ_xy=Summ_xy+x*Close[j];
Summ_x_2=Summ_x_2+MathPow(x,2);
}
b=(N*Summ_xy-Summ_x*Summ_y)/(N*Summ_x_2-MathPow(Summ_x,2));
a=(Summ_y-b*Summ_x)/N;
Sredn_y=Summ_y/N;
for (x=1;x<=N;x++)
{
j=N-x;
Deviation=Deviation+MathPow((Close[j]-Sredn_y),2);
}
StdDeviation=MathSqrt(Deviation/N);
ExtMapBuffer1[N]=EMPTY_VALUE;
ExtMapBuffer2[N]=EMPTY_VALUE;
ExtMapBuffer3[N]=EMPTY_VALUE;
for (x=1;x<=N;x++)
{ j=N-x;
ExtMapBuffer1[j]=b*x+a;
ExtMapBuffer2[j]=b*x+a+StdDev*StdDeviation;
ExtMapBuffer3[j]=b*x+a-StdDev*StdDeviation;
}

return(0);
}

Хотя вроде в умных книгах написано должно быть StdDeviation=MathSqrt(Deviation/(N-1));

 
ivandurak:

Хотя вроде в умных книгах написано должно быть StdDeviation=MathSqrt(Deviation/(N-1));

Да, спасибо. Вычислить-то я всё вычислил. Проблема в том, что при некоторых условиях вычисленные значения не совпадают с видимыми значениями линий каналов (получить эти значения прямо средствами языка нельзя, т.к. средства не предусмотрены; оч. надеюсь, что будут в МТ5). Последний вопрос касался не StdDev, а канала регрессии. Но проблема в той или иной мере касается всех граф. инструментов.

Фактическое отображение линии на экране неминуемо связано с расчётом границ линии в границах окна и имеющейся истории. По моим представлениям, ошибка где-то в этих расчётах. Например, можно в М5 нарисовать трендовую линию с координатами в пределах часа, а потом посмотреть как она выглядит на Н4. Нетрудно предположить, что в расчёте используется метод построения по барам. Использование такого подхода оправдано только в случае, если пределах области определения есть необх. данные. Если же (при перекл. со старшего ТФ на младший) одна из координат оказывается за пределами баровой истории, то соотв. координат просто нет. На каком основании расчитывается при этом линия мне не известно, но изображение иногда получается неправильным.

Мне думается, что горазо продуктивней было бы хранить координаты прямой не в барах, а в абсолютном времени. Это позволило бы выполнять правильные расчёты для любых ТФ независимо от того, в каком ТФ линия родилась и насколько далеки друг от друга координаты по горизонтали.

Некоторые инструменты содержат линии с лучами в обе стороны. Но предел длины луча равен 100 отрезков между исходными координатами. Это тоже как-то.. Лучше бы линиию строить просто в пределах границ окна без ограничения по длине.

Весь этот разговор только для того, чтоб обратить внимание разработчиков, имея ввиду МТ5.

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