Блог им. autotrade

Индикатор наклонного канала

сам тренд это такая линия сумма квадратов расстояний до которой от каждой цены закрытия бара минимальны (метод наименьших квадратов)
дайте мне тимофейчиков
:)
Индикатор наклонного канала
 
 

Settings={
Name="MNKHL",
period=200,
delta=0,
line=                                     
                {  
					{  
                        Name = "cur1",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,0, 0)
                    },
					{  
                        Name = "cur2",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,255, 0)
                    },
					{  
                        Name = "cur3",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(255,0, 0)
                    },
					{  
                        Name = "cur4",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(255,0, 0)
                    },
					{  
                        Name = "cur5",
                        Type =TYPE_LINE,
                        Width = 1,
                        Color = RGB(0,255, 0)
                    }

                }

}
--[[

описание свойств:
period - период, за каротрый делается расчет
delta - смещение назад 

назначение:
построение тенденции

использовался:
метод наименьших квадратов (аппроксимация линией)

--]]

function Init()
  
  return 5
end

function OnCalculate(index)
    
  sz = Size()
  n = Settings.period
  d = Settings.delta
       
  if (index ~= sz) then
    return nil, nil, nil, nil, nil
  else  	   
   y = nil  
   if index-n-d > 0 then
    a1 = 0
	a2 = 0
	a3 = 0
	a4 = 0
    for i=index-n+1-d, index-d do  

	  a1 = a1+i*C(i)
	  a2 = a2+i
	  a3 = a3+C(i)
	  a4 = a4+i*i
	
    end  
	
	if((n*a4 - a2*a2) ~= 0) then
	 a = (n*a1 - a2*a3)/(n*a4 - a2*a2)
	 b = (a3 - a*a2)/n
    
	 j = index-n+1-d
	 mh1 = H(j)
	 ml1 = L(j)
	 mh2 = H(j)
	 ml2 = L(j)
	 dmh1 = 0
	 dml1 = 0
	 dmh2 = 0
	 dml2 = 0
     for j=index-n+1-d, index-d do  
      y = a*j + b
      SetValue(j, 1, y) 
	  if H(j) < y and y - H(j) > dmh1 then
	    mh1 = H(j)
		dmh1 = y - H(j)
	  end
	  if L(j) < y and y - L(j) > dml1 then
	    ml1 = L(j)
		dml1 = y - L(j)
	  end
	  if H(j) > y and H(j) - y > dmh2 then
	    mh2 = H(j)
		dmh2 = H(j) - y
	  end
	  if L(j) > y and L(j) - y > dml2 then
	    ml2 = L(j)
		dml2 = L(j) - y
	  end
     end	
	 
     for j=index-n+1-d, index-d do  
      y = a*j + b
      SetValue(j, 2, y-dmh1) 
	  SetValue(j, 3, y-dml1) 
      SetValue(j, 4, y+dmh2) 
	  SetValue(j, 5, y+dml2) 	  
     end		 
	 
    end 
   end 	
   return y
  end
 
  
end
    | ★15
    9 комментариев
    Отлично!!!
    avatar
    Ajax, Согласен. Жаль мало трейдеров о нем узнают(
    avatar
    Aleksandr II, это моя разработка поэтому никто и не знает
    avatar
    Не знаю как Вас, а меня учили, что по двум нижним фракталам (и 1 верхнему) строится восходящий канал, а не нисходящий…
    avatar
    Андрей Кольцов, здесь строится по центральной черной линии, а она берется как тренд за период, а он строится как здесь  smart-lab.ru/blog/568221.php
    avatar
    Когда я вижу, сколько смартлабовцев сохраняет это к себе в избранное, то вопрос, почему и сколько народу сливает, отпадает сам собой-)
    Спасибо, конечно, за индикатор, но вся беда в том, что он показывает тренд, когда тот закончился (заканчивается) ((
    Евгений Гуревич, если бы он это показвал то можно было его использовать как конт трендовый
    или вы просто не можете понять силу тренда
    не нужно воспринимать индикатор как последнюю инстанцию
    он всего лишь работает с вероятностями
    avatar
    1) Почему на Вашем скрине нижняя красная линия проходит по 2-м нижним экстремумам, а у меня эту линию рисует ниже?
    2) Было б здорово, если бы Ваш индикатор мог рисовать верхнюю границу как в нарисованном вручную желтой пунктирной линией (при условии, что нижнюю границу он бы рисовал по нижним экстремумам)

    avatar

    Читайте на SMART-LAB:
    Фото
    Волгоградэнергосбыт. Надбавки на 26г. установлены. Изменение целевой цены
    Комитет тарифного регулирования Волгоградской области опубликовал приказ №51/3 от 26.12.2025г. об установлении сбытовых надбавок...
    Фото
    Самые успешные IPO на крипторынке
    Рынок криптовалют переживает период стремительного развития: технологические инновации, высокий интерес к цифровым активам и быстрый рост...
    Фото
    🏭 Комплексное импортозамещение для нефтегаза от Софтлайн
    «Софтлайн Решения» (входит в Группу Софтлайн) реализовала комплексный ИТ-проект для крупного нефтегазового предприятия. ❓ Какой запрос? Заказчику...
    Фото
    Актуальный состав портфеля и взгляд на рынок 2026: по-прежнему 0% позитива.
    Добрый вечер! С момента предыдущего поста, касающегося моего портфеля, прошел квартал.  Пришло время актуализировать его состав. Также поделюсь...

    теги блога autotrade

    ....все тэги



    UPDONW
    Новый дизайн