Discusión sobre el artículo "Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 2): Señales del indicador - Parabolic SAR de marco temporal múltiple"

 

Artículo publicado Creamos un asesor multidivisa sencillo utilizando MQL5 (Parte 2): Señales del indicador - Parabolic SAR de marco temporal múltiple:

En este artículo, entenderemos por asesor multidivisa un asesor o robot comercial que puede comerciar (abrir/cerrar órdenes, gestionar órdenes, por ejemplo, trailing-stop y trailing-profit, etc.) con más de un par de símbolos de un gráfico. Esta vez usaremos solo un indicador, a saber, Parabolic SAR o iSAR en varios marcos temporales, comenzando desde PERIOD_M15 y terminando con PERIOD_D1.

El asesor multidivisa utilizará 1 señal del indicador en 5 marcos temporales, comenzando con PERIOD_M15, PERIOD_M30, PERIOD_H1, PERIOD_H4 y PERIOD_D1.

Este asesor no utilizará un marco temporal fijo para calcular las señales del indicador, por lo que no es necesario definir el marco temporal de cálculo de la señal.

Esto significa que FXSAR_MTF_MCEA se podrá utilizar en cualquier marco temporal desde PERIOD_M1 hasta PERIOD_MN1, y FXSAR_MTF_MCEA seguirá calculando señales basadas en iSAR PERIOD_M15, PERIOD_M30, PERIOD_H1, PERIOD_H4 y PERIOD_D1.

Estos cinco marcos temporales de Parabolic SAR determinarán la señal para abrir órdenes.

Mientras tanto, para cerrar órdenes cuando la señal se debilita, utilizaremos el indicador iSAR PERIOD_M15, siempre que la orden genere ganancias.

Para utilizar el trailing-stop y el trailing-profit, utilizaremos iSAR PERIOD_H1.


Fórmula de la estrategia del estado de las señales: iADX

UP (arriba) = (PRICE_LOW[0] es mayor que la línea iSAR) o PRICE_LOW[0] > iSAR[0]

DOWN (abajo) = (PRICE-HIGH[0] es menor que la línea iSAR) o PRICE-HIGH[0] < iSAR[0]

Dónde obtener una señal de COMPRA o VENTA:

Los cinco marcos temporales del indicador iSAR deben sumar 5 x UP para COMPRAR y 5 x DOWN para VENDER.

La figura 1 muestra el indicador iSAR.

iSAR_Signal_Buy y Sell

Autor: Roberto Jacobs

 

Jefe, aprendí algunas ideas sobre variedades múltiples y ciclos múltiples, así como algunos métodos para dibujar gráficos. Muy práctico.

gracias por compartir

 
cloudchina #:

Jefe, aprendí algunas ideas sobre variedades múltiples y ciclos múltiples, así como algunos métodos para dibujar gráficos. Muy práctico.

gracias por compartir

De nada.

 
¿Podría detallar los resultados de la optimización en los diferentes pares?... ¿dará los mejores resultados para cada par? o ¿los mejores resultados de entre todos los pares?
 
Camilo Mora #:
¿Podría por favor elaborar los resultados de la optimización en los diferentes pares ... va a devolver los mejores resultados para cada par? o los mejores resultados de entre todos los pares?

Este Asesor Experto no opera sólo con pares individuales, sino con multidivisas o multipares. Así que el resultado de la prueba es para todos los pares (30 pares proporcionados).

 
¿Ha comparado el tiempo que se tarda en ejecutar, digamos, 1 bucle del EA completo con 30 pares? ¿comparado con, digamos, si uno tuviera 30 EAs de una sola divisa en cada gráfico? una pregunta relacionada, si uno va a ejecutar este EA multicurrencia en cada tick o en cada barra, ¿se realizará la operación para un bucle completo antes de que llegue el siguiente tick o barra? La velocidad de backtesting de este EA me pareció lenta, teniendo en cuenta lo rápido que se ejecutan otros EAs.
 

Por supuesto que es lento! esta haciendo 30 veces los calculos de los "EAs rapidos", intente ejecutar 30 EAs rapidos simultaneamente y vea que pasa. apuesto a que este EA es mucho mucho mas rapido. si los porcentajes ganadores en la prueba de mas del 75% se mantienen, a quien le importa la velocidad cuando estas ganando 3 de cada 4 operaciones? solo compre maquinas mas rapidas.

Mire los bucles para mover las asignaciones estáticas, use variables locales en bucles y funciones para reducir los cálculos, asegúrese de que no hay múltiples llamadas a la misma función, haga todo el trabajo posible en la función OnInit moviendo las llamadas y cálculos estáticos a variables globales, etc, etc, etc.

Para sortear el problema del prefijo sufijo de los símbolos, considere usar 2 variables para cada símbolo, un par para el nombre de 6 chr y otro citado para el nombre completo con prefijo y/o sufijo. Examine el nombre con una función de cadena para establecer las dos variables.

Es posible que desee crear un Parabolic Stop Loss adaptable que siga las barras más de cerca, creo que hay varios indicadores adaptables PSAR para utilizar como guía.

