Para utilizar el indicador RSI Kernel Optimized para EA, puede consultar las instrucciones a continuación:
a. Los buffers en el indicador y sus índices:
b. Parámetros de entrada requeridos:
MT4 Versión 1.15:
doble getValueRSIKernelOptimizado(cadena fSímbolo, //Símbolo (rellene _Símbolo para usar el símbolo precise)
ENUM_TIMEFRAMES Periodo de tiempo, //Período de tiempo (llene PERIOD_CURRENT para usar el período de tiempo precise)
entero Índice, //búfer de índice (ver sección a)
entero Cambio //Shift (normalmente = 1 para obtener el valor de la barra anterior) ) { string IndicatorCustomName = “MarketRSI Kernel Optimized MT4 with Scanner”;//Indicador de ruta
devolver iPersonalizado(fSymbol, Timeframe, indicadorCustomName, iMaxBarsBack,
“”rsiLengthInput, rsiSourceInput, highPivotLen, lowPivotLen,
“”activaciónThresholdStr, KDEKernel, KDEBandwidth, KDEStep,
FALSO, FALSO, 0, 0, 0, 0, 0, 0, 0, 0, 0, “”, FALSO, FALSO, FALSO, FALSO, FALSO, FALSO, “”, “”, FALSO, “”, 0, 0, “”, FALSO, 0, 0, FALSO, 0, 0, “”, 0, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, “”, FALSO, 0, 0, FALSO, 0, 0, 0Índice, Cambio); }
Versión MT5 1.15 :
doble getValueRSIKernelOptimizado(cadena fSímbolo,
ENUM_TIMEFRAMES Periodo de tiempo,
entero Índice,
entero Cambio ) {
cadena indicadorNombrePersonalizado = “MarketRSI Kernel optimizado con escáner para MT5”;
entero mango = iPersonalizado(fSymbol, Timeframe, indicadorCustomName, iMaxBarsBack,
“”rsiLengthInput, rsiSourceInput,
“”highPivotLen, lowPivotLen,
“”activaciónThresholdStr, KDEKernel, KDEBandwidth, KDEStep,
FALSO,
FALSO,
0, 0, 0, clrNINGUNO, 0, clrNINGUNO, 0, clrNINGUNO, 0, clrNINGUNO, “”, FALSO, FALSO, FALSO, FALSO, FALSO, FALSO, “”, “”, FALSO, “”, 0, 0, “”, FALSO, 0, 0, FALSO, 0, 0, “”, 0, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, clrNINGUNO, “”, FALSO, 0, 0, FALSO, 0, 0, 0);
si(manejar < 0) {
devolver(EMPTY_VALUE); }
demás{
doble buf[];
cambiar(Índice) {
caso 0:
si(CopiarBuffer(manejar, 0Cambio, 1buf) > 0)
devolver(buf[0]);
romper;
caso 1:
si(CopiarBuffer(manejar, 1Cambio, 1buf) > 0)
devolver(buf[0]);
romper;
caso 2:
si(CopiarBuffer(manejar, 2Cambio, 1buf) > 0)
devolver(buf[0]);
romper;
caso 3:
si(CopiarBuffer(manejar, 3Cambio, 1buf) > 0)
devolver(buf[0]);
romper;
caso 4:
si(CopiarBuffer(manejar, 4Cambio, 1buf) > 0)
devolver(buf[0]);
romper;
por defecto:
devolver EMPTY_VALUE;
romper; } }
devolver EMPTY_VALUE; }
d. Usar getValueRSIKernelOptimizado función para EA
Utilice la función getValueRSIKernelOptimized para obtener el valor necesario para utilizar en el EA.
Para confirmar que el búfer tiene un valor, debe compararlo con EMPTY_VALUE.
A continuación se muestran algunos ejemplos para confirmar que los buffers de barra anteriores (shift = 1) tienen un valor:
0 – Señal de compra (flecha)
booleano comprarSeñal = getValueRSIKernelOptimized(_Símbolo, PERIODO_ACTUAL, 0, 1) != EMPTY_VALUE;
1 – Señal de venta (flecha)
booleano venderSignal = getValueRSIKernelOptimized(_Símbolo, PERIODO_ACTUAL, 1, 1) != EMPTY_VALUE;
2 – Puntos alcistas
booleano puntos alcistas = getValueRSIKernelOptimized(_Símbolo, PERIODO_ACTUAL, 2, 1) != EMPTY_VALUE;
3 – Puntos bajistas
booleano puntos bajistas = getValueRSIKernelOptimized(_Símbolo, PERIODO_ACTUAL, 3, 1) != EMPTY_VALUE;
Esperamos que este artículo pueda ayudarle a automatizar más fácilmente las señales del indicador RSI Kernel Optimized en EA.
Puedes descargar el indicador en: