Bull&Bear Candles

Author: Author Vincenzo Augello - Settembre 2022
0 Views
0 Downloads
0 Favorites
Bull&Bear Candles
ÿþ//+------------------------------------------------------------------+

//|                                            Bull&Bear Candles.mq5 |

//|                                             https://www.mql5.com |

//+------------------------------------------------------------------+

#property copyright   "Author Vincenzo Augello - Settembre 2022"

#property link        "https://www.mql5.com"

#property version     "1.00"

#property description "free of copyright to the MQL community"



MqlRates arrayPriceData [];

// Attraverso la struttura predefinita MqlRates viene creata uan array adibita a salvare i valori dello storico prezzi.

// Più semplicemente possiamo dire di creare una sorta di adatta a memorizzare i prezzi di apertura, massimo, minimo e chiusura 

// che corrispondono ai dati dello storico prezzi (OHLC).

//+------------------------------------------------------------------+

//| Expert initialization function                                   |

//+------------------------------------------------------------------+

int OnInit() {

  

  ArraySetAsSeries(arrayPriceData,true);

   // Questa istruzione serve ad impostare l'array arrayPriceData come una serie storica dei prezzi in cui

   // l'indice zero corrisponde all'elemento più recente.E' un'impostazione che va fatta una sola volta, 

   // quindi può essere benissimo inserita qui in OnInit();

//---

   return(INIT_SUCCEEDED);

  }



//+------------------------------------------------------------------+

//| Expert deinitialization function                                 |

//+------------------------------------------------------------------+

void OnDeinit(const int reason)

  {

  Print("EXIT");

  }

//+------------------------------------------------------------------+

//| Expert tick function                                             |

//+------------------------------------------------------------------+

void OnTick(){

  

  int i           = 0;

  double apertura = 0;

  double chiusura = 0;

  int candleV     = 0;

  int candleR     = 0;

  double media    = 0;

  double somma    = 0;    

  

  int nrBarreMemorizzate = CopyRates(_Symbol,_Period,0,40, arrayPriceData);

   

  while (i < 40) // Ciclo settabile che deve corrispondere al numero degli elementi dell'array

                 // posto alla riga precedente (in verde dopo lo zero) che considera il numero 

                 // delle candele da controllare. Default 40 candele.   

  {

 

  apertura = arrayPriceData[i].open;

  chiusura = arrayPriceData[i].close;

  somma    = somma + arrayPriceData[i].close; 

    

  if (chiusura > apertura)

      candleV = candleV + 1; 

  else

      candleR = candleR + 1;   

 

  i = i + 1;

  }

    

  media = somma / i;

  

  Comment("Candele verdi " + candleV + " Candele rosse " + candleR + " Totale candele " + i + " Prezzo medio : " + media);

  

  Print( _Symbol + " Candele verdi : " + candleV + " Candele rosse: " + candleR + " Totale candele: " + i + " Prezzo medio : " + media);

  

  Sleep(30000); 

  }

//+------------------------------------------------------------------+

Comments