Discusión sobre el artículo "Transacciones comerciales. Estructuras de solicitud y respuesta, descripción y registro." - página 5
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Volodya, tú y yo hemos hablado mucho de esta voz. Te lo he explicado todo lo mejor que he podido, y tú parecías entenderlo todo, pero allá vamos de nuevo....
La función OnTradeTransaction es una función de procesamiento de eventos. La transacción es un evento que ocurrió ayer. La función OnTradeTransaction debería haber funcionado ayer, pero hoy no. Hoy no hay ningún evento de ESTA transacción... Hoy había y probablemente seguirá habiendo, pero diferentes.
Me he vuelto muy viejo. Ya estoy en mi séptima década. Se me olvidan muchas cosas, ¡y practico de un caso a otro! ))
Resulta que no necesitamos una transacción para hoy, simplemente hacemos un bucle:
¡y voilá! Aquí hay una posición abierta. ¿Es así? ))
Saludos, Vladimir.
Los datos se almacenan en el servidor. El terminal los recibe en su entorno y el Asesor Experto los utiliza a continuación.
Artem, ¡buenos días! Hoy me levanté temprano y miré en el terminal, y allí veo que al comienzo de una nueva sesión de trading el Asesor Experto con el código que te mostré antes en mi mensaje"de repente vio" la posición abierta anteayer y trabajó con ella como debería según el algoritmo. ¡Es una especie de milagro! Decidí ejecutar el Asesor Experto en el probador de estrategias para anteayer y ayer. En el probador de estrategias, el Asesor Experto funcionó a la perfección - encontró la posición abierta anteayer y trabajó con ella ayer, como si estuviera escrito en las notas. ¡¡¡Me gustaría llamar su atención sobre este hecho!!! En el probador de estrategias la posición se abrió anteayer, el Asesor Experto la encontró ayer y más adelante....
En el probador de estrategias resulta ser una cosa, pero en el comercio real es muy diferente. Y ayer esta situación ocurrió por primera vez, cuando el Asesor de Expertos no quería "ver" una posición abierta de la nada.
Pregunta - ¿cómo puede ser esto?
Saludos, Vladimir.
Artem, ¡buenos días! Hoy me levanté temprano y miré en el terminal, y allí veo que al comienzo de una nueva sesión de trading el Asesor Experto con el código que te mostré antes en mi mensaje"de repente vio" la posición abierta anteayer y trabajó con ella como debería según el algoritmo. ¡Es una especie de milagro! Decidí ejecutar el Asesor Experto en el probador de estrategias para anteayer y ayer. En el probador de estrategias, el Asesor Experto funcionó a la perfección - encontró la posición abierta anteayer y trabajó con ella ayer, como si estuviera escrito en las notas. ¡¡¡Me gustaría llamar su atención sobre este hecho!!! En el probador de estrategias la posición se abrió anteayer, el Asesor Experto la encontró ayer y más adelante....
Pregunta - ¿cómo puede ser esto?
Saludos, Vladimir.
No se. Este es tu código. Tú lo escribiste. Funciona como está escrito.
No lo sé. Es tu código. Tú lo escribiste. La forma en que está escrito, la forma en que funciona.
Entiendo lo del código. Es muy simple. Artem, he editado un poco mi mensaje anterior, por favor, míralo. He añadido algo más de información. Tal vez te ayude a entenderlo de alguna manera.
Saludos, Vladimir.
También he añadido: durante 8 meses de trading en una cuenta real, ayer por primera vez el Asesor Experto no "vio" una posición abierta. Esto es lo que me sacó de mi rutina.
Entiendo lo del código. Es el más simple. Artem, he editado un poco mi mensaje anterior, por favor, échale un vistazo. He añadido algo más de información. Tal vez ayude a entenderlo de alguna manera.
Saludos, Vladimir.
También añadido: durante 8 meses de trading en una cuenta real, ayer por primera vez el Asesor Experto no "vio" una posición abierta. Esto es lo que me sacó de mi rutina.
Pruebas de estrés para tal caso es necesario, tomar el tenedor fuera de la computadora inmediatamente después de cambiar el entorno de negociación, cortar el Internet o hacer que sea super lento, por lo que la falta de Internet no se fija, y las órdenes comerciales no son prácticamente sent.... o cualquier otra cosa que se le ocurra a semejante no-personal. El entorno comercial real y su fijación incluso con un pequeño número de transacciones comerciales puede dar fallos impredecibles)))))
Los artículos de Artem en la primera tienen al respecto, cómo grabar y cómo supervisar la real)))))
Saber tiene un enfoque más fresco en general, se crea una copia virtual del entorno comercial y cuenta todo lo que hay))))
Las pruebas de estrés para un caso así son necesarias, desenchufar el ordenador inmediatamente después de cambiar el entorno de negociación, cortar internet o hacerlo super lento, para que la falta de internet no se solucione, y las órdenes de negociación prácticamente no se envíen.... o cualquier otra cosa que se le ocurra a alguien tan poco normal.
¡Buenos días, Valery! Todo lo que se enumeran en su mensaje, todo esto sucedió en repetidas ocasiones, e incluso en repetidas ocasiones, durante los ocho meses de negociación en la cuenta real. Al mismo tiempo, el EA vio la posición al día siguiente y al día siguiente. El código de la función OnTradeTransaction() funcionó correctamente durante los ocho meses de trading real.
No tengo explicación para lo que pasó, pero lo único que se me ocurre es un fallo del servidor por parte del forex-dealer. Si usted lee cuidadosamente todos mis mensajes sobre este tema, verá un mensaje de este tipo:
Foro sobre trading, sistemas automatizados de trading y prueba de estrategias de trading
Discusión del artículo "Transacciones comerciales. Estructuras de solicitud y respuesta, descripción y salida de registro"
MrBrooklin, 2023.10.18 04:48 PM
Artem, ¡buenos días! Hoy me he levantado temprano y he mirado en el terminal, y ahí veo que al inicio de una nueva sesión de trading el Asesor Experto con el código que te he mostrado antes en mi mensaje"ha visto de repente" la posición abierta anteayer y ha trabajado con ella como debe según el algoritmo. ¡Es una especie de milagro! Decidí ejecutar el Asesor Experto en el probador de estrategias para anteayer y ayer. En el probador de estrategias, el Asesor Experto funcionó a la perfección - encontró la posición abierta anteayer y trabajó con ella ayer, como si estuviera escrito en las notas. ¡¡¡Me gustaría llamar su atención sobre este hecho!!! En el probador de estrategias la posición se abrió anteayer, el Asesor Experto la encontró ayer y más adelante....
En el probador de estrategias resulta ser una cosa, pero en el comercio real es muy diferente. Y ayer esta situación ocurrió por primera vez, cuando el Asesor de Expertos no quería "ver" una posición abierta de la nada.
Pregunta - ¿cómo puede ser esto?
Saludos, Vladimir.
Tengo un robot que almacena en su estado todas las órdenes activas y su posición total (neteo). El estado se restablece en un archivo en cada cambio y al final del trabajo. Al arrancar y periódicamente durante el funcionamiento, se comprueba la sincronización y se sincroniza el estado si es necesario.
Gracias por compartir una solución interesante a este problema. Intentaré implementarla en mi EA.
Saludos, Vladimir.
Gracias por compartir una solución interesante a un problema similar. Voy a tratar de ponerlo en práctica en mi EA.
Saludos, Vladimir.
Puede ser no sólo un fracaso, y lo que es un fracaso))))) Fijar el estado del entorno comercial no es precisamente una tarea sencilla. Y cuando una orden en un instrumento, ni siquiera se cree que es necesario. Pero en el buen sentido, es necesario.
En el probador la ejecución ideal, en la vida real es casi ideal, pero a veces no es ideal e incluso inadecuada.
Por lo tanto, en la vida real tenemos que resolver el problema de alguna manera, para que el Asesor Experto entienda lo que está pasando con las órdenes. Y si con las órdenes está claro, con las órdenes es más complicado. En cada tick o con menos frecuencia comprobar el estado de la orden, o mirar el precio, si de repente se convirtió en más o menos que el precio de la orden para comprobar el estado de la orden. )))
Buenos días, Artyom ¿Existe una diferencia fundamental para la función OnTradeTransaction() dónde debería estar ubicada - antes de la función OnTick() o después de ella? Si es fundamental, ¿por qué?
Saludos, Vladimir.