Indicador técnico

Indicador para Evaluar Estrategias de Trading en MetaTrader 4
MetaTrader4
Indicador para Evaluar Estrategias de Trading en MetaTrader 4

Seguramente, muchos de nosotros hemos deseado ver de manera visual las fallas de una estrategia de trading. Y, si pudiéramos observar las estadísticas de trading de manera objetiva al mismo tiempo, sería simplemente genial. Si bien existe un backtester en MT4, ejecutar una prueba de retorno en modo visual para cada cambio en el EA puede ser muy tedioso y, además, sus capacidades visuales son bastante limitadas. No se puede probar estrategias multimoneda de manera eficiente con esta herramienta. He tratado de abordar todos estos problemas y el resultado es este indicador de código abierto para probar estrategias de trading de forma visual. Por supuesto, no es posible crear un indicador completamente universal para todos los propósitos, pero el marco actual puede ser modificado y ampliado fácilmente para necesidades específicas (como estrategias multimoneda). Se ha prestado especial atención a la gestión del spread. El indicador considera el spread de la misma manera que se presenta en el trading real y en el backtester de MT4. Si modificas el indicador para tus propósitos, debes estudiar la gestión del spread en detalle, de lo contrario, podrías ver grandes resultados de estrategia en un marco de tiempo M1, mientras que en la realidad sería un desastre. :-) Como demostración del indicador de prueba de estrategia, añado un indicador de trading con una estrategia simple. Las reglas de la estrategia se basan en cruces de medias móviles en relación con la acción del precio (de tal forma que se puedan realizar operaciones incluso antes de que crucen realmente, para eliminar el retraso). También se presenta una estrategia de salida (utilizando señales opuestas y cruces de medias móviles lentas de manera inversa), así como un manejo de stop loss implementado a través de una estrategia modificada de Chandelier SL. Este indicador sirve para proporcionar un ejemplo que podría ser ampliado para necesidades específicas, pero algunas personas lo consideran suficiente para su trading manual. La idea detrás de todo el sistema El sistema de indicadores se construye de manera modular. Primero, implementamos una estrategia de trading en un indicador de trading, donde actualmente se utilizan dos buffers para señales de entrada, dos para señales de salida y uno para el stop loss. Un ejemplo de tal indicador con funcionalidad completa es el adjunto StrategyIndi_1.0. Podemos luego evaluar esta estrategia con un indicador de prueba de estrategia StrategySym_1.0. Si no estamos satisfechos con los resultados, simplemente optimizamos el indicador de trading y podemos ver los resultados de los cambios en tiempo real y de manera objetiva, a través de estadísticas. Si decidimos implementar un EA más adelante, es muy fácil hacerlo, ya que al llamar a un indicador de trading personalizado obtenemos todas las señales de entrada y salida, así como los valores de SL. ¿Cómo usar este sistema y adaptarlo a tus propias necesidades? Para usar el sistema tal como está, solo necesitas copiar ambos indicadores a la carpeta MetaTrader\experts\indicators. Asegúrate de reiniciar el terminal antes de usarlos para que se compilen correctamente. Hay ciertas configuraciones que podrías querer modificar; la mayoría son evidentes por sus nombres, así que solo describiré las demás: Parámetros de StrategyIndi: ChandBars = 7: número de barras para la estrategia de Chandelier SL. ChandATRFact = 2.0: factor para multiplicar el ATR a largo plazo, para obtener la distancia de Chandelier. RiskPercent = 2.0: riesgo en porcentaje del saldo libre de la cuenta para el cálculo de lotes según el SL inicial (esto solo se usa para información de trading manual). Offset = 10: desplazamiento desde las barras en el gráfico para colocar flechas, en pips de 4 dígitos. BarsBack = 2000: número de barras a procesar desde el pasado. AlertSound = "alert.wav": archivo WAV para alertas sonoras. UseSoundAlert = true: si queremos alertas sonoras (para trading manual). UsePopupAlert = true: si queremos alertas en ventana emergente (para trading manual). WriteToLog = false: si queremos escribir detalles de registro (para depuración). Parámetros de StrategySim: MaxLossAtSL = 200.0: cuánto dinero (en moneda de la cuenta) estamos dispuestos a perder en cada SL (para algunos es más intuitivo en lugar de porcentaje, pero se puede cambiar fácilmente). BarsBack = 2000: número de barras a procesar para la evaluación de la estrategia. WriteToLog = false: si queremos escribir detalles de registro (para depuración). Si estás adaptando el sistema a tus propias necesidades, debes añadir al indicador StrategySym todos los parámetros de tu propio indicador StrategyIndi que sean relevantes para la simulación. Se utilizan más tarde en el método GetIndiSignals y solo debes poner valores fijos para otros parámetros (como UseSoundAlert). No es necesario cambiar nada más en el StrategySim, a menos que lo quieras para otros propósitos (como estrategias multimoneda). En este caso, los comentarios en el código y los nombres de las variables deberían ser lo suficientemente útiles. Si necesitas asistencia, estaremos encantados de ayudar; solo contáctanos en la dirección web que aparece a continuación. Con este sistema, me gustaría contribuir a la objetividad en la evaluación de estrategias de trading (ya sea para sistemas manuales o EAs), ya que los enfoques de marketing actuales son a menudo muy manipulativos y, como tal, hacen que muchos principiantes pierdan su dinero duramente ganado. Saludos, Robert Para cualquier comentario, programación en MT4 o asesoría sobre el tema, por favor contáctame en robert [dot] leskovar [at] gmail [dot] com. El sitio web de MQLTools en el código fuente ya no está activo.

2010.04.01
Market Way: Tu Indicador Esencial para MetaTrader 4
MetaTrader4
Market Way: Tu Indicador Esencial para MetaTrader 4

Idea: El concepto de este indicador no es nuevo, pero tampoco tan antiguo como para decir que es de la época del Forex. La razón por la que surgieron diferencias en los costos de apertura y cierre es... Este indicador resume la diferencia entre apertura y cierre durante un periodo específico, su línea principal, que se divide en: - Suma solo las barras bajistas; - Suma solo las barras alcistas, además de añadir un promedio ponderado del total del periodo. Ventajas: - Combina (¡importante!) la posibilidad de ser un oscilador y un indicador de tendencia; - Fácil de entender e interpretar; - Proporciona buenos puntos para movimientos alcistas o bajistas; - Señala la presión alcista y/o bajista, la cantidad estimada de movimiento (¡importante!) en puntos, que puede jugar un papel significativo en la colocación de stops y beneficios. - Indica la presencia de movimiento lateral y su fuerza (alta o baja volatilidad). - Muestra los niveles de sobrecompra/sobreventa. - Indica claramente la función de onda del movimiento del precio y la posibilidad de detectar niveles de divergencia/convergencia. - Permite decidir sobre el comportamiento futuro de los precios y (¡importante!) entrar al mercado utilizando solo este indicador; - Funciona bien con datos de cualquier marco de tiempo, así como con otros mercados fuera del Forex; - Sin filtros de suavizado adicionales, elimina señales falsas al romper el costo SMA con el mismo periodo. Desventajas: - Siempre debe haber un periodo de ajuste, lo que naturalmente disminuye la precisión del tamaño de la muestra de datos analizados (el principal problema de todos, incluyendo este indicador); - Poco se han estudiado todas las posibilidades de este indicador. Parámetros recomendados: extern int IdMain = 12; // línea principal (dibujada en los puntos del gráfico) del indicador, es mejor (pero no necesariamente) que siempre esté entre las líneas alcistas y bajistas, así que ajusta los parámetros en consecuencia. extern int IdBull = 12; // línea alcista, es mejor si su valor es igual al de la línea bajista y la línea principal extern int IdBear = 12; // línea bajista, es mejor si su valor es igual al de la línea alcista y la línea principal extern int IdArray = 12; // línea SMA total - el valor de suavizado de todas las líneas en el gráfico, o las llamadas líneas de SEÑAL. En la pantalla se presenta un histograma que muestra la diferencia entre la línea alcista (barras blancas) y la SMA, y la línea bajista (barras negras) y la SMA. Más información está escrita dentro del código del indicador. Los ajustes recomendados son múltiplos de 12, así como opciones que se dividen simultáneamente entre 3 y 4, con un máximo de 108, un mínimo de 12, posiblemente 9 y 7. Estas suposiciones se basan en estudios de otros trabajos, así que son solo números. Este indicador en el tester de estrategias: Este ejemplo es para la construcción de evidencia del indicador. Estos no están optimizados, las operaciones se realizan al abrir una barra, por lo que no es necesario probar "cada tick", el modo de apertura de transacciones es 1 por barra. t/f Diario, herramienta: EURUSD, periodo: todos los disponibles de 1999 a 2010. Stop Loss y Profit a 500 puntos. La salida se realizará bajo la condición de entrada de la transacción opuesta. Opciones de los indicadores: todos 12. Lote: 0,1 continuo. Condiciones de entrada Long: //-2- MainAccumulation1 - MainSMA1 > 0 // si la línea principal está por encima del valor suavizado &amp;&amp; BullPressue1 - Point > 0 // si la presión alcista está por encima de 0 &amp;&amp; BearPressue1 - Point > 0 // si la presión bajista está por encima de 0 &amp;&amp; MainAccumulation1 - Point > 0 // si la línea principal está por encima de 0 Condiciones de entrada Short: //-2- MainAccumulation1 - MainSMA1 < 0 // si la línea principal está por debajo de su valor suavizado &amp;&amp; BullPressue1 - Point < 0 // si la presión alcista está por debajo de 0 &amp;&amp; BearPressue1 - Point < 0 // si la presión bajista está por debajo de 0 &amp;&amp; MainAccumulation1 - Point < 0 // si la línea principal está por debajo de 0 Las condiciones de salida son estrictamente opuestas. A continuación se muestra un gráfico del cambio de activos (Equity), con una precisión de 5 dígitos, como puedes ver, después de abrir cualquiera de las transacciones, la equidad rara vez cayó por debajo de -200 puntos.

2010.03.30
Indicador de Tendencia en Timeframes Superiores para MetaTrader 4
MetaTrader4
Indicador de Tendencia en Timeframes Superiores para MetaTrader 4

Descripción: Este indicador muestra la tendencia general de un timeframe superior en el gráfico actual (un timeframe inferior) de la siguiente manera:Si MA_1 &lt; MA_2 &lt; MA_3 &lt; MA_4 en el timeframe superior, se establece un orden correcto de las medias móviles y se confirma una tendencia bajista. En el gráfico actual, aparecerá una línea roja para indicar esto. La línea roja se basa en el indicador PCI (Índice de Canal de Precio) y puede usarse como línea de soporte. Si el indicador RSI incorporado está activado, cada vez que el RSI entre en territorio de sobrecompra, se emitirá una alerta como advertencia de que es más probable una posible reversión, es decir, la tendencia del timeframe inferior retoma la tendencia general del timeframe superior. Se recomienda entrar en una operación cuando el precio cierre por debajo de la línea de soporte roja del PCI.Si MA_1 &gt; MA_2 &gt; MA_3 &gt; MA_4 en el timeframe superior, se establece un orden correcto de las medias móviles y se confirma una tendencia alcista. En el gráfico actual, aparecerá una línea verde para indicar esto. La línea verde se basa en el indicador PCI y puede usarse como línea de resistencia. Si el indicador RSI incorporado está activado, cada vez que el RSI entre en territorio de sobreventa, se emitirá una alerta como advertencia de que es más probable una posible reversión, es decir, la tendencia del timeframe inferior retoma la tendencia general del timeframe superior. Se recomienda entrar en una operación cuando el precio cierre por encima de la línea de resistencia verde del PCI.Una línea gris indica que no hay una tendencia presente en un timeframe superior.Nota: Recomiendo utilizar las siguientes combinaciones de timeframes:Timeframe Superior: Timeframe Actual: Diario 1 hora 4 horas 15 minutos 1 hora 5 minutos 5/15 minutos 1 minuto Imagen: Propiedades: extern int Upper_Timeframe = 240; // Timeframe superior en minutos ej. 240 = 4 horas extern int Upper_Timeframe_MA_1 = 10; // MA_1 debe ser la MA más rápida extern int Upper_Timeframe_MA_2 = 20; extern int Upper_Timeframe_MA_3 = 50; extern int Upper_Timeframe_MA_4 = 100; // MA_4 debe ser la MA más lenta extern bool RSI_Check_On = true; // Verifica condiciones de RSI sobrecomprado/sobrevendido extern bool RSI_Alert_On = true; // Alerta de audio para condiciones de RSI sobrecomprado/sobrevendido extern int RSI_Period = 12; // Periodo del RSI extern int Upper_RSI_Limit = 70; // Límite superior que indica condiciones de sobrecompra extern int Lower_RSI_Limit = 30; // Límite inferior que indica condiciones de sobreventa extern int PCI_Period = 5; // Periodo del PCI. ej. 5 establece la línea de soporte en la tendencia bajista al mínimo de los últimos 5 bares extern int PCI_Shift = 1; // Desplazamiento del PCI, lo mejor es establecerlo en 1 extern double Entry_Buffer = 0.0002; // Aumenta el ancho del canal PCI en pips especificados. es decir, baja la línea de soporte en tendencia bajista extern color Dot_Color = Blue;

2010.03.26
DemoBufferPattern: Indicador Esencial para MetaTrader 5
MetaTrader5
DemoBufferPattern: Indicador Esencial para MetaTrader 5

¡Hola, traders! Hoy quiero hablarles sobre un indicador que puede ser un gran aliado en su estrategia de trading: el DemoBufferPattern. Este indicador combina las velas, fractales, zigzags y líneas de promedio móvil para ofrecerte una visión más clara del mercado. El DemoBufferPattern utiliza los siguientes estilos de dibujo: DIBUJAR_VELAS_DE_COLOR DIBUJAR_FLECHA DIBUJAR_ZIGZAG_DE_COLOR DIBUJAR_LINEA_DE_COLOR //+------------------------------------------------------------------+ //| Función de inicialización del indicador personalizado | //+------------------------------------------------------------------+ int OnInit() &nbsp;&nbsp;{ //--- mapeo de los buffers del indicador &nbsp;&nbsp; SetIndexBuffer( 0,P1B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 1,P1B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 2,P1B3,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 3,P1B4,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 4,P1BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer( 5,P2B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 6,P3B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 7,P4B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 8,P4B2,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer( 9,P4BC,INDICATOR_COLOR_INDEX); &nbsp;&nbsp; SetIndexBuffer(10,P5B1,INDICATOR_DATA); &nbsp;&nbsp; SetIndexBuffer(11,P5BC,INDICATOR_COLOR_INDEX); //--- Buffers auxiliares para cálculos intermedios &nbsp;&nbsp; SetIndexBuffer(12,P4M1,INDICATOR_CALCULATIONS); &nbsp;&nbsp; SetIndexBuffer(13,P4M2,INDICATOR_CALCULATIONS); //--- Deben colocarse después de todos los buffers a mostrar //--- FLECHA &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW,217); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW,218); &nbsp;&nbsp; PlotIndexSetInteger(1,PLOT_ARROW_SHIFT,-iArrowShift); &nbsp;&nbsp; PlotIndexSetInteger(2,PLOT_ARROW_SHIFT,iArrowShift); &nbsp;&nbsp; PlotIndexSetDouble(1,PLOT_EMPTY_VALUE,EMPTY_VALUE); &nbsp;&nbsp; PlotIndexSetDouble(2,PLOT_EMPTY_VALUE,EMPTY_VALUE); //--- ZIGZAG &nbsp;&nbsp; PlotIndexSetDouble(3,PLOT_EMPTY_VALUE,0.0); //--- MA &nbsp;&nbsp; maHandle=iMA(Symbol(),0,ExtPeriod,0,MODE_EMA,PRICE_CLOSE); &nbsp;&nbsp; return(0); &nbsp;&nbsp;} //+------------------------------------------------------------------+ //| Función de iteración del indicador personalizado | //+------------------------------------------------------------------+ int OnCalculate(const int rates_total, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int prev_calculated, &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const datetime&amp; time[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; open[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; high[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; low[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const double&amp; close[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; tick_volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const long&amp; volume[], &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;const int&amp; spread[]) &nbsp;&nbsp;{ //--- &nbsp;&nbsp; CalcCandles(rates_total,prev_calculated,open,high,low,close); &nbsp;&nbsp; CalcFractal(rates_total,prev_calculated,high,low,P2B1,P3B1); &nbsp;&nbsp; CalcZigzag (rates_total,prev_calculated,high,low,P4B1,P4B2,P4BC,P4M1,P4M2); &nbsp;&nbsp; CalcColorMA(rates_total,prev_calculated,P5B1,P5BC); //--- valor de retorno de prev_calculated para la próxima llamada &nbsp;&nbsp; return(rates_total); &nbsp;&nbsp;}

