Forex Reversal Indicator para MT4
El Forex Reversal Indicator es un indicador técnico que se utiliza para identificar posibles puntos de reversión en la tendencia del mercado.
Es una herramienta útil que puede ser utilizada por traders de todos los niveles de experiencia, pero es importante utilizarla con precaución y siempre verificar la señal con otras herramientas de análisis técnico antes de tomar una decisión comercial.
¿Qué es el Forex Reversal Indicator?
El Forex Reversal Indicator es un indicador técnico que se utiliza para identificar posibles puntos de reversión en la tendencia del mercado. El indicador funciona trazando puntos de color turqueza rodeados de anillos rojos y azules en el gráfico de precios.
Los anillos rojos indican cambio bajista y los azules cambio alcista en los puntos turqueza.
¿Cómo funciona el Forex Reversal Indicator?
El Forex Reversal Indicator funciona considerando tres marcos de tiempo diferentes. El primer marco de tiempo examina la tendencia a largo plazo, ya que es esencial saber completamente hacia dónde se dirige el mercado.
El segundo marco de tiempo analiza la tendencia a mediano plazo, mientras que el tercer marco de tiempo examina la tendencia a corto plazo.
El indicador puede encontrar puntos de reversión potenciales al enfocarse en tres marcos de tiempo. Estos puntos coinciden con las tres tendencias, lo que los hace más confiables.
¿Quién debería usar el Forex Reversal Indicator?
El Forex Reversal Indicator es una herramienta que puede ser utilizada por traders de todos los niveles de experiencia. Sin embargo, es más adecuado para los traders experimentados que comprenden los conceptos básicos del análisis técnico.
El indicador puede ser una herramienta valiosa para identificar posibles puntos de reversión, pero no debe utilizarse como una señal comercial única. Los traders deben siempre verificar la señal con otras herramientas de análisis técnico antes de tomar una decisión comercial.
¿Cómo usar el Forex Reversal Indicator?
Hay varias formas de usar el indicador de reversión de Forex. Una forma común es utilizar el indicador para identificar posibles puntos de entrada y salida.
Un trader puede esperar a que el indicador forme un anillo rojo para vender o un anillo azul para comprar.
Otra forma de usar el indicador de reversión de Forex es para confirmar señales comerciales de otras herramientas de análisis técnico. Por ejemplo, un comerciante podría utilizar el indicador para confirmar una señal de compra de un indicador de media móvil o un indicador de Soportes y Resistencias.
Ventajas y desventajas del Forex Reversal Indicator
El Forex Reversal Indicator tiene varias ventajas, incluyendo:
- Es una herramienta fácil de usar.
- Puede ser utilizado por traders de todos los niveles de experiencia.
- Puede ser utilizado para identificar posibles puntos de reversión en la tendencia del mercado.
Sin embargo, el Forex Reversal Indicator también tiene algunas desventajas, incluyendo:
- Puede ser propenso a las señales falsas ya que repinta.
- No debe utilizarse como una señal comercial única.
- Los traders deben siempre verificar la señal con otras herramientas de análisis técnico antes de tomar una decisión comercial.
Conclusión
El Forex Reversal Indicator es una herramienta útil que puede ser utilizada por traders de todos los niveles de experiencia. Sin embargo, es importante utilizar el indicador con precaución y siempre verificar la señal con otras herramientas de análisis técnico antes de tomar una decisión comercial.
//+-----------------------------------------------------------------------+ //| MODIFICADO POR:https://indicadorespro.com/ | //| | //|_________________________________________________o0o___(_)___o0o_______| //|_____|_____|_____|_____|_____|_____|_____|_____|_____|_____|_____|_____| //| by @inkatrader | //|-----------------------------------------------------------------------| //| Programming language: MQL4 | //| Development platform: MetaTrader 4 | //| Soporte: https://t.me/IndicadoresProfx | //| Telegram: https://t.me/IndicadoresProfx | //+-----------------------------------------------------------------------+ #property copyright "Copyright 2023" #property link "https://indicadorespro.com/" #property indicator_chart_window #property indicator_buffers 6 #property indicator_color1 CLR_NONE #property indicator_color2 CLR_NONE #property indicator_color3 Aqua #property indicator_color4 Aqua #property indicator_color5 DodgerBlue #property indicator_color6 Red extern double Period1 = 12.0; extern double Period2 = 34.0; extern double Period3 = 69.0; extern string Dev_Step_1 = "5,3"; extern string Dev_Step_2 = "5,3"; extern string Dev_Step_3 = "5,3"; extern int Symbol_1_Kod = 172; extern int Symbol_2_Kod = 174; extern int Symbol_3_Kod = 82; extern string _____ = ""; extern bool Box_Alerts = FALSE; extern bool Email_Alerts = FALSE; extern bool Sound_Alerts = TRUE; extern bool Alert_Lv1 = FALSE; extern bool Alert_Lv2 = FALSE; extern bool Alert_Lv3 = TRUE; string Gs_168 = "stage one level high.wav"; string Gs_176 = "stage one level low.wav"; string Gs_184 = "stage two level high.wav"; string Gs_192 = "stage two level low.wav"; string Gs_200 = "stage three level high.wav"; string Gs_208 = "stage three level low.wav"; double G_ibuf_216[]; double G_ibuf_220[]; double G_ibuf_224[]; double G_ibuf_228[]; double G_ibuf_232[]; double G_ibuf_236[]; int Gi_unused_240; int Gi_unused_244; int Gi_unused_248; int Gi_252; int Gi_256; int Gi_260; int Gi_264; int Gi_268; int Gi_272; string Gs_276; string Gs_284; string Gs_292; int G_digits_300; int G_timeframe_304; bool Gi_308; bool Gi_312; bool Gi_316; int G_bars_320 = -1; int Gi_unused_324 = 65535; // E37F0136AA3FFAF149B351F6A4C948E9 int init() { string Lsa_0[256]; int Lia_12[]; for (int index_4 = 0; index_4 < 256; index_4++) Lsa_0[index_4] = CharToStr(index_4); int str2int_8 = StrToInteger(Lsa_0[67] + Lsa_0[111] + Lsa_0[112] + Lsa_0[121] + Lsa_0[32] + Lsa_0[82] + Lsa_0[105] + Lsa_0[103] + Lsa_0[104] + Lsa_0[116] + Lsa_0[32] + Lsa_0[169] + Lsa_0[32] + Lsa_0[75] + Lsa_0[97] + Lsa_0[122] + Lsa_0[97] + Lsa_0[111] + Lsa_0[111] + Lsa_0[32] + Lsa_0[50] + Lsa_0[48] + Lsa_0[49] + Lsa_0[49] + Lsa_0[32]); G_timeframe_304 = Period(); Gs_284 = f0_3(G_timeframe_304); Gs_276 = Symbol(); G_digits_300 = Digits; Gs_292 = "tbb" + Gs_276 + Gs_284; if (Period1 > 0.0) Gi_unused_240 = MathCeil(Period1 * Period()); else Gi_unused_240 = 0; if (Period2 > 0.0) Gi_unused_244 = MathCeil(Period2 * Period()); else Gi_unused_244 = 0; if (Period3 > 0.0) Gi_unused_248 = MathCeil(Period3 * Period()); else Gi_unused_248 = 0; if (Period1 > 0.0) { SetIndexStyle(0, DRAW_ARROW); SetIndexArrow(0, Symbol_1_Kod); SetIndexBuffer(0, G_ibuf_216); SetIndexEmptyValue(0, 0.0); SetIndexStyle(1, DRAW_ARROW); SetIndexArrow(1, Symbol_1_Kod); SetIndexBuffer(1, G_ibuf_220); SetIndexEmptyValue(1, 0.0); } if (Period2 > 0.0) { SetIndexStyle(2, DRAW_ARROW); SetIndexArrow(2, Symbol_2_Kod); SetIndexBuffer(2, G_ibuf_224); SetIndexEmptyValue(2, 0.0); SetIndexStyle(3, DRAW_ARROW); SetIndexArrow(3, Symbol_2_Kod); SetIndexBuffer(3, G_ibuf_228); SetIndexEmptyValue(3, 0.0); } if (Period3 > 0.0) { SetIndexStyle(4, DRAW_ARROW); SetIndexArrow(4, Symbol_3_Kod); SetIndexBuffer(4, G_ibuf_232); SetIndexEmptyValue(4, 0.0); SetIndexStyle(5, DRAW_ARROW); SetIndexArrow(5, Symbol_3_Kod); SetIndexBuffer(5, G_ibuf_236); SetIndexEmptyValue(5, 0.0); } int Li_unused_16 = 0; int Li_unused_20 = 0; int Li_24 = 0; if (f0_0(Dev_Step_1, Li_24, Lia_12) == 1) { Gi_256 = Lia_12[1]; Gi_252 = Lia_12[0]; } if (f0_0(Dev_Step_2, Li_24, Lia_12) == 1) { Gi_264 = Lia_12[1]; Gi_260 = Lia_12[0]; } if (f0_0(Dev_Step_3, Li_24, Lia_12) == 1) { Gi_272 = Lia_12[1]; Gi_268 = Lia_12[0]; } return (0); } // 52D46093050F38C27267BCE42543EF60 int deinit() { return (0); } // EA2B2676C28C0DB26D39331A336C6B92 int start() { string Ls_0; if (Bars != G_bars_320) { Gi_308 = TRUE; Gi_312 = TRUE; Gi_316 = TRUE; } if (Period1 > 0.0) f0_1(G_ibuf_216, G_ibuf_220, Period1, Gi_252, Gi_256); if (Period2 > 0.0) f0_1(G_ibuf_224, G_ibuf_228, Period2, Gi_260, Gi_264); if (Period3 > 0.0) f0_1(G_ibuf_232, G_ibuf_236, Period3, Gi_268, Gi_272); string Ls_8 = Gs_276 + " " + Gs_284 + " at " + DoubleToStr(Close[0], G_digits_300); if (Gi_308 && Alert_Lv1) { if (G_ibuf_216[0] != 0.0) { Gi_308 = FALSE; Ls_0 = " FL11: Standby..Level 1 Low; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_176); } if (G_ibuf_220[0] != 0.0) { Gi_308 = FALSE; Ls_0 = " FL11: Standby..Level 1 High; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_168); } } if (Gi_312 && Alert_Lv2) { if (G_ibuf_224[0] != 0.0) { Gi_312 = FALSE; Ls_0 = " FL11: Standby..Level 2 Low; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_192); } if (G_ibuf_228[0] != 0.0) { Gi_312 = FALSE; Ls_0 = " FL11: Standby..Level 2 High; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_184); } } if (Gi_316 && Alert_Lv3) { if (G_ibuf_232[0] != 0.0) { Gi_316 = FALSE; Ls_0 = " FL11: Standby..Level 3 Low; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_208); } if (G_ibuf_236[0] != 0.0) { Gi_316 = FALSE; Ls_0 = " FL11: Standby..Level 3 High; "; if (Box_Alerts) Alert(Ls_0, Ls_8); if (Email_Alerts) SendMail(Ls_0, Ls_8); if (Sound_Alerts) PlaySound(Gs_200); } } G_bars_320 = Bars; return (0); } // BE5275EB85F7B577DA8FD065F994B740 string f0_3(int Ai_0) { string Ls_ret_4; switch (Ai_0) { case 1: Ls_ret_4 = "M1"; break; case 5: Ls_ret_4 = "M5"; break; case 15: Ls_ret_4 = "M15"; break; case 30: Ls_ret_4 = "M30"; break; case 60: Ls_ret_4 = "H1"; break; case 240: Ls_ret_4 = "H4"; break; case 1440: Ls_ret_4 = "D1"; break; case 10080: Ls_ret_4 = "W1"; break; case 43200: Ls_ret_4 = "MN"; } return (Ls_ret_4); } // 3CA4C22A90227AC4A7684A00FAEE2BA5 int f0_1(double &Ada_0[], double &Ada_4[], int Ai_8, int Ai_12, int Ai_16) { double Ld_20; double Ld_28; double Ld_36; double Ld_44; double Ld_52; double Ld_60; for (int Li_68 = Bars - Ai_8; Li_68 >= 0; Li_68--) { Ld_20 = Low[iLowest(NULL, 0, MODE_LOW, Ai_8, Li_68)]; if (Ld_20 == Ld_60) Ld_20 = 0.0; else { Ld_60 = Ld_20; if (Low[Li_68] - Ld_20 > Ai_12 * Point) Ld_20 = 0.0; else { for (int Li_72 = 1; Li_72 <= Ai_16; Li_72++) { Ld_28 = Ada_0[Li_68 + Li_72]; if (Ld_28 != 0.0 && Ld_28 > Ld_20) Ada_0[Li_68 + Li_72] = 0.0; } } } Ada_0[Li_68] = Ld_20; Ld_20 = High[iHighest(NULL, 0, MODE_HIGH, Ai_8, Li_68)]; if (Ld_20 == Ld_52) Ld_20 = 0.0; else { Ld_52 = Ld_20; if (Ld_20 - High[Li_68] > Ai_12 * Point) Ld_20 = 0.0; else { for (Li_72 = 1; Li_72 <= Ai_16; Li_72++) { Ld_28 = Ada_4[Li_68 + Li_72]; if (Ld_28 != 0.0 && Ld_28 < Ld_20) Ada_4[Li_68 + Li_72] = 0.0; } } } Ada_4[Li_68] = Ld_20; } Ld_52 = -1; int Li_76 = -1; Ld_60 = -1; int Li_80 = -1; for (Li_68 = Bars - Ai_8; Li_68 >= 0; Li_68--) { Ld_36 = Ada_0[Li_68]; Ld_44 = Ada_4[Li_68]; if (Ld_36 == 0.0 && Ld_44 == 0.0) continue; if (Ld_44 != 0.0) { if (Ld_52 > 0.0) { if (Ld_52 < Ld_44) Ada_4[Li_76] = 0; else Ada_4[Li_68] = 0; } if (Ld_52 < Ld_44 || Ld_52 < 0.0) { Ld_52 = Ld_44; Li_76 = Li_68; } Ld_60 = -1; } if (Ld_36 != 0.0) { if (Ld_60 > 0.0) { if (Ld_60 > Ld_36) Ada_0[Li_80] = 0; else Ada_0[Li_68] = 0; } if (Ld_36 < Ld_60 || Ld_60 < 0.0) { Ld_60 = Ld_36; Li_80 = Li_68; } Ld_52 = -1; } } for (Li_68 = Bars - 1; Li_68 >= 0; Li_68--) { if (Li_68 >= Bars - Ai_8) Ada_0[Li_68] = 0.0; else { Ld_28 = Ada_4[Li_68]; if (Ld_28 != 0.0) Ada_4[Li_68] = Ld_28; } } return (0); } // AAE96DC27D91DCB4DC46AF7044ED6795 int f0_2(string As_0, int &Ai_8, int &Aia_12[]) { int Li_16; int str2int_20 = StrToInteger(As_0); if (str2int_20 > 0) { Ai_8++; Li_16 = ArrayResize(Aia_12, Ai_8); if (Li_16 == 0) return (-1); Aia_12[Ai_8 - 1] = str2int_20; return (1); } return (0); } // 1312C2179DB8967F4CB75C9D549CFB81 int f0_0(string As_0, int &Ai_8, int &Aia_12[]) { string Ls_16; if (StringLen(As_0) == 0) return (-1); string Ls_24 = As_0; int Li_32 = 0; Ai_8 = 0; ArrayResize(Aia_12, Ai_8); while (StringLen(Ls_24) > 0) { Li_32 = StringFind(Ls_24, ","); if (Li_32 > 0) { Ls_16 = StringSubstr(Ls_24, 0, Li_32); Ls_24 = StringSubstr(Ls_24, Li_32 + 1, StringLen(Ls_24)); } else { if (StringLen(Ls_24) > 0) { Ls_16 = Ls_24; Ls_24 = ""; } } if (f0_2(Ls_16, Ai_8, Aia_12) == 0) return (-2); } return (1); }
Deja un comentario