MQL: seguridad frente a oportunidades

 

Habiendo analizado muchos años de experiencia de trabajo con MQL y tratando de ajustarlo a las necesidades, me di cuenta de que
El escollo más frecuente, que aparecía de una tarea a otra, era el intercambio de información en ambos sentidos.

Es simple: el antiguo hacha de MQL - sólo hay una manera de obtener información del Asesor Experto, que es archivos en el hardware. Que, según los estándares actuales, son las herramientas primitivas del trabajo duro del programador.
Darse cuenta de este hecho no es poco para entender la dirección del desarrollo necesario.

Y ¡cuánto código se ha removido en busca de otras variantes de transmisión de información!
Pero todos ellos se reducen al uso de herramientas no MQL... Desgraciadamente.

El intercambio de información entre terminales y entre terminales y otras aplicaciones, el envío de datos a un sitio, el envío de información a los agentes o de los agentes a EA - todos nosotros, queridos usuarios y desarrolladores, podemos continuar esta lista.
A lo largo de los años de nuestra práctica activa en MQL, se han adaptado y vuelto a probar casi todas las herramientas posibles del sistema:
- envío legal de correo, FTP, mensajes Push
- archivos fuera de la carpeta del terminal
- mapeo
- tuberías
- tomas de corriente

Las tuberías son dadas por los desarrolladores como una tecnología de intercambio de información, pero por alguna razón se utilizan de forma truncada. Las tuberías en MQL sólo pueden ser del lado del cliente.

Estoy sorprendido y tengo una pregunta: ¿por qué es sólo del lado del cliente? Es una cosa "negra de una pierna" aquí...
Tratando de analizar esta limitación en términos de seguridad, he llegado a la conclusión de que no, la tubería del servidor MQL no tiene ningún efecto sobre la seguridad. Dado que en mi versión actual el archivo exe del servidor escrito por mí mismo es una necesidad, no es seguro de todos modos.
¿Tal vez los desarrolladores son demasiado perezosos? En realidad no, los apoyan y desarrollan activamente...

-----

Hace más de un año Renat me recomendó portar el sistema winsock2 a MQL sin ninguna dll auto-escrita (describí parcialmente cómo se hizo en el artículo).
El código MQL se utilizó para subir el servidor + convertirlo en modo no-bloqueo + sondearlo con un temporizador de milisegundos (todavía así en ese momento) de aceptar clientes + servirlos con el mismo temporizador...

Renat dijo entonces que por "algunas" razones técnicas esto era imposible. Pero resultó incluso lo contrario: ¡todo es posible e incluso al máximo posible!

Hacer el servidor experto directamente en el gráfico, y conectarse a él desde cualquier ordenador en Internet - fue un avance en la técnica de funcionamiento. Orientación directa a la conexión p2p, copiadores, sincronizadores, optimizadores, tareas distribuidas, etc.

-----

Volviendo a mi pregunta sobre el desarrollo posterior de MQL, me gustaría resumirlo así:
Queridos desarrolladores, ¿cuándo daremos el paso desde el antiguo archivo, a una herramienta mucho más acogedora, rápida y mejor, como es la tecnología cliente/servidor?
Al fin y al cabo, el hecho de que hayas dado pips al cliente, significa automáticamente una salida irrevocable de la caja de arena. Porque la canalización del cliente en MQL implica una canalización del servidor autoescrita, y está fuera de ella.

PS.
Recientemente, como ejemplo, se planteó un tema importante sobre la transferencia de información a los agentes locales. Esta es otra llamada de atención para ti. Hay muchos temas de este tipo y cada usuario de MQL intenta resolverlos según su nivel de conocimientos.

Hasta ahora no había entendido la importancia de las herramientas integradas en MQL para el intercambio de información. No he considerado el nivel de exigencia.
Pero el análisis de estos temas me lleva a una conclusión clara : ¡el intercambio de información en ambos sentidos debe hacerse!
Ha llegado el momento de recoger las piedras.

 
Suscribo cada palabra.
 

Buen puesto.

Renat suele venir a estos y decir que no ves una mierda y no entiendes desde tu caja de arena.

 
TheXpert:

Buen puesto.

En estas suele venir Renat y decir que no ve una mierda y no entiende desde su caja de arena.

Esperemos y veamos.

ZS. Sería una buena idea celebrar una votación, no es una cuestión ociosa.

ZS.ZS. Esto también se aplica al Cuarteto.

 
Ya era hora...
 

La necesidad está ahí. Y esa necesidad surge en las tareas más interesantes.

Fuera de tema, pero aprovechando la ocasión, os recuerdo queResourceRead() fue prometido en su día.Al menos permitiría a los expertos de la terminal intercambiar grandes cantidades de información.

 
Como siempre, sólo se trata de los beneficios, ignorando por completo la seguridad y las consecuencias. Además, la evaluación es realizada por un solo comerciante.

Cualquier desarrollador puede hacer cualquier solución para sí mismo y transmitir a/desde sus terminales lo que quiera. Pero no vamos a hacer un agujero estándar, y no vamos a hacer un agujero global estándar para el 100% de los terminales. Además, no haremos conexiones http de red.

En las próximas versiones, habrá un nuevo método de interacción de red personalizado con los servidores de comercio, que permitirá a los corredores y desarrolladores en MQL4/5 ampliar la funcionalidad del terminal con el apoyo en los servidores donde los manejadores están escritos en los plugins.
 
Renat:
En las próximas versiones, habrá un nuevo método de interacción de red personalizado con los servidores de comercio que permitirá a los corredores y desarrolladores en MQL4/5 ampliar la funcionalidad de la terminal con el apoyo en los servidores donde los manejadores están escritos en los plugins.
¿Más detalles sobre este punto?
 
Me atrevo a decir que la organización del peyema bidireccional hará que MT5 sea esencialmente sólo un enlace de transferencia entre las aplicaciones de terceros y la bolsa. En este caso, la aparición de los llamados nuevos programas independientes, complementos sobre el terminal -de hecho, competidores directos de MQ parasitando sus tecnologías y prometiendo hacer el trabajo en los mercados financieros "más cómodo y productivo" por sólo 29,95 dólares al mes son inevitables.
 
C-4:
Me atrevo a decir que la organización del peiime bidireccional hará que MT5 sea esencialmente sólo un enlace de transmisión entre las aplicaciones de terceros y la bolsa. En este caso, es inevitable la aparición de los llamados nuevos programas independientes-adaptados al terminal -de hecho, competidores directos de MQ que parasitan sus tecnologías y prometen hacer el trabajo en los mercados financieros "aún más cómodo y productivo" por sólo 29,95 dólares al mes.

Exactamente.

Y lo que es más importante, cada uno de los primeros programas será esencialmente un software espía y recogerá una gran cantidad de información crítica sobre las cuentas, el historial y la configuración de la cuenta. Los desarrolladores de terceros no tienen freno en este tema: no les importa la destrucción de la seguridad y la privacidad. Realmente "no entienden" cuál es el problema. Cuando los pillas, se desentienden hasta el último momento, y luego viene lo de "¡nos estáis quitando el trabajo duro, mientras os hemos estado ayudando durante tantos años!". Eso por no hablar de las violaciones de nuestros derechos, las licencias y la piratería informática.

Ya hemos visto suficiente de este tipo de "ayuda" y por eso estamos endureciendo las normas.

 
FAQ:
¿Puede explicar con más detalle este punto?

Un broker (o un desarrollador externo) puede escribir un programa en MQL4/MQL5 puro e incluirlo legalmente en su paquete de distribución (nosotros lo incluiremos en su paquete de distribución) y configurar gráficos por defecto con indicadores y EAs preestablecidos. No estamos en contra de la inclusión de programas personalizados (basados únicamente en código MQL4/MQL5 puro, sin DLL y sin fanatismo) en su propia distribución de brokers.

Este programa puede implementar su propia funcionalidad, con el apoyo del servidor de comercio. Para ello, se escribe un plugin para MetaTrader 4/5 Server API para el servidor, que puede recibir y responder a los paquetes de comandos personalizados enviados desde los programas MQL4/MQL5 en el terminal.

Así, un corredor puede ampliar las capacidades del terminal sin sacrificar la seguridad de sus clientes y sin violar las licencias del sistema. Los desarrolladores de terceros tienen una nueva oportunidad de vender sus soluciones de forma legal e interna.