2010.03.25
Indicador de Sesiones de Trading para MetaTrader 5: Optimiza Tu Estrategia
MetaTrader5
Indicador de Sesiones de Trading para MetaTrader 5: Optimiza Tu Estrategia

Este indicador se basa en los buffers DRAW_FILLING. No hay parámetros de entrada, se utilizan las funciones TimeTradeServer() y TimeGMT(). Es posible que haya inexactitudes en los horarios de las sesiones de trading, ya que los valores provienen del primer sitio que encontré. :))Puedes cambiar estos valores en el bloque de constantes, usando la hora GMT. // Se especifican constantes de tiempo en relación a Greenwich const int&nbsp;&nbsp; AsiaOpen=0; const int&nbsp;&nbsp; AsiaClose=9; const int&nbsp;&nbsp; AsiaOpenSummertime=1;&nbsp;&nbsp; // La sesión asiática se desplaza const int&nbsp;&nbsp; AsiaCloseSummertime=10; // después del cambio horario const int&nbsp;&nbsp; EuropaOpen=6; const int&nbsp;&nbsp; EuropaClose=15; const int&nbsp;&nbsp; AmericaOpen=13; const int&nbsp;&nbsp; AmericaClose=22; Tienes la oportunidad de utilizar los cambios de hora para el horario de verano; actualmente, esto es un proceso un poco primitivo y se realiza con la función TimeDaylightSavings(); //+--------------------------------------------------------------------+ // La determinación del horario de verano está reservada para cálculos futuros //+--------------------------------------------------------------------+ bool Summertime(datetime time) { &nbsp;&nbsp; if(TimeDaylightSavings()!=0) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(true); &nbsp;&nbsp; else &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return(false); }&nbsp; Así que, después del cambio de horario a la hora de verano, toda la historia de las sesiones también cambia de hora y viceversa. La primera versión de este indicador fue publicada en MQL4.

2010.03.15
Optimiza tu Media Móvil Cruzada en MetaTrader 4
MetaTrader4
Optimiza tu Media Móvil Cruzada en MetaTrader 4

