Asesor multidivisa. Preferiblemente la opinión de los promotores. - página 2

 
YuraZ писал (а): Francamente, tampoco es muy agradable... Imaginemos que la garrapata no llegó para los pares especificados y los perderá de nuevo

Si mostraras un trozo de código que genera la entrada, podrías encontrar el error lógico más rápidamente

Pero debería haber una solución comúnmente aceptada en MQL, ¿no? ¿Cómo "sincronizar" la apertura de barras para diferentes símbolos? Bueno, aparentemente, debemos esperar a que se abra una nueva barra para todos los símbolos que se utilizan. Pero, ¿cómo hacerlo correctamente?

 
Integer:

Para el símbolo negociado, el tick de la nueva barra llegó antes, por lo que las barras antiguas del símbolo analizado se involucraron en el análisis, el inicio funcionó, y espera a la siguiente hora. algo así.

Probablemente sea así. Pero debe haber alguna solución en MQL, ¿no? No es una superfunción. ¿Cómo "sincronizar" el inicio de la apertura de la barra para diferentes símbolos en tiempo real?

 
LeoV:
YuraZ escribió (a): Para ser honesto y no es realmente agradable ... imagina que la garrapata no llegó a los pares especificados y volverás a pasar volando

Si mostraras un trozo de código que genera la entrada, sería más rápido encontrar el error en la lógica

Pero debería haber una solución comúnmente aceptada en MQL, ¿no? ¿Cómo "sincronizar" la apertura de barras para diferentes símbolos? Bueno, aparentemente, debemos esperar a que se abra una nueva barra para todos los símbolos que se utilizan. Pero, ¿cómo hacerlo correctamente?

Sí, llama a Bill Gates.

 
Integer:

Bingo - Llamar a Bill Gates

Bueno, Bill Gates no tiene nada que ver con MQL. Tampoco parece tener nada que ver con el forex )))))))))

 
LeoV:
YuraZ escribió (a): Para ser honesto y no es realmente agradable ... digamos que la garrapata no llegó a los pares especificados y se perderá de nuevo

Si mostraras un trozo de código que genera la entrada, podrías encontrar el error lógico más rápidamente

Pero debería haber una solución comúnmente aceptada en MQL, ¿no? ¿Cómo "sincronizar" la apertura de barras para diferentes símbolos? Bueno, aparentemente, debemos esperar a que se abra una nueva barra para todos los símbolos que se utilizan. Pero, ¿cómo hacerlo correctamente?

En mi ejemplo, es suficiente para captar el comienzo de la hora para cualquier instrumento.


No tienes que sincronizar - creo que es lo que estás haciendo


¡mientras se considera que por otros la nueva hora también ha llegado!

¡porque vendrá!


y ejecutar el cálculo después de lo cual se toma la decisión de entrar en la salida.


Estás cogiendo la garrapata!!! Y una nueva garrapata y el comienzo de la hora no son lo mismo!

un tic no vendría durante unos 5 minutos...


hay que cambiar la lógica de captación de la nueva barra por una más suave

tienes unas condiciones demasiado duras para el inicio de la barra - sugerí una más suave


¡pero si todos los símbolos (que están tomando una garrapata no viene, entonces eso es un poco mal también - sólo que muy baja variabilidad!


---

nos podría dar un trozo de código, podríamos hablar de ello sustancialmente.

----



Parece que su código tiene algo como

captar un NUEVO tick en el EURUSD y si al mismo tiempo hay un tick en el USDCHF, entonces está bien.

y si los dos eventos están separados por el tiempo, NO ENTRA.


ESTA ES UNA LÓGICA DEFECTUOSA

 

YuraZ писал (а):

honestamente y no es precisamente bonito... Si la garrapata no llegó para estos pares y se perderá de nuevo

Si la garrapata no llegó, no puede colocar una orden inmediatamente, a menos que utilice un script,

Y sólo si las garrapatas llegan a las empresas de corretaje y no las transmiten a su terminal (de día).

Por eso, cuando implementaba un Asesor Experto multidivisa, hacía una Máquina de Estado de Miles (o Moore),

que supervisó los estados abiertos de la orden para los pares necesarios. Por supuesto, no siempre fue posible

Naturalmente, no siempre pude abrir al precio necesario, pero este enfoque garantizaba que las órdenes se abrieran SIEMPRE.

 
thecore:

YuraZ escribió (a):

francamente y no es precisamente bonito... Si la garrapata no llegó para estos pares y se perderá de nuevo

Si la garrapata no llegó, no puede colocar una orden de inmediato a menos que utilice un script,

Y sólo si las garrapatas llegan a las empresas de corretaje y no las transmiten a su terminal (de día).

Por eso, cuando implementaba un Asesor Experto multidivisa, hacía una Máquina de Estado de Miles (o Moore),

que supervisó los estados abiertos de la orden para los pares necesarios. Por supuesto, no siempre fue posible

Naturalmente, no siempre pude abrir al precio necesario, pero este enfoque garantizaba que las órdenes se abrieran SIEMPRE.

fácil ! es posible hacer un pedido :-) si la garrapata no vino

