Friday 24 November 2017

Moving Average Optimization


MetaTrader 4 - Indicadores Optimizar solo Indicador de cambio de media móvil para MetaTrader 4 Este código sigue la idea de MA Profit, excepto que utiliza un solo promedio móvil en lugar del sistema de media móvil cruzada. El uso de un solo promedio móvil acelera la optimización, puede comprobar todas las medias móviles entre 10 y 1000 en casi ningún tiempo. El comercio con un solo promedio móvil da tres señales. Por lo general, funciona con grandes promedios móviles como 150 o incluso 500 o más. La curva está por debajo de las velas - comprar La curva está por encima de las velas - vender la curva es horizontal y muchas veces cruzar las velas - cerrar posiciones y esperar Al cambiar el período todo se vuelve a calcular, , Hora, día y así sucesivamente) muestran la misma señal. Por lo general, una señal es más fuerte si se muestra por varios marcos de tiempo. También puede cambiar a menor marco de tiempo con el fin de encontrar un punto de entrada en un comercio largo o corto. El indicador dibuja 4 clases de triángulos Rojo con la frontera gruesa: comercio corto con el triunfo Rojo con la frontera fina: comercio corto perdió Verde con la frontera gruesa: Comercio largo en triunfo Verde con la frontera fina: Comercio largo perdido Si una nueva señal está disponible el indicador puede Mostrar una alerta o utilizar la salida de voz. En este caso necesitará el speak. dll, por ejemplo de www. mql5 / es / code / 8621. El indicador indica el estado y el número de señales correctas y incorrectas en su línea de estado. La optimización puede ser de dos modos: Simulación de comercio. La mejor media móvil es la que dio el mejor resultado contando las intersecciones entre las velas. Cuanto menos tiempo la curva y las velas se golpean, mejor es el promedio móvil. Parámetros: (buscar código fuente también) extern bool bOptimizetrue // True: Encuentra la mejor MA única optimizando (cambiar el marco de tiempo para volver a optimizar) extern bool bOptimizeIntersecttrue // True: optimizar para intersecciones mínimas, de lo contrario optimizar para max profit extern int PeriodMA400 // Si no desea optimizar, puede definir un punto externo int Método0 // Método para MA 0 Simple, 1 Expotencial, 2 Suavizado, 3 Bool externo ponderado lineal DrawTringlestrue // Dibuja triángulos para el comercio exterior simulado extern MinMA5 // Prueba mínima para optimizar extern int MaxMA500 // Prueba máxima para optimizar extern int StepMA1 // Paso durante la optimización, 1 prueba cada MA, 10 pruebas cada 10, etc. extern int CountOptimize300 // Número de velas para optimizar extern int RepaintBars3000 // Número de velas en las que dibujamos triángulos y calculamos la ganancia / pérdida extern bool Alarmtrue // Hacer una alerta visible en la nueva señal bool bSpeaktrue // Hable la alerta con gspeak El promedio móvil de transacción da una señal muy buena pero también una gran cantidad de falsos Señales. Actualmente estoy buscando más ideas de filtrar la señal falsa con el fin de publicar mi asesor de expertos en medios móviles. Plese uso a su propio riskHow para optimizar el sistema de comercio NOTA: Este es un tema bastante avanzado. Por favor lea primero los tutoriales anteriores de AFL. La idea detrás de una optimización es simple. Primero usted tiene que tener un sistema que negocia, éste puede ser un crossover simple de la media móvil por ejemplo. En casi todos los sistemas existen algunos parámetros (como período de promedio) que deciden cómo se comporta el sistema dado (es decir, es adecuado para largo o corto plazo, cómo reacciona en las poblaciones altamente volátiles, etc.). La optimización es el proceso de encontrar los valores óptimos de esos parámetros (dando el mayor beneficio del sistema) para un símbolo dado (o una cartera de símbolos). AmiBroker es uno de los pocos programas que le permiten optimizar su sistema en varios símbolos a la vez. Para optimizar su sistema tiene que definir de uno a diez parámetros para ser optimizado. Usted decide cuál es el valor mínimo y máximo permitido del parámetro y en qué incrementos se debe actualizar este valor. AmiBroker realiza varias pruebas de nuevo el sistema utilizando TODAS las combinaciones posibles de valores de parámetros. Cuando este proceso está terminado, AmiBroker muestra la lista de resultados clasificados por beneficio neto. Puede ver los valores de los parámetros de optimización que proporcionan el mejor resultado. Escribir fórmula AFL La optimización en el tester posterior es soportada a través de una nueva función llamada optimizar. La sintaxis de esta función es la siguiente: variable optimize (quot Descripción quot, default. Min. Máximo paso) variable - es la variable AFL normal que obtiene asignado el valor devuelto por la función optimize. Con los modos de backtesting, exploración, exploración y comentar normales, la función de optimización devuelve el valor por defecto, por lo que la llamada de función anterior es equivalente a: variable default En el modo de optimización, la función de optimización devuelve valores sucesivos de min a max (inclusive) Quot Descriptionquot es una cadena que se utiliza para identificar la variable de optimización y se muestra como un nombre de columna en la lista de resultados de optimización. Default es un valor por defecto que optimiza la función devuelve en exploración, indicador, comentario, escaneo y modos normales de retroceso min es un valor mínimo de la variable que se está optimizando max es un valor máximo de la variable que se está optimizando paso es un intervalo usado para incrementar la Valor de min a max AmiBroker soporta hasta 64 llamadas para optimizar la función (por lo tanto hasta 64 variables de optimización), tenga en cuenta que si está utilizando una optimización exhaustiva, entonces es muy buena idea limitar el número de variables de optimización a sólo unos pocos. Cada llamada para optimizar la generación de bucles de optimización (máximo - minuto) / paso y múltiples llamadas para optimizar multiplican el número de ejecuciones necesarias. Por ejemplo, optimizar dos parámetros usando 10 pasos requerirá 1010 100 bucles de optimización. Función de optimización de llamada ONCE por variable al principio de la fórmula ya que cada llamada genera una nueva optimización de bucles La optimización de símbolos múltiples es totalmente compatible con AmiBroker El espacio de búsqueda máximo es 2 64 (10 19 10,000,000,000,000,000,000) combinaciones 1. Optimización de variable única: sigavg Optimizar (Promedio de la señal: 9. 2. 20. 1) Comprar Cross (MACD (12. 26), Signal (12. 26. sigavg)) Sell Cross (Signal (12. 26. sigavg), MACD 2. Optimización de dos variables (adecuada para gráficos en 3D) por Optimizar (por 2. 5. 50. 1) Nivel Optimizar (nivel 2. 2. 150. 4) Comprar Cross (CCI (per), nivel) 3. Optimización de la variable múltiple (3) Optimización de la variable (mfast) Optimizar (MACD lento) 12. Optimización (MACD lento) Velocidad de venta (Señal (mfast, mslow, sigavg), MACD (mfast, mslow)) Después de entrar La fórmula simplemente haga clic en el botón Optimizar en la ventana QuotAutomatic Analysisquot. AmiBroker comenzará a probar todas las combinaciones posibles de variables de optimización e informará los resultados en la lista. Después de la optimización se hace la lista de resultados se presenta ordenada por el beneficio neto. Como puede ordenar los resultados por cualquier columna de la lista de resultados, es fácil obtener los valores óptimos de los parámetros para la reducción más baja, el menor número de operaciones, el mayor factor de beneficio, la menor exposición al mercado y el retorno anual ajustado al riesgo más alto. Las últimas columnas de la lista de resultados presentan los valores de las variables de optimización para la prueba dada. Cuando usted decide qué combinación de parámetros se adapte a sus necesidades, lo mejor de todo lo que necesita hacer es reemplazar los valores predeterminados en optimizar llamadas de función con los valores óptimos. En la etapa actual es necesario escribirlos manualmente en la ventana de edición de la fórmula (el segundo parámetro de optimizar la llamada de función). Visualización de gráficos de optimización 3D animados Para mostrar el gráfico de optimización 3D, primero debe ejecutar la optimización de dos variables. Dos optimización variable necesita una fórmula que tiene 2 llamadas de función Optimize (). Un ejemplo de fórmula de optimización de dos variables se ve así: por Optimizar (por 2. 5. 50. 1) Nivel Optimizar (nivel 2. 2. 150. 4) Comprar Cross (CCI (per), nivel) Sell Cross (Level, CCI (per)) Después de ingresar la fórmula, debe hacer clic en el botón quotOptimizequot. Una vez completada la optimización, debe hacer clic en la flecha desplegable del botón Optimizar y seleccionar Ver gráfico de optimización 3D. En unos segundos aparecerá un colorido diagrama tridimensional de superficie en una ventana del visor de gráficos en 3D. A continuación se muestra un gráfico 3D de ejemplo generado utilizando la fórmula anterior. De forma predeterminada, los gráficos 3D muestran los valores del beneficio neto con respecto a las variables de optimización. Sin embargo, puede trazar un gráfico de superficie 3D para cualquier columna de la tabla de resultados de optimización. Simplemente haga clic en el encabezado de la columna para ordenarla (aparecerá una flecha azul que indica que los resultados de optimización están ordenados por columna seleccionada) y, a continuación, seleccione Ver gráfico de optimización 3D nuevamente. Mediante la visualización de cómo sus parámetros de los sistemas afectan el rendimiento comercial, puede decidir con más facilidad qué valores de parámetros producen una calidad exagerada y que producen un rendimiento del sistema similar. Configuraciones robustas son regiones en el gráfico 3D que muestran cambios graduales en lugar de cambios abruptos en el gráfico de superficie. Gráficos de optimización 3D son una gran herramienta para evitar la curva de ajuste. La curvatura (o sobre-optimización) ocurre cuando el sistema es más complejo de lo que debe ser, y toda esa complejidad se enfocó en las condiciones del mercado que podrían nunca volver a ocurrir. Los cambios radicales (o picos) en los gráficos de optimización 3D muestran claramente áreas de sobre-optimización. Usted debe elegir la región del parámetro que produce una meseta ancha y ancha en la carta 3D para su comercio de la vida real. Los conjuntos de parámetros que generan picos de ganancia no funcionarán confiablemente en el comercio real. Controles del visor de gráficos 3D El visor de gráficos 3D de AmiBrokers ofrece capacidades de visualización total con rotación completa de gráficos y animación. Ahora puede ver los resultados de su sistema desde todas las perspectivas imaginables. Puede controlar la posición y otros parámetros del gráfico mediante el ratón, la barra de herramientas y los métodos abreviados de teclado, lo que encuentre más fácil para usted. A continuación encontrará la lista. - para girar - mantenga presionado el botón del ratón IZQUIERDO y mueva en las direcciones X / Y - para acercar, alejar - mantenga presionado el botón del ratón DERECHO y moverse en las direcciones X / Y - mover (traducir) - mantenga presionado el botón del ratón IZQUIERDO Y CTRL y mover en direcciones X / Y - a Animar - mantenga presionado el botón del ratón IZQUIERDA, arrastre rápidamente y suelte el botón mientras arrastra el ESPACIO - animar (auto-rotación) TECLA DE FLECHA IZQUIERDA - rotate vert. Izquierda TECLA DE FLECHA A LA DERECHA - gira vert. Derecha FLECHA ARRIBA - rotar horiz. Arriba FLECHA ABAJO - gire el horiz. NUMPAD 4 - mover hacia la izquierda NUMPAD 6 - moverse hacia la derecha NUMPAD 8 - subir NUMPAD 2 - bajar PAGE UP - subir el nivel del agua hacia arriba PAGE DOWN - nivel de agua abajo Optimización inteligente (no exhaustiva) AmiBroker ofrece ahora una optimización inteligente (no exhaustiva) además de una búsqueda regular y exhaustiva. La búsqueda no exhaustiva es útil si el número de todas las combinaciones de parámetros del sistema comercial dado es simplemente demasiado grande para ser factible para la búsqueda exhaustiva. La búsqueda exhaustiva está perfectamente bien, siempre y cuando sea razonable usarla. Digamos que usted tiene 2 parámetros cada uno que van de 1 a 100 (paso 1). Eso es 10000 combinaciones - perfectamente bien para la búsqueda exhaustiva. Ahora con 3 parámetros tienes 1 millón combinaciones - todavía está bien para la búsqueda exhaustiva (pero puede ser lenghty). Con 4 parámetros tienes 100 millones de combinaciones y con 5 parámetros (1..100) tienes 10 billones de combinaciones. En ese caso, sería demasiado tiempo para comprobar todos ellos, y este es el área donde los métodos no exhaustivos de búsqueda inteligente puede resolver el problema que no es solucionable en un tiempo razonable mediante la búsqueda exhaustiva. Aquí es absolutamente la instrucción más simple de cómo utilizar nuevo optimizador no exhaustivo (en este caso CMA-ES). 1. Abra su fórmula en el editor de fórmulas 2. Agregue esta línea única en la parte superior de su fórmula: OptimizerSetEngine (quotcmaequot) // también puede usar quotspsoquot o quottribquot aquí 3. (Opcional) Seleccione su objetivo de optimización en Automatic Analysis, Settings , QuotWalk-Forwardquot, campo de optimización. Si se salta este paso, se optimizará para CAR / MDD (rendimiento anual compuesto dividido por la reducción máxima). Ahora, si ejecuta la optimización utilizando esta fórmula, utilizará un nuevo optimizador evolutivo (no exhaustivo) CMA-ES. ¿Cómo funciona? La optimización es el proceso de encontrar el mínimo (o máximo) de la función dada. Cualquier sistema comercial puede ser considerado como una función de cierto número de argumentos. Las entradas son parámetros y datos de cotización. La salida es su objetivo de optimización (digamos CAR / MDD). Y usted está buscando el máximo de la función dada. Algunos de los algoritmos inteligentes de optimización se basan en la naturaleza (comportamiento animal) - Algoritmo PSO, o proceso biológico - Algoritmos genéticos, y algunos se basan en conceptos matemáticos derivados por los seres humanos - CMA-ES. Estos algoritmos se utilizan en muchas áreas diferentes, incluyendo las finanzas. Ingrese quotPSO financequot o quotCMA-ES financequot en Google y encontrará mucha información. Los métodos no exhaustivos (o quotsmartquot) encontrarán óptimo global o local. El objetivo es, por supuesto, encontrar uno global, pero si hay un solo pico agudo fuera de las combinaciones de parámetros de zillones, métodos no exhaustivos pueden fallar en encontrar este único pico, pero tomando forma comerciantes perspecive, encontrar único pico agudo es inútil para Porque ese resultado sería inestable (demasiado frágil) y no replicable en el comercio real. En el proceso de optimización estamos buscando regiones de meseta con parámetros estables y este es el área donde brillan los métodos inteligentes. En cuanto al algoritmo utilizado por la búsqueda no exhaustiva, se ve como sigue: a) el optimizador genera una población inicial de grupos de parámetros (generalmente aleatoria) b) el backtest es realizado por AmiBroker para cada conjunto de parámetros de la población c) los resultados de los backtests son Evaluado de acuerdo con la lógica del algoritmo y la nueva población se genera sobre la base de la evolución de los resultados d) si se encuentra mejor nuevo - guárdelo y vaya al paso b) hasta que se cumplan los criterios de detención Iteraciones máximas b) detener si el rango de los mejores valores objetivo de las últimas generaciones X es cero c) detener si agregar 0,1 vector de desviación estándar en cualquier dirección del eje principal no cambia el valor del valor objetivo d) Exhaustivo) en AmiBroker es necesario especificar el motor optimizador que desea utilizar en la fórmula AFL utilizando la función OptimizerSetEngine. La función selecciona el motor de optimización externo definido por nombre. AmiBroker actualmente se comercializa con 3 motores: Standard Particle Swarm Optimizer (quotspsoquot), Tribus (quottribquot) y CMA-ES (quotcmaequot) - los nombres en llaves se utilizarán en llamadas OptimizerSetEngine. Además de seleccionar el motor del optimizador puede que desee establecer algunos de sus parámetros internos. Para ello, utilice la función OptimizerSetOption. Función OptimizerSetOption (quotnamequot, value) La función establece parámetros adicionales para el motor de optimización externo. Los parámetros dependen del motor. Los tres optimizadores enviados con AmiBroker (SPSO, Trib, CMAE) soportan dos parámetros: quotRunsquot (número de ejecuciones) y quotMaxEvalquot (evaluaciones máximas (pruebas) por ejecución única). El comportamiento de cada parámetro es dependiente del motor, por lo que los mismos valores pueden y, por lo general, dará diferentes resultados con diferentes motores utilizados. La diferencia entre Runs y MaxEval es la siguiente. La evaluación (o prueba) es un solo backtest (o evaluación del valor objetivo de la función). RUN es una ejecución completa del algoritmo (encontrar el valor óptimo) - generalmente involucra muchas pruebas (evaluaciones). Cada ejecución simplemente RESTABLECE todo el proceso de optimización desde el nuevo comienzo (nueva población aleatoria inicial). Por lo tanto, cada ejecución puede conducir a encontrar diferentes locales máx / min (si no encuentra global). El parámetro Runs define el número de ejecuciones de algoritmos posteriores. MaxEval es el número máximo de evaluaciones (bactests) en cualquier ejecución individual. Si el problema es relativamente simple y 1000 pruebas son suficientes para encontrar el máximo global, 5x1000 es más probable encontrar el máximo global, ya que hay menos posibilidades de quedar atrapado en el máximo local, como subsecuentes se iniciará a partir de la población aleatoria inicial diferente. Ser complicado Depende del problema bajo prueba, su complejidad, etc, etc. Cualquier método no exhaustivo estocástico no le da la garantía de encontrar max / min global, independientemente del número de pruebas si es más pequeño que exhaustivo. La respuesta más fácil es. Especifique como gran número de pruebas como es razonable para usted en términos de tiempo necesario para completar. Otro consejo simple es multiplicar por 10 el número de pruebas con la adición de nueva dimensión. Eso puede conducir a la sobreestimación del número de pruebas necesarias, pero es bastante seguro. Los motores enviados están diseñados para ser fáciles de usar, por lo tanto, son usables los valores predeterminados / automáticos, por lo que la optimización se puede ejecutar normalmente sin especificar nada (aceptando valores predeterminados). Es importante entender que todos los métodos de optimización inteligente funcionan mejor en espacios de parámetros continuos y funciones objetivo relativamente suaves. Si el espacio de parámetros es discreto, los algoritmos evolutivos pueden tener problemas para encontrar el valor óptimo. Es especialmente cierto para los parámetros binarios (on / off) - no son adecuados para cualquier método de búsqueda que utiliza gradiente de cambio de función objetivo (como la mayoría de los métodos inteligentes). Si su sistema comercial contiene muchos parámetros binarios, no debe utilizar el optimizador inteligente directamente en ellos. En su lugar, intente optimizar sólo los parámetros continuos utilizando el optimizador inteligente y cambie los parámetros binarios manualmente o mediante un script externo. SPSO - Optimizador de enjambre de partículas estándar El Optimizador de enjambre de partículas estándar se basa en el código SPSO2007 que se supone debe producir buenos resultados siempre que se proporcionan parámetros correctos (por ejemplo, Runs, MaxEval) para un problema particular. Selección de opciones correctas para el optimizador de PSO puede ser difícil por lo tanto los resultados pueden variar significativamente de caso a caso. SPSO. dll viene con códigos fuente completos dentro de la subcarpeta quotADKquot. OptimizerSetOption (quotRunsquot, 1) OptimizerSetOption (quotMaxEvalquot, 1000) sl Optimizar (quotsquot, 26, 1, 100, 1) OptimizerSetOption (quotRunsquot, 1) OptimizerSetOption (quotRunsquot, 1) ) (0, MACD (fa, sl)) TRIBES - El Optimizer adaptable del optimizador del enjambre de la partícula del Parámetro-menos es adaptable (quotfquot, 12, 1, 100, 1) , Versión sin parámetros de PSO (optimización de optimización de enjambre de partículas) no exhaustiva. Para el fondo científico vea: www. particleswarm. info/Tribes2006Cooren. pdf En teoría debe funcionar mejor que PSO regular, porque puede ajustar automáticamente los tamaños del enjambre y la estrategia del algoritmo al problema que está resolviendo. La práctica muestra que su rendimiento es bastante similar a PSO. El complemento Tribes. DLL implementa la variante quotTribes-Dquot (es decir, adimensional). Basado en clerc. maurice. free. fr/pso/Tribes/TRIBES-D. zip de Maurice Clerc. Los códigos fuente originales utilizados con permiso del autor Tribes. DLL vienen con código fuente completo (dentro de la carpeta quotADKquot) Parámetros soportados: quotMaxEvalquot - número máximo de evaluaciones (backtests) por ejecución (predeterminado 1000). Debe aumentar el número de evaluaciones con un número creciente de dimensiones (número de parámetros de optimización). El predeterminado 1000 es bueno para 2 o máximo 3 dimensiones. QuotRunsquot - número de ejecuciones (reinicios). (Predeterminado 5) Puede dejar el número de ejecuciones con un valor predeterminado de 5. Por defecto, el número de ejecuciones (o reinicios) se establece en 5. Para utilizar el optimizador Tribes, sólo tiene que agregar una línea a su código: OptimizerSetOption (quotMaxEvalquot , 5000) // 5000 evaluations max CMA-ES - Optimizador de estrategias evolutivas CMA-ES (Covariance Matrix Adaptation Evolutionary Strategy) es un optimizador no exhaustivo avanzado. Para los antecedentes científicos ver: www. bionik. tu-berlin. de/user/niko/cmaesintro De acuerdo con los puntos de referencia científica supera a otras nueve, las más populares estrategias evolutivas (como la PSO, la evolución genética y diferencial). Www. bionik. tu-berlin. de/user/niko/cec2005 El complemento CMAE. DLL implementa quotGlobalquot variante de búsqueda con varios reinicios con el creciente tamaño de población CMAE. DLL viene con código fuente completo (dentro de la carpeta quotADKquot) Por número predeterminado de ejecuciones (O reinicia) se establece en 5. Se recomienda dejar el número predeterminado de reinicios. Puede cambiarlo usando la llamada OptimizerSetOption (quotRunsquot, N), donde N debe estar en el rango 1..10. No se recomienda especificar más de 10 ejecuciones, aunque es posible. Tenga en cuenta que cada ejecución utiliza TWICE el tamaño de la población de ejecución anterior por lo que crece exponencialmente. Por lo tanto, con 10 carreras que terminan con la población 210 mayor (1024 veces) que la primera ejecución. Hay otro parámetro quotMaxEvalquot. El valor predeterminado es CERO, lo que significa que el complemento calculará automáticamente MaxEval requerido. Se aconseja no definir MaxEval por sí mismo como el defecto funciona bien. El algoritmo es lo suficientemente inteligente como para minimizar el número de evaluaciones requeridas y converge muy rápido a punto de solución, por lo que a menudo encuentra soluciones más rápido que otras estrategias. Es normal que el plugin omita algunos pasos de evaluación, si detecta que se encontró la solución, por lo tanto, no debería sorprenderse que la barra de progreso de optimización se mueva muy rápido en algunos puntos. El complemento también tiene la capacidad de aumentar el número de pasos sobre el valor inicialmente estimado si es necesario para encontrar la solución. Debido a su naturaleza adaptativa, el tiempo de cotización que se deja y / o el número de pasos mostrados por el diálogo de progreso es sólo una suposición más aproximada en el momento y puede variar durante el curso de optimización. Para utilizar el optimizador CMA-ES, sólo tiene que agregar una línea a su código: Esto llevará a cabo la optimización con la configuración predeterminada que están bien para la mayoría de los casos. Debe tenerse en cuenta, como es el caso de muchos algoritmos de búsqueda de espacio continuo, que la disminución del parámetro quotstepquot en las llamadas de función Optimize () no afecta significativamente los tiempos de optimización. Lo único que importa es el problema quotdimension, es decir, el número de parámetros diferentes (número de optimizar las llamadas de función). El número de quotstepsquot por parámetro se puede establecer sin afectar el tiempo de optimización, así que utilice la resolución más fina que desee. En teoría, el algoritmo debería ser capaz de encontrar solución en un máximo de 900 (N3) (N3) backtests donde quotNquot es la dimensión. En la práctica, converge mucho más rápido. Por ejemplo, la solución en el espacio de parámetros 3 (N3) dimensional (digamos 100100100 1 millón de pasos exhaustivos) puede encontrarse en tan sólo 500-900 pasos CMA-ES. Optimización individual multihilo A partir de AmiBroker 5.70 además del multithreading de múltiples símbolos. Puede realizar la optimización multi-subprocesos de símbolo único. Para acceder a esta funcionalidad, haga clic en la flecha desplegable situada junto al botón quotOptimizequot en la ventana New Analysis y seleccione quot. QuotIndividual Optimizequot usará todos los núcleos de procesador disponibles para realizar la optimización de símbolo único, lo que lo hace mucho más rápido que la optimización regular. En el modo quotCurrent symbolquot se realizará la optimización en un símbolo. En los modos quotAll symbolsquot y quotFilterquot procesará todos los símbolos secuencialmente, es decir, la primera optimización completa para el primer símbolo, luego la optimización en el segundo símbolo, etc. Limitaciones: 1. El Backtester personalizado NO es compatible (todavía) 2. Los motores de optimización inteligentes NO son compatibles - Sólo funciona la optimización EXHAUSTIVA. Eventualmente, podemos deshacernos de la limitación (1) - cuando AmiBroker se cambia, el backtester personalizado no usa OLE más. Como ejemplo de SMA, considere una garantía con los siguientes precios de cierre durante 15 días: Semana 1 (5 días) 20, 22, 24 25, 23 Semana 2 (5 días) 26, 28, 26, 29, 27 Semana 3 (5 días) 28, 30, 27, 29, 28 Un MA de 10 días haría un promedio de los precios de cierre de los 10 primeros días Como el primer punto de datos. El próximo punto de datos bajaría el precio más temprano, agregaría el precio el día 11 y tomaría el promedio, y así sucesivamente como se muestra a continuación. Como se mencionó anteriormente, las AMs se retrasan en la acción de los precios actuales porque se basan en precios pasados, mientras más largo sea el período de tiempo para la MA, mayor será el retraso. Por lo tanto, un MA de 200 días tendrá un grado mucho mayor de retraso que un MA de 20 días porque contiene precios durante los últimos 200 días. La longitud de la MA a utilizar depende de los objetivos comerciales, con MA más cortos utilizados para el comercio a corto plazo y de más largo plazo MA más adecuado para los inversores a largo plazo. El MA de 200 días es ampliamente seguido por inversores y comerciantes, con rupturas por encima y por debajo de este promedio móvil considerado como señales comerciales importantes. Las MA también imparten señales comerciales importantes por sí solas, o cuando dos medias se cruzan. Un aumento MA indica que la seguridad está en una tendencia alcista. Mientras que un MA decreciente indica que está en una tendencia bajista. Del mismo modo, el impulso ascendente se confirma con un cruce alcista. Que se produce cuando una MA a corto plazo cruza por encima de un MA a más largo plazo. El impulso hacia abajo se confirma con un crucero bajista, que ocurre cuando un MA a corto plazo cruza debajo de un MA a largo plazo. ¿Cuál es la mejor longitud para un promedio móvil? Los comerciantes trabajan en el piso de la Bolsa de Nueva York. CAPITULO HILL, NC (MarketWatch) Si no es la media móvil de 200 días, ¿qué tal los 100 días o los 50 días? Esas son las preguntas que se hacen, de una forma u otra, por los temporizadores del mercado en todo el mundo como ellos Averiguar qué indicador (s) van a utilizar para decirles cuándo salir de la fiesta increíble Wall Street está lanzando. Hulbert: March Madness se aplica a su cartera Mark Hulbert aconseja a los espectadores no hacer movimientos irresponsables con su cartera de acciones como resultado de reacciones emocionales a March Madness. Hace tres semanas, puede recordar, me concentré en el promedio móvil de 200 días. Uno de los indicadores más ampliamente utilizados para determinar los cambios en la principal tendencia de los mercados. Me pareció que dejaba mucho que desear: por ejemplo, su desempeño ha disminuido notablemente en las últimas décadas tanto que algunos investigadores han comenzado a preguntarse si ha perdido su capacidad de mercado. Otra razón por la que algunos temporizadores del mercado están insatisfechos con el promedio móvil de 200 días no es una crítica per se, sino una característica inherente a cualquier indicador de tendencia: por definición, no escogerá la parte superior. Eso es porque una señal de la venta no será accionada hasta que el mercado ha caído debajo de su nivel medio de los 200 días de comercio anteriores. En ese momento, por supuesto, el mercado puede haber sufrido ya una pérdida considerable. Por ambas razones, varios de ustedes que leyeron mi columna de tres semanas atrás me instaron a medir el desempeño de promedios móviles a corto plazo. Así que eso es lo que hice para esta columna. Desafortunadamente, no alcancé resultados apreciablemente diferentes con ninguno de los promedios móviles más cortos que estudié. Sin duda, el plazo más corto de las medias móviles hace un trabajo mejor que los 200 días de salir antes cuando el mercado se vuelca. Pero también obtienen whipsawed por una pérdida con más frecuencia también. En el balance sus historiales a largo plazo no son significativamente diferentes a los de la media móvil de 200 días. Además, cada uno de los promedios móviles que probé sufrió la misma disminución marcada en los retornos en las últimas décadas como lo encontré con el promedio de 200 días. Sorprendido por estos resultados, Norm Fosback, ex director del Instituto de Investigación Econométrica y actual editor de Fosbacks Fund Forecaster, argumenta que no deberíamos serlo. En el libro de texto que escribió hace tres décadas, titulado Lógica del mercado de valores, escribió: No hay números mágicos en la tendencia siguiente. Algunas longitudes promedio móvil pueden haber funcionado mejor en el pasado, pero, después de todo, algo tenía que funcionar mejor en el pasado y por probar todo lo posible, ¿cómo podría ayudar pero no lo encuentra debería ser un requisito básico de cualquier tendencia media móvil Siguiente sistema que prácticamente todas las longitudes medias móviles predicen con éxito en mayor o menor grado. Si sólo una o dos longitudes de trabajo, las probabilidades son altas que los resultados exitosos se obtuvieron por casualidad. ¿Qué pasa con la cruz de la muerte? Antes de dejar el tema de los promedios móviles de diferentes longitudes, quiero también decir algunas palabras sobre los intentos de combinar dos medias móviles de diferentes longitudes en un único sistema de seguimiento de tendencias. Muchos consideran que es bajista cuando el promedio móvil más corto cruza por debajo del más largo, y alcista cuando el más corto se eleva por encima del más largo. Por cierto, en el caso de los promedios de 50 días y 200 días, estos dos crossovers se llaman la cruz de la muerte y la cruz de oro. Investigué todas las muertes y cruces de oro durante el último siglo para el promedio industrial Dow Jones. Como antes, descubrí que sus proezas predictivas han disminuido significativamente en las últimas décadas. Observe de la tabla adjunta que, durante todo el período que el Dow ha existido desde 1896, estos dos eventos de cruce hicieron un trabajo respetable. Sin embargo, tenga en cuenta también que desde 1970 han hecho un trabajo mucho más pobre, con el mercado más de uno, tres y seis meses después de cruces de muerte en realidad haciendo mejor en promedio que después de cruces de oro. Ganancia promedio de Dow durante el próximo mes Ganancia promedio de Dow durante los próximos 3 meses Copyright copy2017 MarketWatch, Inc. Todos los derechos reservados. Intraday Datos proporcionados por SIX Financial Information y sujeta a condiciones de uso. Datos históricos y actuales al final del día proporcionados por SIX Financial Information. Datos intradía retrasados ​​por necesidades de intercambio. SampP / Dow Jones Indices (SM) de Dow Jones amp Company, Inc. Todas las cotizaciones son en tiempo de intercambio local. Datos de última venta en tiempo real proporcionados por NASDAQ. Más información sobre los símbolos negociados de NASDAQ y su estado financiero actual. Los datos intradía retrasaron 15 minutos para el Nasdaq, y 20 minutos para otros intercambios. SampP / Dow Jones Indices (SM) de Dow Jones amp Company, Inc. Los datos intradiarios de SEHK son proporcionados por SIX Financial Information y tienen un retraso de al menos 60 minutos. Todas las cotizaciones son en tiempo de intercambio local. Los comerciantes a menudo discutir la optimización de sus sistemas, y con el uso generalizado de las computadoras es fácil cambiar las variables y volver a probar muchas veces para ver si el rendimiento mejora. Podría valer la pena experimentar con diferentes períodos de media móvil para diversos mercados al aplicar uno de estos sistemas, pero no debería obsesionarse con él. Tú no serás capaz de fijarlo a un número perfecto, y te volverás loco tratando de hacerlo. Si está tratando de refinar los períodos para, por ejemplo, el método de crossover doble, y volver a probar o comprobar los resultados utilizando datos históricos, entonces hay una cosa que los investigadores le aconsejan hacer. Es decir, utiliza sólo parte de los datos históricos que tiene para refinar su sistema y, a continuación, ejecuta el sistema en otra parte de los datos para probarlo. De esa manera evitará ajustar los números de forma demasiado específica, y obtendrá una mejor idea de cómo el sistema podría funcionar en una situación real desconocida, como el comercio en vivo. Resumen Una de las ventajas de utilizar promedios móviles en su sistema de comercio es que, naturalmente, seguir la tendencia, y esta es una de las formas menos riesgosas de comercio. Permanecerá en el comercio mientras progresa, dejando que sus ganancias corran, pero el promedio móvil cortará cortos todos los oficios donde la tendencia se ha convertido. Una de las desventajas de usar promedios móviles en su sistema de comercio es que, naturalmente, seguir la tendencia, y los mercados suelen don8217t tendencia hasta la mitad del tiempo. El promedio móvil es inútil en este tipo de mercado. Si se utiliza un sistema basado en medias móviles, muchos analistas técnicos se adhieren a sólo dos promedios simples. Si bien los diferentes promedios ponderados deberían ser ligeramente mejores, no hay mucha evidencia en ambos sentidos. Hay refinamientos que se están haciendo todo el tiempo, y puede encontrarse con el promedio móvil adaptable (AMA), el promedio móvil variable (VHF), y el promedio variable de índice variable (VIDYA) en su programa de gráficos. Cada uno de ellos incluye la volatilidad del precio en el cálculo, acortando efectivamente el período de tiempo efectivo en una situación volátil y alargándolo si el precio es tranquilo. Por todos los medios experimentar con los disponibles para usted para ver si pueden mejorar su comercio. En el siguiente módulo hablamos de osciladores, y un oscilador en particular es un desarrollo de dos promedios móviles exponenciales. It8217s llamado Moving Average Convergence / Divergence (MACD), y compara la diferencia entre los promedios. También verá el proceso de media móvil aplicado a prácticamente cualquier número, incluyendo el volumen y los indicadores, y así cubrir esas ideas a su debido tiempo. Al final de cada módulo hay un cuestionario. Puede hacer una prueba en cualquier momento, pero le sugerimos que vea cada módulo antes de tomar la prueba. Cuando esté listo para comenzar el cuestionario, haga clic en el botón de tomar 8216Start8217 botón a continuación -: El Certificado de Maestría en Análisis Técnico - Módulo 6 Espere mientras la actividad se carga. Si esta actividad no se carga, intente actualizar su navegador. Además, esta página requiere javascript. Por favor, visite usando un navegador con javascript habilitado. Si la carga falla, haga clic aquí para volver a intentarlo

No comments:

Post a Comment