Probador de Estrategias de MetaTrader 5 y MQL5 Cloud Network - página 16

 
Interesting:

¿Es tan difícil hacer un gestor de agentes directos para Linux (al menos para los más populares)?

La cuestión es que un archivo tan simple como metatester[64].exe (~2,5 Mb) incluye

  1. el propio agente de pruebas, incluyendo todo el subsistema de tiempo de ejecución de MQL5, su caja de arena y toda la lógica de negocio del terminal
  2. Toda la parte de la interfaz gráfica de usuario de la visualización de pruebas (se trata de una interfaz gráfica de usuario pura de Windows sin posibilidad de ser portado)
  3. Parte de la interfaz gráfica de usuario del gestor de agentes
  4. Red en la nube MQL5
  5. actualizaciones automáticas

Hemos empaquetado en un archivo EXE, que no requiere otras bibliotecas/componentes adicionales, tantas funciones y simplificado el trabajo con él, que la replicación de la misma funcionalidad con la misma calidad en Linux está fuera de discusión.
 
Renat:
El hecho de que hayamos empaquetado en un archivo EXE, que no requiere otras bibliotecas/componentes adicionales, tantas funciones y simplificado el trabajo con él, que la replicación de la misma funcionalidad con la misma calidad en Linux está fuera de toda duda.

El eterno problema de Microsoft con las plataformas.

Renat:

El caso es que un archivo tan sencillo como metatester[64].exe (~2,5 Mb) incluye

  1. el propio agente de pruebas, incluyendo todo el subsistema de tiempo de ejecución de MQL5, su caja de arena y toda la lógica de negocio del terminal
  2. Toda la parte de la interfaz gráfica de usuario de la visualización de pruebas (se trata de una interfaz gráfica de usuario pura de Windows sin posibilidad de ser portado)
  3. Parte de la interfaz gráfica de usuario del gestor de agentes
  4. Red en la nube MQL5
  5. actualizaciones automáticas

Está claro. No entiendo por qué no pueden recortar parte de la funcionalidad y dejar sólo lo que está disponible en MQL5 Cloud Network?

Por ejemplo, no entiendo la necesidad de ese esquema del segundo punto (cuyo punto principal es la imposibilidad de portar)...

 
Interesting:

El eterno problema de Microsoft con las plataformas cruzadas.

Esto es comprensible. No entiendo por qué no pueden recortar parte de la funcionalidad y dejar sólo lo que funciona en MQL5 Cloud Network?

Por ejemplo, no entiendo la necesidad de ese esquema del segundo punto (la imposibilidad de portar es el punto principal)...

Prefiero hacerme preguntas más importantes:

  1. ¿Quién necesita un probador de versiones reducidas para Linux? Sin protecciones, sin soporte normal de 32/64, sin arquitectura agradable y sin simplicidad. Los desarrolladores ciertamente no lo necesitan.
  2. ¿Por qué los desarrolladores van a gastar medio año (como mínimo) de su vida en este proyecto escupiendo y maldiciendo? ¿Dónde está el beneficio del promotor?
  3. ¿Por qué los desarrolladores van a arruinar una arquitectura limpia introduciendo un horror multiplataforma en el código?

El desarrollo de software es un negocio impulsado por respuestas claras a cuestiones económicas.

Los que no tienen en cuenta la economía dura van y hacen proyectos aéreos, hacen quebrar a los inversores y luego... cambiar de trabajo y, por lo general, de nuevo en un círculo :)

ps: MetaTrader 4 y MetaTrader 5 funcionan bastante decentemente en Linux a través de Wine, y nos aseguramos explícitamente de que el terminal funciona bien en Wine (arreglamos las pequeñas cosas de vez en cuando).

 
Renat:

En la próxima versión, los agentes probadores no podrán trabajar en la red MQL5 Cloud Network, si se lanzan bajo virtualizadores o emuladores (Virtual PC, VMWare, Virtual Box, Wine, etc.). Esto se hace para minimizar la posibilidad de que se corrompan las calificaciones de rendimiento.

El modo de servidor normal de ejecución de los agentes en los virtualizadores se conserva íntegramente. Esto significa que puede utilizar agentes de cualquier forma para sus propias necesidades.

¿cuál es el problema, qué tipo de overclocking tiene lugar bajo la virtualización?

¿qué importa dónde estén los granos?

realmente lo siento si es posible girar la calificación , honestamente no entiendo realmente cómo ...

¿qué es el rating? ¿qué es el rating?

hay una tarea para el núcleo - el núcleo completa la tarea - hay un tiempo para que el núcleo complete esta tarea

no debería haber ningún otro criterio

todo esto se puede controlar en la red MQL5 Cloud Network

En pocas palabras

1-core dice que estoy listo

2- MQL5 Cloud Network dice al núcleo, ponte a trabajar, fija la hora

Los 3 núcleos funcionan durante 3 segundos

4-core responde a MQL5 Cloud Network -> toma su tarea

5 - bien hecho kernel - lo has hecho en 3 segundos - aquí tienes un caramelo en forma de 0,1 céntimos

otro núcleo

1-Core dijo que estoy listo.

2- MQL5 Cloud Network - > el núcleo es puntual

Los 3 núcleos funcionan durante 30 segundos

Respuestas de 4 núcleos a MQL5 Cloud Network -> toma tu tarea

5 - bien hecho núcleo - lo hiciste en 30 segundos - aquí es un caramelo en forma de 0,1 centavos

es sencillo: cuanto más rápido y más duro trabajes, más conseguirás.

La red de nubes MQL5 no debe tener favoritos - las tareas se les dará más a menudo ...

Es como en la vida: los favoritos reciben pedidos más a menudo)

lo que significa que la Red de Nube - no debe distribuir las tareas sólo por lista ! sino probablemente moviendo los núcleos a las colas

para evitar que sólo los primeros de la lista consigan el trabajo, y así sucesivamente en un círculo

si suponemos que hay 100 tareas y unos 1000 núcleos

entonces los 100 primeros obtendrán el trabajo

las completarán - entonces se pondrán en cola otras 100 tareas y se repartirán de nuevo a los núcleos que estén al frente de la lista

y el puente 900 estará inactivo

por lo que los primeros 100 núcleos serán los más propensos a ganar

---

si el problema no se resuelve, entonces, por desgracia...