Piénsalo bien. Si no lo encuentras, te daré una pista.


+1 una de las opciones que usted ha indicado

 
YuraZ:

TÚ Atrapa el tic!!! y un nuevo tic y el comienzo de la hora no son la misma cosa

Un tic puede no llegar hasta unos 5 minutos...

Hay que cambiar la lógica de coger una nueva barra sutilmente por una más suave

tienes unas condiciones demasiado duras para el inicio de la barra - sugerí una más suave

pero si por todos los instrumentos ( que no vienen garrapata entonces kinda no funciona tampoco - ¡Sólo que MUY BAJA VARIABILIDAD!

Sí la cosa es que el EA tiene que trabajar en velas cerradas. Por lo tanto, si una vela no se ha cerrado en cualquier instrumento utilizado, no se tomará la decisión.

Es más difícil con el código porque no soy programador. No puedo poner todo el código, como puedes ver. Pero el programador que me lo hizo está ahora bajo un gran contrato y está muy ocupado y no puede hacerlo. Así que estoy buscando una solución a este problema primero, para no volver a pisar el mismo rastrillo.

 
LeoV:
YuraZ escribió: Para ser sincero, tampoco es muy agradable... Imaginemos que la garrapata no ha llegado para estos pares y se perderá de nuevo

Si mostraras un trozo de código que genera la entrada, podrías encontrar el error lógico más rápidamente

Pero debería haber una solución comúnmente aceptada en MQL, ¿no? ¿Cómo "sincronizar" la apertura de barras para diferentes símbolos? Bueno, aparentemente, debemos esperar a que se abra una nueva barra para todos los símbolos que se utilizan. Pero, ¿cómo hacerlo correctamente?

No es necesario sincronizar ni inventar otras bicicletas. Todo está ya inventado desde hace mucho tiempo. La presencia de una nueva barra formada se comprueba sólo para ese instrumento, en el que el Asesor Experto está instalado a la llegada del primer tick. Y el evento start() también se dispara sólo en ese símbolo a la llegada de un nuevo tick. Te he dado un trozo de código que realiza esta comprobación para que la siguiente posición, en caso de recotizaciones, no se abra en la siguiente barra y tras un fallo se intente abrir en la misma barra. A mí me funciona bien tanto en modo monodivisa como multidivisa. La operación en caso de recotizaciones se abre en la misma barra, pero con cierto retraso, y por tanto no siempre al precio de apertura de la barra, sino con cierto desplazamiento. Es decir, habrá diferencias con el probador, pero no en barras, sino en el precio de apertura.

 
LeoV:
YuraZ:

TÚ Atrapa el tic!!! y un nuevo tic y el comienzo de la hora no son la misma cosa

la garrapata podría no venir durante 5 minutos ---

Hay que cambiar la lógica de coger una nueva barra sutilmente por una más suave

tienes unas condiciones demasiado duras para el inicio de la barra - sugerí una más suave

pero si por todos los instrumentos ( que no vienen garrapata entonces kinda no funciona tampoco - ¡SOLO QUE VARIABILIDAD MUY BAJA!

Sí la cosa es que el EA tiene que trabajar en velas cerradas. Por lo tanto, si una vela no se ha cerrado en cualquier instrumento utilizado, no se tomará la decisión.

Es más difícil con el código porque no soy programador. No puedo poner todo el código, como puedes ver. Pero el programador que me lo hizo está ahora bajo un gran contrato y está muy ocupado y no puede hacerlo. Así que estoy buscando una solución a este problema primero, para no volver a pisar el mismo rastrillo.


¿Y cómo piensa cerrar la hora en principio?


El EURUSD ha cerrado y se abre la nueva hora, mientras que el USDCHF está ocupado durante 15 minutos... bueno, ¡las garrapatas no vienen!

Si un instrumento ha cerrado la HORA, los demás pueden considerarse también cerrados.

las garrapatas pueden no venir por ellas


---

no hay que pensar que la hora debe cerrarse con un tic para todos los pares necesarios


es suficiente para obtener el comienzo de una nueva barra en cualquier par

---

Razón de la queja: