Индикатор поддержки/сопротивления

 
Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?
 
Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?

А самому написать - слабо?
 

Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?


Любые индикаторы каналов, тот же Боллингер. NRTR. Пивоты.
 
Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?

А самому написать - слабо?


Этим и собираюсь заняться, но не хочу изобретать вилосепед.
А что, автор этого глубокого ответа уже написал ?
 

Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?


Любые индикаторы каналов, тот же Боллингер. NRTR. Пивоты.


Спасибо за ответ, но я его плохо понял.
Нельзя ли, в порядке ликбеза, пояснее ?
 
http://forex.kbpauk.ru/ubbthreads.php/Cat/

здесь можно найти ответы
 
Знатоки, подскажите.
Имеются ли реализованные индикаторы поддержки/сопротивления ?
Где взять или где посмотреть алгоритм ?

А самому написать - слабо?


Этим и собираюсь заняться, но не хочу изобретать вилосепед.
А что, автор этого глубокого ответа уже написал ?

Нет, вручную рисую пока, но если разовьешь тему, приму участие.
 

Спасибо за ответ, но я его плохо понял.
Нельзя ли, в порядке ликбеза, пояснее ?


Ну... Рисуем Болингеровские банды. Нижнюю считаем поддержкой, верхнюю - сопротивлением. То же можно делать с МА, индикаторами каналов и т.п. То есть, если вам нужна проверка условия выхода за некий уровень, а не геометрия.

Если геометрия (прямая линия), то берете мой :) зигзаг, и рассчитываете прямую (ах + в), проходящую через два последних экстремума одного типа (минимума или максимума). Получаете одну линию. Вторая рисуется по экстремуму второго типа, который по определению между ними есть, просто сдвигом (в + конст) прямой параллельно оси У. Далее вы можете двигать стопы, на каждом баре пересчитывая координаты прямой.

Эту штуку я еще не сделал в виде индикатора, так что код не выкладываю. Но в целом - все просто :)
 
Но в целом - все просто :)

Гыгы :) кончится, как все у тебя, полуфабрикатом недалеким ;)
 
Что то меня совсем утамило видеть все это издевательство:)...
Для тех кто в танке:
r1,r2,r3,r4,r5,r6; - Это сопротивление
s1,s2,s3,s4,s5,s6; - Это поддержка
Рисование всевозможных линий и прочего думаю сможете сделать сами
//+------------------------------------------------------------------+
//|                                        Ind-Widners Oscilator.mq4 |
//|                    Copyright © 2004, http://www.expert-mt4.nm.ru |
//|                                      http://www.expert-mt4.nm.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2004, http://www.expert-mt4.nm.ru"
#property link      "http://www.expert-mt4.nm.ru"

#property indicator_separate_window
#property indicator_minimum 1
#property indicator_maximum 100
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue

extern int nPeriod=9;
extern int Limit=350;
///---- int Widners Oscilator
int cnt,nCurBar;
//---- buffers
double wso[];
double wro[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,wso);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(1,wro);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- TODO: add your code here
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
//---- TODO: add your code here
   double r1,r2,r3,r4,r5,r6;
   double s1,s2,s3,s4,s5,s6;
//---- Линии сопротивления и поддержки
if(Bars<Limit) Limit=Bars-nPeriod;
for(nCurBar=Limit; nCurBar>0; nCurBar--)
   {
   if(Low[nCurBar+(nPeriod-1)/2] == Low[Lowest(NULL,0,MODE_LOW,nPeriod,nCurBar)])
      {
      s6=s5; s5=s4; s4=s3; s3=s2; s2=s1; s1=Low[nCurBar+(nPeriod-1)/2];
      }
   if(High[nCurBar+(nPeriod-1)/2] == High[Highest(NULL,0,MODE_HIGH,nPeriod,nCurBar)])
      {
      r6=r5; r5=r4; r4=r3; r3=r2; r2=r1; r1=High[nCurBar+(nPeriod-1)/2];
      }
//----
   wso[nCurBar]=100*(1-(MathFloor(s1/Close[nCurBar])+
               MathFloor(s2/Close[nCurBar])+
               MathFloor(s3/Close[nCurBar])+
               MathFloor(s4/Close[nCurBar])+
               MathFloor(s5/Close[nCurBar])+
               MathFloor(s6/Close[nCurBar]))/6);
	if(wso[nCurBar]==0) wso[nCurBar]=wso[nCurBar]+1;
	if(wso[nCurBar]==100) wso[nCurBar]=wso[nCurBar]-1;

   wro[nCurBar]=100*(1-(MathFloor(r1/Close[nCurBar])+
               MathFloor(r2/Close[nCurBar])+
               MathFloor(r3/Close[nCurBar])+
               MathFloor(r4/Close[nCurBar])+
               MathFloor(r5/Close[nCurBar])+
               MathFloor(r6/Close[nCurBar]))/6);
	if(wro[nCurBar]==0) wro[nCurBar]=wro[nCurBar]+1;
	if(wro[nCurBar]==100) wro[nCurBar]=wro[nCurBar]-1;
   }
//----
   return(0);
  }
 
Но в целом - все просто :)

Гыгы :) кончится, как все у тебя, полуфабрикатом недалеким ;)


Через неделю будет :P
Причина обращения: