Discusión sobre el artículo "Trabajando con sockets en MQL, o Cómo convertirse en proveedor de señales" - página 7
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
Hola, ¿Este código funciona en MQL4?
Estoy tratando de portarlo a mql4, y cuando se llama a la función DLL bind() en la función MQL StartServer, me da el siguiente mensaje:
¡Otro artículo súper útil!
Esta opción es mucho más cómoda que archivos y BD.
Gracias camarad ;)
Hola, funciona bien en MT4.
Tx compañero. ¡Código increíble!
Hola, Tratando de cambiar esto a MQL4 pero encontrando problemas debido al requisito Trade.mqh en signalclient. ¿Cómo lo hiciste?
Si usted podría, por favor comparta su versión MT4, así, que ayudará a los novatos como yo.
Saludos
Empecé a copiar operaciones, puse un Asesor Experto (servidor/cliente) en los gráficos de cada símbolo negociado para el Asesor Experto multidivisa, el Asesor Experto generó muchas operaciones durante la tarde-noche-mañana, pero algunas operaciones se perdieron según los volúmenes copiados.
Es decir, como mínimo es necesario añadir una comprobación periódica de la necesidad de sincronización intermedia de los volúmenes de posición del servidor y del cliente, de forma similar a como funciona en el servicio Señales.
Bueno, y después de la recarga de emergencia de los terminales el servidor envía mensajes a los clientes por alguna razón de que tiene cero posiciones (aunque no es cierto), y los clientes obedientemente cierran sus posiciones. Estas son las observaciones.
Gracias por el artículo con ejemplos, voy a hacer un servicio de señales sobre su base.
S.Y.:
Очевидно, что данные примеры сервера, рассылающие любому клиенту информацию, не являются оптимальными. К примеру, вы наверняка захотите ограничить доступ к своей информации. Значит, как минимум, к обязательным требованиям необходимо отнести:
¿cómo se puede implementar esto? cero conocimiento de esto (incluso ejecutando un servidor / cliente en una máquina local, algunos dejaron cliente conectado al servidor).
¿Cómo se puede implementar esto? cero conocimiento de esto (incluso ejecutando un servidor / cliente en la máquina local, algunos dejaron cliente conectado al servidor).
https://www.mql5.com/en/code/15534
Gracias, voy a investigarlo.
Pues bien, después de la recarga de emergencia de los terminales, el servidor envía mensajes a los clientes diciendo por alguna razón que tiene cero posiciones (aunque no sea cierto), y los clientes obedientemente cierran sus posiciones. Tales observaciones.
Entiendo que todo tipo de malentendidos con las posiciones se producen por los momentos en que el terminal ha arrancado, pero aún no se ha conectado al servidor de negociación, y los sockets se levantan a la vez y o bien el servidor envía información sobre la falta de posiciones a los clientes y éstos cubren las posiciones que tienen, o bien el cliente recibe información del servidor sobre posiciones y hasta que no ve las suyas - se apresura a abrirlas, respaldando los volúmenes disponibles. Entiendo que una comprobación previa de la conexión del terminal con el servidor de negociación solucionará estos malentendidos.
Por lo demás, la estabilidad de los sockets es agradable.
Añadido:
Un heck taki omitir desde el servidor de mensajes con cero volúmenes de las posiciones, que no es cierto, no entiendo cómo sucede esto y donde estos ceros se toman.
Si no las posiciones de mercado cerrado se habría derrumbado por alguna razón....
H.Y.: y sucede de vez en cuando, una vez que vuelva a cargar los terminales - todo es normal, como debe ser, y la otra vez se cierra todo a cero....
Alexey ( @o_o ), si sabes donde indagar, por favor.
He reiniciado los terminales después, y sin problemas, todo funcionaba como debería....
cavar en el servidor. donde determina cuantos lotes tiene abiertos por símbolo
Añadir comprobaciones de errores para las funciones de solicitud de posición MQL, etc.
Añadir una impresión allí para ver que era MQL que devolvió ceros y no el socket que era estúpido.
He quitado OnTrade() de OnInit()-y OnTrade() para empezar, quizás así se acabe el lío.
H.Y.: No se ha acabado. Pero un par de comprobaciones de la conexión del terminal con el servidor de comercio parecen haber solucionado el problema.
Hola a todos,
Estoy compilando en MQL5 y sigo recibiendo el error:
en la línea:
EDIT:
Para los interesados, lo solucioné copiando manualmente los campos de un struct a otro.
Aquí está el código:
Debo añadir que tuve muchos errores de compilación en algunos códigos de error WSA, que tuve que importar manualmente de winsock.h, y en la función: