MetaTrader4
如何使用指标模板检测背离——MetaTrader 4交易必备工具
指标模板如何运作? 这款指标模板用于绘制基于你选择的振荡器的背离信号。 根据你选择的振荡器(无论是CCI、RSI还是自定义指标),你可以修改以下代码部分: /////////////////////////////////////////////
//将指标数据加载到指标缓冲区
//你可以轻松将RSI替换为任何你喜欢的指标
int BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,1);
for(int i=BARS;i>=0;i--)
{
indicatorBuffer[i]=iRSI(_Symbol, PERIOD_CURRENT, 14, PRICE_CLOSE, i);
}
//指标加载部分结束
/////////////////////////////////////////////
信号缓冲区 此指标有四个不同的缓冲区,用于跟踪生成的信号。只要对应的缓冲区有非空值,就会产生信号。 SetIndexBuffer(3,bull_reg_divBuffer);
SetIndexBuffer(4,bear_reg_divBuffer);
SetIndexBuffer(5,bull_hid_divBuffer);
SetIndexBuffer(6,bear_hid_divBuffer); 输入参数部分 input int pivots_period=5; //寻找指标转折点的周期
input int alert_confirm_candles=1; //#蜡烛确认数(0=禁用提醒)
在indicatorBuffer中寻找转折高点和转折低点依赖于pivots_period的输入。你选择的值越大,它将搜索更大的波动以寻找可能的背离。 另一个输入是alert_confirm_candles,它定义了等待多少根蜡烛来确认信号。背离指标大多具有滞后性,容易发出虚假信号。你选择的值越大,它将等待更长时间,从而减少虚假信号的数量。这是一个关于你希望获得及时信号还是确认信号的折中选择。 通常你不应该将pivots_period设置为小于2。 重绘问题 依赖于转折点计算的指标必须等待pivots_period的时间才能确认最近的高点/低点。因此,这个指标需要在时间上重绘信号,直到pivots_period。 BARS=MathMax(rates_total-IndicatorCounted()-pivots_period,pivots_period);
for(int i=BARS;i>=0;i--)
{
PHBuffer[i]=pivothigh(indicatorBuffer, pivots_period, pivots_period, i);
PLBuffer[i]=pivotlow(indicatorBuffer, pivots_period, pivots_period, i);
bull_reg_divBuffer[i]=BullRegDiv(i);
bear_reg_divBuffer[i]=BearRegDiv(i);
bull_hid_divBuffer[i]=BullHidDiv(i);
bear_hid_divBuffer[i]=BearHidDiv(i);
}
2024.03.10