Oggi parliamo di un'interessante modifica all'indicatore Giorni della settimana, che ora permette di visualizzare ogni giorno con un colore diverso. Questo può aiutarti a migliorare la tua analisi e a prendere decisioni più informate nel trading.



Per utilizzare il DRAW_COLOR_HISTOGRAM, sono necessari due buffer: uno per i valori chiamato HistogramBuffer e uno per i colori chiamato HistogramColors.
//+------------------------------------------------------------------+//| Giorni della settimana colorati.mq5 |//| Copyright © 2018, Vladimir Karputov |//| http://wmua.ru/slesar/ |//+------------------------------------------------------------------+#property copyright"Copyright © 2018, Vladimir Karputov"#property link "http://wmua.ru/slesar/"#property version "1.000"#property indicator_separate_window#property description"Giorni della settimana sotto forma di istogramma colorato"#property indicator_separate_window#property indicator_buffers2#property indicator_plots 1//--- plot Istogramma #property indicator_label1 "Colori Giorni"#property indicator_type1 DRAW_COLOR_HISTOGRAM//--- definizione 8 colori per le sezioni#property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen#property indicator_style1 STYLE_SOLID#property indicator_width1 2//--- buffer dell'indicatore double HistogramBuffer[];double HistogramColors[]; //+------------------------------------------------------------------+//| Funzione di inizializzazione dell'indicatore personalizzato |//+------------------------------------------------------------------+
I colori sono definiti nella seguente riga:
//--- definizione 8 colori per le sezioni#property indicator_color1 clrCyan,clrRed,clrYellowGreen,clrBlue,clrYellow,clrNavy,clrGold,clrMediumSeaGreen
Qui, clrCyan ha indice "0", clrRed ha indice "1", e così via.
La gestione dei colori dell'istogramma avviene assegnando un indice di colore a ciascun indice del buffer HistogramColors:
switch(STime.day_of_week) { case 0: HistogramBuffer[i]=0; HistogramColors[i]=0; break; case 1: HistogramBuffer[i]=1; HistogramColors[i]=1; break; case 2: HistogramBuffer[i]=2; HistogramColors[i]=2; break; case 3: HistogramBuffer[i]=3; HistogramColors[i]=3; break; case 4: HistogramBuffer[i]=4; HistogramColors[i]=4; break; case 5: HistogramBuffer[i]=5; HistogramColors[i]=5; break; case 6: HistogramBuffer[i]=6; HistogramColors[i]=6; break; }

Commento 0