Better Volume Indicator For MT5
L' Better Volume Indicator For MT5 è noto come gli utenti degli operatori tecnici. Utilizza l'algoritmo dell'indicatore del volume insieme ai dati SMA per l'analisi dell'andamento chiave. Chi si affida a questo metodo di trading manuale può avere un grande vantaggio con questo strumento in quanto può mostrare l'andamento dei prezzi con l'alto livello di precisione.
Finché il prezzo sta andando a nord, si verificheranno frequenti barre verdi nella cornice dell'indicatore. Al contrario, le barre rosse frequenti verranno stampate nella cornice dell'indicatore fino a quando i venditori spingono il prezzo verso sud. Devi trovare le configurazioni del tuo ordine nella fornitura critica o livello di resistenza e quindi la barra dell'indicatore dovrebbe essere utilizzata.
Ma assicurati di non rovinare il grafico usando alcuni altri indicatori di volume insieme a questo strumento. Mantieni le cose semplici e collega le barre nel riquadro D1. Usa l'account di prova se le cose sembrano difficili all'inizio.
Installazione della Better Volume Indicator For MT5
Dopo aver scaricato l'indicatore tramite il modulo sopra è necessario decomprimere il file zip. Quindi è necessario copiare il file Minions.BetterVolume.mq5 nella cartella MQL5Indicators dell'installazione di MT5 . Dopodiché, riavvia MT5 e sarai in grado di vedere l'indicatore nell'elenco degli indicatori.
Parametri della Better Volume Indicator For MT5
Better Volume Indicator For MT5 ha i parametri 2 da configurare.
input ENUM_APPLIED_VOLUME inpAppliedVolume = VOLUME_REAL; // Volume Type
input int inpBarsToAnalyze = 20; // N past bars to analyze
Buffer della Better Volume Indicator For MT5
Better Volume Indicator For MT5 fornisce buffer 2 .
SetIndexBuffer( 0, bufferVolume, INDICATOR_DATA );
SetIndexBuffer( 1, bufferColors, INDICATOR_COLOR_INDEX );
Parti principali del codice
int OnCalculate(const int rates_total,
const int prev_calculated,
const datetime &time[],
const double &open[],
const double &high[],
const double &low[],
const double &close[],
const long &tick_volume[],
const long &volume[],
const int &spread[])
{
int start=prev_calculated-1;
long SMA;
if (rates_total lt 2) { return(0); } // check for rates total
if (start lt 1) { start=1; } // correct position
// calculates the volumes histogram...
for(int i=start; i lt rates_total && !IsStopped(); i++) {
bufferVolume[i] = (double)(paramAppliedVolume==VOLUME_REAL ? volume[i] : tick_volume[i]); // calculates the indicator...
if(paramAppliedVolume==VOLUME_REAL) {
SMA = SMAOnArray(volume, paramBarsToAnalyze, i );
} else {
SMA = SMAOnArray(tick_volume, paramBarsToAnalyze, i );
}
// change candle colors accordingly...
if (open[i] lt close[i] && bufferVolume[i] gt SMA) { bufferColors[i]=1.0; }
else if (open[i] gt close[i] && bufferVolume[i] gt SMA) { bufferColors[i]=2.0; }
else { bufferColors[i]=0.0; }
}
return(rates_total);
}
//+------------------------------------------------------------------+
//| Calculates a SMA over an indicator array... |
//+------------------------------------------------------------------+
long SMAOnArray( const long &array[], int period, int position ) {
long sum = 0;
if (position-period lt = 0) { return false; }
for (int i = position-period+1; i lt =position; i++) {
sum += array[i];
}
return sum / period;
}
//+------------------------------------------------------------------+