gorillych





// ---------------------------------------------------------------------------
//  Èíäèêàòîð ñêîðîñòè íà ìèíóòêàõ ïî ìåòîäå Gorillych-à
//  http://articles.mql4.com/ru/212
//
//  Àâòîòîðãîâëÿ, ìíå êàæåòñÿ, ïðèçâàíà â ïåðâóþ î÷åðåäü çàñòàâèòü ìàøèíó 
//  äåëàòü òî, ÷åãî íåâîçìîæíî äîáèòüñÿ ðó÷íîé òîðãîâëåé: ñòàáèëüíîñòü, 
//  ïñèõîëîãè÷åñêàÿ óñòîé÷èâîñòü, áûñòðîòà ðåàêöèè íà ñèòóàöèþ, 
//  íåîãðàíè÷åííàÿ âûíîñëèâîñòü è ò.ï.
//  Ïðèâåäó ïðèìåð. Íà ÷åìïèîíàòå 2006 ãîäà ó ìåíÿ ó÷àñòâîâàë ýêñïåðò, ó 
//  êîòîðîãî îñíîâíûì, íàâåðíîå, äîñòîèíñòâîì áûëî, ÷òî îí ìåòîäàìè 
//  òåõíè÷åñêîãî àíàëèçà ìîã òîðãîâàòü íà íîâîñòÿõ. Ïðè òîì, ÷òî åãî 
//  ïî-îïðåäåëåíèþ íåâîçìîæíî áûëî òåñòèðîâàòü íà èñòîðèè íà ÷åìïèîíàòå îí 
//  ïåðâîå âðåìÿ ïîêàçûâàë óäèâèòåëüíî õîðîøèå ðåçóëüòàòû. Íà åãî 
//  îêîí÷àòåëüíîì ðåçóëüòàòå ñêàçàëèñü åù¸ íåêîòîðûå äîïîëíèòåëüíûå îøèáî÷íûå 
//  èäåè â àëãîðèòìå åãî ðàáîòû.
//  Íå áóäó ïðèâîäèòü âåñü êîä ýêñïåðòà, íî îñíîâíîé èäååé åãî áûë ðàñ÷åò 
//  íåêîåãî çíà÷åíèÿ Pv=(h-l)/Point/v; âíóòðè ìèíóòíîãî áàðà. È åñëè ýòî 
//  çíà÷åíèå ïðåâûøàëî 0,33 è îäíîâðåìåííî îáúåì ïðåâûøàë 12 (ïûòàëñÿ íàéòè 
//  ýòè çíà÷åíèÿ ïðè òåñòèðîâàíèè EURUSD) òî îòêðûâàëàñü ñäåëêà. 
//  Åñëè C>O BUY, åñëè C<O SELL. SL=50. TS=95.
//  Íà ñëîâàõ èäåÿ áûëà â òîì, ÷òî åñòü íåêîòîðûå áàðû, ïîêàçûâàþùèå 
//  ñàíòèìåíò ïîñëåäóþùåãî äâèæåíèÿ. Êîãäà, íàïðèìåð, áûêè ïðåâîñõîäÿò 
//  ìåäâåäåé. Îáúåì, âëîæåííûé â áàð íà÷èíàåò åãî ðàñòÿãèâàòü, è ïðè 
//  äîñòàòî÷íîì ïîðîãîâîì îáúåìå ïîÿâëÿåòñÿ òðåíä.
//  Â ñòàòüå íà ïðèâåäåííîì ïåðâîì ãðàôèêå âèäåí áàð íîâîñòåé. 
//  Òàê åãî ìîæíî òîðãîâàòü ïîäîáíûì ìåòîäîì â îáå ñòîðîíû, óäà÷íî 
//  ïîäîáðàâ SL è ÒS.
// ---------------------------------------------------------------------------

#property indicator_separate_window
#property indicator_buffers          1
#property indicator_color1           C'0,255,0'
#property indicator_minimum         -20
#property indicator_maximum          20
#property indicator_style1           0
#property indicator_level1           0

double value[];

int init() {
  IndicatorDigits(3);
  IndicatorShortName("Gorillych");

  if(!SetIndexBuffer(0, value)) {
    Alert("SetIndexBuffer() FAILED");
  }

  return(0);
}

int start() {
  int i, left = Bars - IndicatorCounted();

  for(i = 0; i < left; i++) {
    value[i] = ((High[i] - Low[i]) / Point / Volume[i]) *
      misc_sign(Close[i] - Open[i]);
  }

  return(0);
}

// Âîçâðàùàåò çíàê ÷èñëà (-1;0;1)
int misc_sign(double value) {
  if(value > 0) {
    return(1);
  } else if(value < 0) {
    return(-1);
  }
  
  return(0);
}





Sample





Analysis



Market Information Used:

Series array that contains the highest prices of each bar
Series array that contains the lowest prices of each bar
Series array that contains tick volumes of each bar
Series array that contains close prices for each bar
Series array that contains open prices of each bar


Indicator Curves created:



Indicators Used:



Custom Indicators Used:

Order Management characteristics:

Other Features:

It issuies visual alerts to the screen