:-(((( , entonces menos 8 de mis buenos núcleos de la piscina, I7 - 3 GHz, 8 gigas de núcleos

No voy a dejar la máquina virtual - está bajo LINUX CentOS , no voy a pasar a windows host .

¡este es exactamente el anfitrión que trabaja 24/7!

----

Lo hice a propósito en una máquina virtual y asigné 2 núcleos de los 3 del host a la máquina virtual

Ahora tengo 47 núcleos en el pool - de los cuales sólo estos dos últimos

están en la misma máquina

64x 3 núcleos amd

es decir, de los 3 núcleos físicos dos están siendo compartidos por segunda vez pero desde un sistema operativo diferente

Renat, no entiendo muy bien por qué esto sería un problema

Si ayuda a probar y encontrar una solución - permitiendo el uso de máquinas virtuales se alegrará

Puedo hacer un par más de estos si es necesario

Por cierto, de los 47 núcleos sólo estos dos se han distribuido 2 veces

los otros son todos físicamente una vez - incluso los que están en una máquina i7 grande son todos en máquinas virtuales pero sólo una vez

--

 
El problema es que no se puede cobrar "por tarea". Se paga por los recursos utilizados = rendimiento de la CPU (PR) * tiempo.

En esta fórmula, es fundamental una estimación precisa del rendimiento, que es fácil de falsear en las virtualizaciones.
 

En uno de los ordenadores he instalado y ejecutado agentes de prueba, pero no funcionan. Más concretamente, el tiempo de la CPU es ocupado periódicamente por los servicios de metatester (hasta el 100% por núcleo), pero el gestor de agentes muestra ceros (tareas y tiempo; local y en la nube) y en la web de mql5 estos agentes tienen ceros en el perfil (pero los agentes son visibles en el perfil, durante una de las ejecuciones de alguna manera uno de ellos tenía una tarea y luego otra). Cuando se accede a estos agentes desde MetaTrader5, se reciben mensajes de que están ocupados.

Aquí está el contenido del directorio MT5tester (desde el que ejecuto metatester.exe) y los subdirectorios y archivos adjuntos:

MT5tester
    Tester
        Manager
            logs
                20110723.log
                20110725.log
            common.ini
    metatester.exe

Adjunto estos archivos. Como puede ver, el directorio Tester carece de los directorios Agents* que se crean normalmente.

Versión metatester build 479, Windows Server 2003 R2 con SP2, Enterprise Edition, inglés, 32 bit; CPU Intel Core 2 Duo T9300 2.5 Ghz; 4 GB RAM. El directorio de MT5tester y todos los subdirectorios y archivos para todos los usuarios (Todos) está configurado en Control Total, antes de esto está configurado en Control Total para el usuario que está ejecutando metatester.exe (y entrando en Windows) y para el usuario SYSTEM que está ejecutando los servicios de metatester.

Archivos adjuntos:
pack.zip  2 kb
 

Los agentes estaban registrados en MQL5 Cloud Network y trabajaban en tareas de la red. En este momento, los agentes no podían conectarse como remotos, ya que estaban muy ocupados.

Aquí están sus estadísticas incompletas (aún no están actualizados todos los campos): se han realizado unas 63 000 tareas:

Intel Core2 Duo T8300 a 2,40GHz, 3581MB


0 32483 0 2011.06.08 2011.07.25
Intel Core2 Duo T8300 a 2,40GHz, 3581MB


0 29861 0 2011.06.08 2011.07.25


Los directorios de los agentes se eliminaron automáticamente al desinstalar estos agentes (limpian su propia basura). Aquí están las líneas del registro de eliminación de agentes:

RQ    0    Tester    11:12:33    MetaTester 5 build 479 (12 Jul 2011)
HQ    0    Startup    11:12:33    initialization finished
NH    0    Service    11:12:47    Service 'MetaTester-1' stop initialized
MP    0    Service    11:12:50    Service 'MetaTester-1' stopped in 3031 ms
NH    0    Service    11:12:50    Service 'MetaTester-1' successfully uninstalled
PS    0    Service    11:12:51    Service 'MetaTester-2' stop initialized
KK    0    Service    11:12:56    Service 'MetaTester-2' stopped in 5500 ms
OS    0    Service    11:12:56    Service 'MetaTester-2' successfully uninstalled


En general, todo funciona como está previsto.

 
Renat:

Los agentes estaban registrados en MQL5 Cloud Network y trabajaban en tareas de la red. En este momento, los agentes no pudieron conectarse como remotos, ya que estaban muy ocupados.

...

Los directorios de los Agentes se borraron automáticamente durante la desinstalación de los mismos (limpian su propia basura). Aquí están las líneas del registro sobre la eliminación de agentes:

...

Es decir, otros agentes:

CPU PR Tareas Ingresos Creado Actividad
Intel Core2 Duo T9300 a 2,50 GHz, 4094 MB 0 0 0 2011.06.08 2011.06.08
Intel Core2 Duo T9300 a 2,50 GHz, 4094 MB 0 2 0 2011.06.08 2011.07.22

Los directorios de los Agentes seguían sin aparecer mientras se ejecutaban los servicios de metatester (sé que se borran los datos al desinstalar).

 
zdd:

Es decir, otros agentes:

CPU PR Tareas Ingresos Creado Actividad
Intel Core2 Duo T9300 a 2,50 GHz, 4094 MB 0 0 0 2011.06.08 2011.06.08
Intel Core2 Duo T9300 a 2,50 GHz, 4094 MB 0 2 0 2011.06.08 2011.07.22

Los directorios de los Agentes nunca aparecieron mientras los servicios de metatester estaban funcionando (soy consciente de que al desinstalar se borran los datos).

Estos son los agentes equivocados - mira las fechas de creación y última actividad.

Los correctos para mirar son los agentes que cité - sus fechas de última actividad son exactamente las mismas que su fecha actual y sus registros de desinstalación.

ps: instala los agentes de nuevo y mira los directorios y sus registros personales

 
Renat:

Estos son los agentes equivocados - mira las fechas de creación y última actividad.

Es correcto mirar los agentes que he citado - sus fechas de última actividad son exactamente las mismas que su fecha actual y sus registros de desinstalación.

ps: instala los agentes de nuevo y mira los directorios y sus registros personales

Los agentes que citaste están funcionando en otro ordenador (con un procesador T8300), no hay problemas con ellos.

Comprobando de nuevo (en un ordenador con procesador T9300).

1. Desinstalar los agentes. Desinstalado el directorio MT5tester con todo su contenido.

2. Desinstalé todos los agentes del perfil, que estaban en el ordenador con el T9300.

3. He creado la carpeta MT5proba y le he dado acceso completo para Todos.

He copiado el archivo metatester.exe (build 479) en él (fue obtenido por LiveUpdate en MetaTrader5). 5.

5. ejecuté metatester.exe, especifiqué la cuenta, creé dos agentes en nuevos puertos (uno de ellos no se inició por razón desconocida, así que creé dos más, borré los innecesarios). Adjunto el archivo de registro.

6. Inicié MetaTrader5 en otro ordenador, borré todos los agentes remotos en el probador de estrategias, creé dos nuevos agentes (dirección IP especificada, puerto, contraseña). Seleccionamos cada uno de ellos como agente actual y ejecutamos la prueba única de un EA. Se detectó el tipo de CPU, pero no se ejecutó la prueba.

Probador de estrategias de MetaTrader5

Muestro el registro:

CS      0       zddbase 15:38:19        connecting to 192.168.0.33:4001
CD      0       zddbase 15:38:19        connected
EM      0       zddbase 15:38:19        authorized (agent build 479)
II      0       Tester  15:38:19        EURUSD,M1 (MetaQuotes-Demo): testing of Experts\proba.ex5 from 2011.07.10 00:00 to 2011.07.16 00:00 to be started
NF      0       zddbase 15:38:19        common synchronization completed
HL      0       zddbase 15:38:19        3768 bytes of group info loaded
DM      0       zddbase 15:38:19        1478 bytes of tester parameters loaded
MJ      0       zddbase 15:38:19        3256 bytes of input parameters loaded
FN      0       zddbase 15:38:19        initial deposit 10000.00 USD, leverage 1:100
CE      0       zddbase 15:38:19        successfully initialized
MO      0       zddbase 15:38:19        13 Kb of total initialization data received
QF      0       zddbase 15:38:19        Intel Core2 Duo  T9300 @ 2.50 GHz, 4094 MB
FQ      2       zddbase 15:38:19        symbol EURUSD synchronization error
QD      0       zddbase 15:38:19        cannot get history EURUSD,M1
HO      0       zddbase 15:38:20        connection closed
CD      0       zddbase 15:38:34        connecting to 192.168.0.33:4002
MF      0       zddbase 15:38:35        connected
CL      0       zddbase 15:38:35        authorized (agent build 479)
GK      0       Tester  15:38:35        EURUSD,M1 (MetaQuotes-Demo): testing of Experts\proba.ex5 from 2011.07.10 00:00 to 2011.07.16 00:00 to be started
LD      0       zddbase 15:38:35        common synchronization completed
JN      0       zddbase 15:38:35        3768 bytes of group info loaded
NK      0       zddbase 15:38:35        1478 bytes of tester parameters loaded
KM      0       zddbase 15:38:35        3256 bytes of input parameters loaded
LH      0       zddbase 15:38:35        initial deposit 10000.00 USD, leverage 1:100
MS      0       zddbase 15:38:35        successfully initialized
CM      0       zddbase 15:38:35        13 Kb of total initialization data received
OD      0       zddbase 15:38:35        Intel Core2 Duo  T9300 @ 2.50 GHz, 4094 MB
LS      2       zddbase 15:38:35        symbol EURUSD synchronization error
OG      0       zddbase 15:38:35        cannot get history EURUSD,M1
PQ      0       zddbase 15:38:35        connection closed

Durante la optimización:

EF      1       Tester  15:43:50        genetic mode turned on due to 4443670 passes, to use complete algorithm decrease amount of optimized parameters
LJ      0       Tester  15:43:50        Experts\proba.ex5 on EURUSD,M1 from 2011.07.10 00:00 to 2011.07.16 00:00
NL      0       Tester  15:43:50        genetic optimization started
DK      0       Tester  15:43:50        size of initial task pack is 128
JP      0       zddbase 15:43:50        connecting to 192.168.0.33:4001
IG      0       zddbase 15:43:50        connecting to 192.168.0.33:4002
PS      0       zddbase 15:43:50        connected
NO      0       zddbase 15:43:50        connected
HE      0       zddbase 15:43:50        authorized (agent build 479)
PO      0       zddbase 15:43:50        authorized (agent build 479)
NP      0       zddbase 15:43:50        genetic pass (0, 2628127, 1) started
HI      0       zddbase 15:43:50        genetic pass (1, 2957422, 1) started
GQ      0       zddbase 15:43:50        common synchronization completed
GJ      0       zddbase 15:43:50        common synchronization completed
NN      2       zddbase 15:43:50        genetic pass (0, 2628127) tested with error "no history"
KF      0       Tester  15:43:50        genetic pass (0, 2628127) returned to queue
QR      0       zddbase 15:43:50        connection closed
PG      0       zddbase 15:43:50        connecting to 192.168.0.33:4001
HS      0       zddbase 15:43:50        connected
RQ      0       zddbase 15:43:50        authorized (agent build 479)
LJ      0       zddbase 15:43:50        genetic pass (0, 2628127, 1) started
QS      0       zddbase 15:43:50        common synchronization completed
JI      2       zddbase 15:43:50        genetic pass (1, 2957422) tested with error "no history"
GM      0       Tester  15:43:50        genetic pass (1, 2957422) returned to queue
GJ      0       zddbase 15:43:50        connection closed

Los registros muestran que el agente no pudo cargar el historial. No ha cambiado nada en el árbol de directorios de los agentes en comparación con lo que di antes (no hay directorios de Agentes*, ni historial).

Los agentes aún no han aparecido en el perfil de mql5, aún no están cargando la CPU (hace 1 hora que han empezado)...