El trabajo que Roberto ha puesto en este EA no debe ser subestimado, es muy sustancial.

 
CapeCoddah Parabólico adaptativo que siga las barras más de cerca, creo que hay varios indicadores PSAR adaptativos para utilizar como guía.

El trabajo que Roberto ha puesto en este EA no debe ser subestimado, es muy sustancial.

Gracias por su apoyo. Voy a crear un artículo para añadir la detección automática y el manejo de los corredores con nombres de símbolos especiales, prefijos y / o sufijos.

 

Roberto,

Malas noticias, corrí tu EA en EURUSD H4 del 1/1/2023 al 11/1/2023 con $1,000 de saldo inicial. El EA quebró la cuenta en menos de 3 meses. Con $10,000, corrió completamente pero perdió $8,250. El gráfico muestra pérdidas consistentes de principio a fin sin picos ni valles agudos.

En primer lugar, ¡no se desespere! El trading en divisas es duro y es aún más duro diseñar un EA multidivisa. Lo sé, estoy en medio de la transformación de uno de MQ4 a MQ5.

Puede que sea el momento de implementar una capacidad de par variable para permitir la especificación de pares para proporcionarle la capacidad de probar en un solo par. La forma más fácil es hacer que su cadena de pares sea un elemento de entrada y utilizar STRSPLIT para separar cada par en la cadena para permitir la carga de sus pares. Un mejor enfoque es utilizar su pantalla de 30 pares para permitir al usuario seleccionar los pares para la ejecución marcando en ellos y cambiando de color. Hay dos artículos GUI recientes, GUI: Consejos y Trucos...... 10/5/2023 y otro conjunto de Artículos sobre GUIs Móviles. Yo uso este último pero creo que los Consejos y Trucos pueden ser mejores y más completos. También deberías usar los GUIs para mostrar tus datos, lo cual creo que es excelente, en lugar de usar la función Comentario.

Creo firmemente en la Ley de Pareto: el 80% de una característica procede del 20% de los elementos. Esto significa que el 80% de los beneficios globales proceden de 6 pares y, correspondientemente, 6 pares contribuyen al 80% de las pérdidas.

Las estadísticas mejoradas del Probador de Estrategias para pares individuales en una prueba multidivisa son obligatorias para permitir la identificación de áreas problemáticas y la Ley de Pareto. Los elementos de la pestaña BackTest son necesarios a nivel de pares, es decir, Beneficio Neto, Beneficio Bruto, Pérdida Bruta, etc., etc., etc.

Sigo pensando que un proceso adaptativo para el SAR proporcionaría una mejora en sus ganancias. Si usted mira su gráfico de Compra/Venta en su texto anterior, una función adaptativa que aumente la velocidad de aceleración del SAR basado en el aumento del tamaño de la Barra flexionaría el SAR para darle mayores ganancias en las primeras 4 ilustraciones de Compra/Venta en el gráfico. Esta flexión adaptativa proporcionaría dos beneficios:

Proporcionaría un aumento en los beneficios de quizás $5-$10 cerrando la operación antes. Y lo que es más importante, permitiría que la siguiente operación se abriera $5-$10 antes. Por lo tanto, el impacto de la flexión podría ser de $10-$20 en total para cada operación. Sin embargo, también puede causar que se coloquen muchas operaciones perdedoras adicionales con la correspondiente disminución en los beneficios totales.

Concéntrese en estos objetivos y marcos temporales óptimos y su rentabilidad aumentará sustancialmente. Admito que aún no he descubierto un proceso de evaluación dinámico.

 
CapeCoddah #:
Creo firmemente en la Ley de Pareto: el 80% de una característica procede del 20% de los elementos. Esto significa que el 80% de los beneficios globales proceden de 6 pares y, correspondientemente, 6 pares contribuyen al 80% de las pérdidas.

Gracias por su aportación.

Como he dicho en las conclusiones 4 y 5:

Este FXSAR_MTF_MCEA Multi-Currency Expert Advisor es sólo un ejemplo para aprender y desarrollar ideas.

Los resultados de las pruebas en el Probador de Estrategias aún no son buenos. Por lo tanto, si se implementa una mejor estrategia con cálculos de señales más precisos y agrega algunos mejores marcos de tiempo, creo que los resultados serán mejores que la estrategia actual.

Por lo tanto, depende de usted para actualizar el uso de lo que usted dice es una función de adaptación para obtener mejores resultados.

 

Hola Roberto,

muy interesante, me gustan los sistemas multi timeframe.

Lo siento pero no entiendo cómo puedo cambiar los marcos de tiempo de la única SAR y si el SAR tiene un cálculo de valor fijo.
¿Hay una manera de comprar y vender cada marco de tiempo (en lugar de esperar a que todos estén en un lado)?

En este caso podría tener una venta en 1 minuto y una compra en 5 min etc, suponiendo 0.1 cada uno tendré una cantidad variable larga y corta.

He hecho la prueba en GOLD desde 1.1.24 pero no pasa nada, no hay operaciones.

¿Alguna sugerencia? Puedes escribirme por privado también.


Muchas gracias.

Marco