Вопрос к знатокам:стоит ли использовать такой код для определнния дивергенции?

 
Приветствую!
При написании советника возникла необходимость определения признаков дивергенции(т.е. номеров баров которым будут соответствовать максимумы и минимумы и по ним значений осциляторов).
Картинок описывающих данное чудо придостаточно, а вот кода что-то я найти несмог(да и нехотел). Вот подумал и сделал сам:
//+----------------------------------------------------------------------------------------------------------------------------+*/
//| Блок определения дивергенции                                                                                               |
//+----------------------------------------------------------------------------------------------------------------------------+   
  
  int diver_period=24;
  
  max1=0;
  max2=0;
  max3=0;
  min1=0;
  min2=0;
  min3=0; 
//-------  
  i_max2=iHighest(NULL,0,MODE_HIGH,diver_period,2);
  i_max3=iHighest(NULL,0,MODE_HIGH,diver_period,i_max2+1);
    
  if(High[1]>High[i_max2])
  max1=High[1];
  
  if(max1!=0) 
  max2=High[i_max2];
  
  if(max2!=0 && High[i_max2]>High[i_max3]) 
  max3=High[i_max3];
//-------    
  i_min2=iLowest(NULL,0,MODE_LOW,diver_period,2);
  i_min3=iLowest(NULL,0,MODE_LOW,diver_period,i_min2+1);
      
  if(Low[1]<Low[i_min2])
  min1=Low[1];
  
  if(min1!=0)  
  min2=Low[i_min2];
  
  if(min2!=0 && Low[i_min2]<Low[i_min3])  
  min3=Low[i_min3];     
//-------  
  st_max2=iStochastic(NULL,0,6,2,1,MODE_SMA,0,MODE_MAIN,i_max2);
  st_min2=iStochastic(NULL,0,6,2,1,MODE_SMA,0,MODE_MAIN,i_min2);
  st_max3=iStochastic(NULL,0,6,2,1,MODE_SMA,0,MODE_MAIN,i_max3);
  st_min3=iStochastic(NULL,0,6,2,1,MODE_SMA,0,MODE_MAIN,i_min3);
  
  rs_max2=iRSI(NULL,0,9,PRICE_CLOSE,i_max2);
  rs_min2=iRSI(NULL,0,9,PRICE_CLOSE,i_min2);
  rs_max3=iRSI(NULL,0,9,PRICE_CLOSE,i_max3);
  rs_min3=iRSI(NULL,0,9,PRICE_CLOSE,i_min3);
         
  Print("max3=",max3,", max2=",max2,", max1=",max1,", min3=",min3,", min2=",min2,", min1=",min1);
//+----------------------------------------------------------------------------------------------------------------------------+
//| Дивергенция стохастики или RSI                                                                                             |
//+----------------------------------------------------------------------------------------------------------------------------+
В общем вопрос у меня такой мы видим на картинке, что первый максимум цены сменяется минимумом затем идёт второй максимум, мой код неопределяет средний минимум, а только максимумы - является ли это ошибкой(т.к. за эти максимумы могут быть приняты подряд стоящие бары без подтверждения минимумом), а так же нужно ли определять средний минимум на индикаторе.
 
а комментарии к каждой строке ...
 

Меня вот тоже мучает данный вопрос, и я даже его поднимал, но как то мало кто отреагировал,

Неужели никто не занимал дивергенцией?

 

Слегка затупил - а на индюке чего, мин это или макс не проверяется?

Думаю проще идти снизу - найти минмаксы на индюке и снести их в чарты

Но красиво будет в основном на истории - для того, чтоб понять, что это локал - нужно еще два бара после узла. В результате запаздывание все скушает (чаще всего)

 
Bookkeeper писал (а) >>

Слегка затупил - а на индюке чего, мин это или макс не проверяется?

Думаю проще идти снизу - найти минмаксы на индюке и снести их в чарты

Но красиво будет в основном на истории - для того, чтоб понять, что это локал - нужно еще два бара после узла. В результате запаздывание все скушает (чаще всего)

Больше интересует алгоритм автоматического определения дивергенции

так на картинках конечно красиво) и водно, а вот как закодить это..


к томуже конечно есть запаздывание, на дневиках две свечки это очень много) я думаю тут нужно смотреть разные таймфреймы

 
scorpionk писал (а) >>

Меня вот тоже мучает данный вопрос, и я даже его поднимал, но как то мало кто отреагировал,

Неужели никто не занимал дивергенцией?

Кто-то занимался дивергенцией:)

http://lemyx.narod.ru/diver.html

 
Lyfesh писал (а) >>

Кто-то занимался дивергенцией:)

http://lemyx.narod.ru/diver.html

Ценная ссылка

 
scorpionk писал (а) >>

Ценная ссылка

Сылка то ценная да вот ни копейки на это чудо спускать неохото - можно ведь и самому замутить - хотя бы для получения дополнительного опыта!

 
z_e_e_d писал (а) >>

Сылка то ценная да вот ни копейки на это чудо спускать неохото - можно ведь и самому замутить - хотя бы для получения дополнительного опыта!

судя по рисункам не такой он и хороший индикатор)

 
Bookkeeper писал (а) >>

Слегка затупил - а на индюке чего, мин это или макс не проверяется?

Думаю проще идти снизу - найти минмаксы на индюке и снести их в чарты

Но красиво будет в основном на истории - для того, чтоб понять, что это локал - нужно еще два бара после узла. В результате запаздывание все скушает (чаще всего)

Хорошая идея!

А данный индюк выложить можешь?

 

еще как занимался

но автор ветки комментарии писать не хочет

и я не буду

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