Charla sobre el probador de estrategias de MT5 - página 10

 
Yuriy Zaytsev:

¡de eso estoy hablando! ¡de eso estoy hablando!

Vasiliy, es posible competir por el expediente de 100 terminales, está claro.

otra cosa es que se puedan copiar las operaciones de un terminal a otro mediante el copiador


La cuestión es que el propio terminal (si es MT4) escribe los ticks en el archivo ticks.raw...

pero si trata de escribir 100 terminales a la vez en el archivo {TERMIN}\history\ {{broke}\tisks.raw - se producirá un accidente

Eso es lo que no creo que Andrei entienda.


Vuelvo a oír el chirrido del sofá teórico debajo de Andrei.

¡¡¡¡Ow!!!! ¡Yuri! ¡Por favor, escúchame!

¿Crees que el terminal MT es tan tonto, y escrito por gente tan tonta, que varios terminales intentarán escribir lo mismo en el mismo archivo?

¿No? Así que digo que no. El terminal MT está muy bien escrito, ¡no se toma la libertad de escribir lo mismo en un archivo si alguien ya está escribiendo en él! Puedes convencerte fácilmente de ello, haz un experimento de una vez, ¡basta de teorías infructuosas! ¡¡¡¡Es esta "inteligibilidad" la que permite utilizar una carpeta compartida para varios terminales, todo funciona sin problemas!!!! Sólo es cuestión de hacer que esta función (seleccionar una carpeta compartida) sea una función estándar.

 

En el caso de un probador, todas las bases del historial se almacenan de forma centralizada en la carpeta del probador. Y todos los agentes probadores que se ejecutan desde esa carpeta leen el historial de la misma base de datos. Mientras el primer agente sincroniza el historial, otros agentes, si necesitan el mismo historial, esperan

En el probador, el acceso compartido a la base de datos del historial (y de los ticks también, por cierto) se hace por la propia razón de que no hay escritura (o mejor dicho, la escritura es única durante la sincronización), y sólo hay lectura

 
Slawa:

Si hablamos de un probador, todas las bases del historial se almacenan de forma centralizada en la carpeta del probador. Y todos los agentes probadores que se ejecutan desde esa carpeta leen el historial de la misma base de datos. Mientras el primer agente sincroniza el historial, otros agentes, si necesitan el mismo historial, esperan

En el probador, el acceso compartido a la base del historial (y a los ticks también, por cierto) se hace por la propia razón de que no hay escritura (o mejor dicho, la escritura es puntual durante la sincronización), sino que sólo hay lectura

Eso es lo que le digo a Andrei.

Es necesario enviar 100 terminales a una carpeta, en la que se recogen los ticks y los plazos.

¡y eso es lo que parece no entender!

 
Andrey Dik:

¡¡¡¡Ow!!!! ¡Yuriiiiiiiiii! ¡Escúchame, por favor!

¿Crees que el terminal MT es tan tonto y está escrito por gente tan tonta como para que varios terminales intenten escribir lo mismo en un mismo archivo?

¿No? Así que digo que no. El terminal MT está muy bien escrito, ¡no se toma la libertad de escribir lo mismo en un archivo si alguien ya está escribiendo en él! Puedes convencerte fácilmente de ello, haz un experimento de una vez, ¡deja de teorizar inútilmente! ¡¡¡¡Es esta "inteligibilidad" la que permite utilizar una carpeta compartida para varios terminales, todo funciona sin problemas!!!! Sólo es cuestión de hacer que esta función (seleccionar una carpeta compartida) sea una función estándar.

sólo los inteligentes, y por eso tienen

la grabación es algo único.

Eres tú el que no me ha escuchado durante varios posts y dices tonterías teóricas.

(lee donde te digo -casi me golpeo la calva- que no se puede escribir simultáneamente desde 100 terminales) - no te ofendas, estoy siendo amable

Puedes hacer que funcione: sólo tienes que decir que el sofá era demasiado rígido o demasiado blando.

 
Slawa:

Si hablamos de un probador, todas las bases del historial se almacenan de forma centralizada en la carpeta del probador. Y todos los agentes probadores que se ejecutan desde esa carpeta leen el historial de la misma base de datos. Mientras el primer agente sincroniza el historial, los demás agentes, si necesitan el mismo historial, esperan

En Tester, la base de datos del historial es compartida (y los ticks también, por cierto) por la misma razón de que no hay escritura (o mejor dicho, la escritura es única durante la sincronización), sino sólo lectura

Estás hablando de la carpeta compartida C:\NUsers\NUserAppData\NRoaming\NMetaQuotes\NTester.

El mismo principio es necesario para el terminal en el modo normal, no con la especificación forzada de una carpeta común a las bases del historial utilizando enlaces. Ahora funciona bien, pero por favor implementa esta característica normalmente especificando una carpeta para las bases del historial en la configuración del terminal.

 
Andrey Dik:

Se trata de la carpeta compartida C:\NUsers\NUser\AppData\NRoaming\NMetaQuotes\NTester.

Este es el mismo principio para el terminal en modo normal, no forzando una carpeta compartida a las bases del historial a través de enlaces. Ahora funciona bien, pero por favor implemente esta característica normalmente especificando la carpeta a las bases del historial en la configuración de la terminal.

No funciona bien y no puede funcionar. Sólo tienes suerte y las bases no se matan por sobrescribir mucho. Disponemos de una revisión total de todas las bases de datos con una recuperación de errores transparente basada en los datos del servidor, lo que elimina posibles colisiones (si se escribe desde diferentes terminales en el mismo directorio) y daños.

Hay que preocuparse mucho por el riesgo para trabajar en un entorno así. Es aún más espeluznante exigir y afirmar que todo es correcto y normal.

 
Yuriy Zaytsev:

Eso es lo que le digo a Andrei.

No quiero decir palabrotas, aunque tú me provocas insistentemente a hacerlo.

¡Y eso es exactamente lo que parece no entender!

Realmente no quiero discutir, aunque tú me provocas obstinadamente a hacerlo.

¡Joder! ¡¡¡¡¡PRUEBE A VER POR SÍ MISMO - HAGA UNA CARPETA COMÚN PARA EL HISTORIAL Y ESPECIFÍQUELA PARA TODOS LOS TERMINALES EN !!!!! ¡¡¡¡ESTO FUNCIONA!!!!

¡Métete en tu sofá teórico en ****! Práctica, ¡prueba! ¡La carpeta compartida en los enlaces funciona y no hay problemas!

 
Renat Fatkhullin:

No funciona bien y no puede funcionar. Sólo tienes suerte y las bases no se matan por sobreescritura.

Hay que tener mucha aversión al riesgo para trabajar en un entorno así.

Sí, es una muleta. Funciona, pero es una muleta. En el caso de los agentes, pensaron en compartir archivos, ¿por qué no hacerlo para el terminal?

Afortunadamente, la terminal no intenta escribir en el archivo si la escritura ya está hecha, por eso ahora funciona el modo con carpeta por enlaces.

 

Un día nos sorprendió que los administradores de un corredor vinieran a quejarse de errores en el registro de archivos.

Resultó que llevaban mucho tiempo haciendo copias de seguridad de los servidores con todos los archivos sobre la marcha. No es una copia en la sombra, sino que estaban copiando archivos a la manera de los campesinos. A la pregunta "¿en qué estaban pensando?" la respuesta fue "¡por qué, todo funcionó bien durante mucho tiempo!

Así es más o menos como responde @Andrey Dik. Al mismo tiempo sugiere hacer eso a millones de comerciantes. Para que un par de cientos pisen el mismo rastrillo cada hora.

 
Renat Fatkhullin:

Un día nos sorprendió que los administradores de un corredor vinieran a quejarse de errores de grabación de archivos.

Resultó que llevaban mucho tiempo haciendo copias de seguridad de los servidores con todos los archivos sobre la marcha. No es una copia en la sombra, sino que estaban copiando archivos a la manera de los campesinos. A la pregunta "¿en qué estaban pensando?" la respuesta fue "¡por qué, todo funcionó bien durante mucho tiempo!

Así es más o menos como responde @Andrey Dik. Al mismo tiempo sugiere hacer eso a millones de comerciantes. Para que un par de cientos pisen el mismo rastrillo cada hora.

Andrei ofrece a los desarrolladores hacer que el acceso a la carpeta pública sea una opción interna. Eso es exactamente lo que sugiere, te lo pide a ti, no a millones de comerciantes.
Razón de la queja: