Better Volume Indicator For MT5
Better Volume Indicator For MT5 được gọi là người dùng của các nhà giao dịch kỹ thuật. Nó sử dụng thuật toán của chỉ báo âm lượng cùng với dữ liệu SMA để phân tích xu hướng chính. Những người dựa vào phương thức giao dịch thủ công này có thể có lợi thế lớn với công cụ này vì nó có thể hiển thị xu hướng giá với mức độ chính xác cao.
Miễn là giá sẽ đi về phía bắc, bạn sẽ trải nghiệm các thanh màu xanh lá cây thường xuyên trong khung chỉ báo. Ngược lại, các thanh màu đỏ thường xuyên sẽ được in trong khung chỉ báo miễn là người bán đang đẩy giá về phía nam. Bạn phải tìm các thiết lập đơn hàng của mình ở mức cung cấp hoặc mức kháng cự quan trọng và sau đó sử dụng thanh chỉ báo.
Nhưng hãy chắc chắn rằng bạn không làm rối biểu đồ bằng cách sử dụng thêm một vài chỉ số âm lượng cùng với công cụ này. Giữ mọi thứ đơn giản và liên quan các thanh trong khung D1. Sử dụng tài khoản thực hành nếu mọi thứ có vẻ khó khăn khi bắt đầu.
Cài đặt Better Volume Indicator For MT5
Sau khi bạn tải xuống chỉ báo qua biểu mẫu ở trên, bạn cần giải nén tệp zip. Sau đó, bạn cần sao chép tệp Minions.BetterVolume.mq5 vào thư mục MQL5Indicators cài đặt MT5 của bạn. Sau đó, vui lòng khởi động lại MT5 và sau đó bạn sẽ có thể thấy chỉ báo trong danh sách các chỉ báo.
Các tham số của Better Volume Indicator For MT5
Better Volume Indicator For MT5 có các tham số 2 để cấu hình.
input ENUM_APPLIED_VOLUME inpAppliedVolume = VOLUME_REAL; // Volume Type
input int inpBarsToAnalyze = 20; // N past bars to analyze
Bộ đệm của Better Volume Indicator For MT5
Better Volume Indicator For MT5 cung cấp bộ đệm 2 .
SetIndexBuffer( 0, bufferVolume, INDICATOR_DATA );
SetIndexBuffer( 1, bufferColors, INDICATOR_COLOR_INDEX );
Các bộ phận chính của bộ luật
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;
}
//+------------------------------------------------------------------+