Versión Actualizada. A continuación, te explico las novedades. Si todavía crees en la Media Móvil Cruzada y, como programador, siempre buscas la solución más sencilla, me encontré con la frase "no hay una configuración mágica para la MA cruzada". Este indicador prueba varias configuraciones cada vez que cambia el marco de tiempo o el símbolo, o incluso con cada nueva vela. Funciona "comerciando" las últimas 100 velas y eligiendo las configuraciones con mayor éxito. Simplemente mide la distancia entre una señal corta y una larga, como si alguien hubiera operado sin un stop loss. También tiene en cuenta el spread. La ventana inferior muestra la distancia entre la media móvil corta y la larga; los valores positivos son para operaciones largas y los negativos son para cortas, medidos en pips. Usando el "oscilador de ganancias", puedes cerrar una operación en ganancias evaluando si las operaciones cortas/largas tienen una diferencia máxima y cerrando justo antes del máximo. La línea superior indica "Ganancia hoy con MA 5/19 es de 60 pips". El indicador o el usuario ha elegido 5 para la MA rápida y 19 para la MA lenta. El siguiente campo de texto muestra los resultados de ayer seguidos de la señal Larga o Corta. Los traders pueden agregar dos medias móviles al gráfico y configurarlas con los valores indicados. Estoy buscando más recomendaciones sobre MA en la literatura. Parámetros PeriodShort=6; Periodo para la MA rápida. Ignorar si se optimiza. PeriodLong=40; Periodo para la MA lenta. Ignorar si se optimiza. Method=0; Método para iMA. Optimize=true; El indicador elige automáticamente los valores para la MA rápida y lenta. DrawTringles=true; Dibuja triángulos en el gráfico. MinShortMA=2; MaxShortMA=20; MaxLongMA=100; Valores mínimos y máximos para la optimización, probará valores entre 2 y 20 para la MA rápida y de 7 a 100 para la MA lenta. StepLongMA=5; StepShortMA=5; Para acelerar la búsqueda, prueba cada tercer valor. CountOptimize=200; Analiza 200 velas del pasado. Cuantas más velas analices, más lento será. Un número grande también puede resultar en menos buenos resultados. OptimizeOnNewCandle=false; Iniciar optimización en cada nueva vela. Nota: La optimización puede tardar y ralentizar tu terminal. Alarm=true; Sonar una alarma si surge una nueva señal. El siguiente paso es crear un Asesor Experto, aunque todavía me pregunto cómo detectar una tendencia lateral que no debería ser operada con MA cruzada. Hasta ahora, mi EA basado en MA cruzada optimizada a veces genera excelentes ganancias y luego las pierde al día siguiente. Versión Actualizada Nuevas características: - El indicador ahora dibuja las medias móviles dentro del gráfico; el "oscilador de ganancias" está en un indicador diferente (MAProfit2), ambos se comunican mediante variables globales. - Soporta Canales de MA (ver ebook en www.vnchanger.org), la MA lenta se divide en dos líneas, una para los valores bajos y otra para los altos, lo que debería evitar pérdidas en un mercado lateral. - En lugar de probar todas las combinaciones, puede probar ciertos rangos de MA encontrados en la literatura. Para hacer esto, establece OptimizeAll en false y OptimizeSystems en true. Puedes agregar o modificar la tabla de sistemas. Asegúrate de terminarla con 0,0,0,0,0,0. extern bool OptimizeAll=false; extern bool OptimizeSystems=true; int Systems[] = {PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,200, PRICE_MEDIAN,MODE_SMA,50, PRICE_MEDIAN,MODE_SMA,100, // Death Cross PRICE_MEDIAN,MODE_SMA,10, PRICE_MEDIAN,MODE_SMA,40, PRICE_MEDIAN,MODE_SMA,13, PRICE_MEDIAN,MODE_SMA,26, PRICE_MEDIAN,MODE_SMA,5, PRICE_MEDIAN,MODE_SMA,10, PRICE_CLOSE, MODE_EMA,5, PRICE_OPEN, MODE_EMA,6, PRICE_MEDIAN,MODE_SMA,3, PRICE_MEDIAN,MODE_SMA,8, 0,0,0,0,0,0}; - Se pueden dar nuevas alertas en forma de voz; para soportar esto, necesitas descargar gspeak, por ejemplo desde https://www.mql5.com/en/code/8621. Si no deseas voz, necesitas modificar el código. Elimina las líneas desde #import "speak.dll" hasta #import y descomenta la función gSpeak. Agradece al autor por esta maravillosa DLL. #import "speak.dll" void gRate(int rate); void gVolume(int rate); void gPitch(int rate); void gSpeak(string text); #import // si no tienes (o no quieres) la speak.dll descomenta esto /* void gSpeak(string x) { } */ Si no eliminas la voz, después de algunas ganancias, puede que empieces a amar la voz de "Oncle Sam" hablando. - Al iniciar por primera vez o al cambiar parámetros, recuerda la vela de la primera operación, esto debería evitar que se repinte operaciones antiguas con diferentes. - Los triángulos ahora tienen tres colores: Verde para operaciones largas, Rojo para cortas y Violeta para operaciones con pérdida (largas o cortas). Los colores pueden modificarse en el código fuente:int ColorLongTrade = MediumSpringGreen; int ColorShortTrade = Red; int ColorBadTrade = Violet; - Los pasos en la Optimización de MA se han establecido en 5. - El nombre interno de este indicador se ha cambiado a SMA (Asistente Inteligente ... muestra cómo deberías haber operado después). Optimizador de MA

2010.03.03
Primero Anterior 337 338 339 340 341 342 343 344 345 346 347 Siguiente Último