MetaTrader 5 Strategy Tester и MQL5 Cloud Network - страница 16

 
Interesting:

А что на прямую только менеджер агентов для Линухи сделать такая сложная задча (Хоть для самых популярных из них)?

Дело в том, что такой простой файлик как metatester[64].exe  (~2.5 Mb) включает в себя:

  1. самого агента тестирования, включая всю подсистему исполнения MQL5, его песочницу и всю бизнес-логику терминала
  2. всю GUI часть визуализации тестирования (а это чистый Windows GUI без шанса на портирование)
  3. GUI часть менеджера агентов
  4. MQL5 Cloud Network
  5. автообновления

Мы уложили в один единственный EXE файл, который не требует никаких других вспомогательных библиотек/компонентов, столь много функций и так упростили работу с ним, что речи о повторении такого же функционала с таким же качеством под Linux практически не может быть.
 
Renat:
Мы уложили в один единственный EXE файл, который не требует никаких других вспомогательных библиотек/компонентов, столь много функций и так упростили работу с ним, что речи о повторении такого же функционала с таким же качеством под Linux практически не может быть.

Извечная проблема Майкрософта с кроссплатформенностью.

Renat:

Дело в том, что такой простой файлик как metatester[64].exe  (~2.5 Mb) включает в себя:

  1. самого агента тестирования, включая всю подсистему исполнения MQL5, его песочницу и всю бизнес-логику терминала
  2. всю GUI часть визуализации тестирования (а это чистый Windows GUI без шанса на портирование)
  3. GUI часть менеджера агентов
  4. MQL5 Cloud Network
  5. автообновления

Это понятно. Непонятно почему нельзя урезать часть функционала и оставить толькуо то что работает с MQL5 Cloud Network?

Например не пойму в чем необходимость в такой схеме второго пункта (на невозможности портирования которого акцент и сделан)...

 
Interesting:

Извечная проблема Майкрософта с кроссплатформенностью.

Это понятно. Непонятно почему нельзя урезать часть функционала и оставить толькуо то что работает с MQL5 Cloud Network?

Например не пойму в чем необходимость в такой схеме второго пункта (на невозможности портирования акцент и сделан)...

Лучше задаться более важными вопросами:

  1. Кому нужен урезанный тестер под Линукс? Без защит, без нормальной поддержки 32/64, без красивой архитектуры и простоты. Разработчикам точно это категорически не нужно.
  2. Почему разработчики будут тратить плюясь и ругаясь полгода (минимум) своей жизни на этот проект? Где профит разработчиков?
  3. Почему разработчики будут гробить чистую архитектуру внедрением кроссплатформенного ужаса в код?

Разработка софта - это бизнес, управляемый четкими ответами на экономические вопросы.

Кто не учитывает жестко экономику, тот идет делать воздушные проекты, разоряет инвесторов, а потом... меняет место работы и обычно заново по кругу :)

ps: MetaTrader 4 и MetaTrader 5 вполне пристойно работают под Линуксом через Wine, а мы явным образом заботимся о том, чтобы в Wine терминал работал хорошо (периодически фиксим мелочи).

 
Renat:

В следующей версии тестерные агенты не смогут работать в MQL5 Cloud Network, если они запущены под виртуализаторами или эмуляторами (Virtual PC, VMWare, Virtual Box, Wine и тд). Это сделано для того, чтобы минимизировать возможность накрутки рейтингов производительности.

Обычный серверный режим работы агентов под виртуализаторами полностью сохраняется. Это означает, что для собственных нужд можно использовать агентов в любом виде.

не понятно в чем проблема , о каких накрутках из под виртуалки речь?

 какая разница где стоят ядра  ?

очень жаль , если есть какая то там возможность крутить рейтинг, чеcно, не совсем понимаю каким образом...

какой рейтинг?  что такое рейтинг ?

 

 

есть задача ядру -  ядро задачу выполняет - есть время за которое оно выполнить эту задачу

больше не должно быть никаких критериев

 

все это можно контролировать на стороне   MQL5 Cloud Network

упрощенно 

1-ядро сказало я готово

2- MQL5 Cloud Network - > говорит ядру , на работай ,  засекаем время

3- ядро работает 3 секунды

4-ядро отвечает в  MQL5 Cloud Network  -> забери свою задачу

5-молодец ядро - ты сделало это за 3 секунды - вот тебе конфетка в виде 0.1 цента 

 

другое ядро

 

1-ядро сказало я готово

2- MQL5 Cloud Network - > ядру на работай  засекаем время

3- ядро работает 30 секунд

4-ядро отвечает в  MQL5 Cloud Network  -> забери свою задачу

5-молодец ядро - ты сделало это за 30 секунды - вот тебе конфетка в виде 0.1 цента 

 

все просто - кто быстрее и больше работает тот просто больше получает

другой вопрос что   MQL5 Cloud Network   - не должно иметь  ЛЮБИМЧИКОВ - на которых задачи будут выдаваться чаще ...

 это как в жизни - любимчикам чаще дают заказы!  :-)

   имеется ввиду что  Cloud Network    -  должно как то распределять задачи не просто по списку ! а наверно как то перемещая ядра по очередям

что бы не возникало ситуации кода работу будут получать только те кто стоит вверху списка - и так по кругу

если представить что есть всего 100  задач  а ядер примерно 1000

 то задачи получат первые 100

они их выполнят- затем подойдет очередь на следующие 100 задачь и оппять их раздадут ядрам которы стоят впереди списка

а мостальные 900 будет простаивать

 

таки образом зарабатывть будут в основном первые 100 ядер

 

---

  

ну в общем если проблема не решается то увы 

 :-((( ,    тогда  минус 8 моих оцень бодрых ядер  из пула ,    I7 - 3 ггц  ,  8 гиг  ядер

 я не буду уходить из под виртуалки - она стоит под LINUX CentOS ,  переходить на windows  хост не стану..

 это как раз  хост который 24/7 работает!

----

специально  только что сделал на виртуалке  и выделил из 3 ядер хоста  2 ядра на виртуалку  

 

у меня в пуле сейчас 47 ядер - из которых только вот эти последние два

стоят на одном железе

железо 64x 3 ядра amd

т е из 3 физических ядер  два раздаю  второй раз но с другой операционки 

 

Ренат , не совсем понимаю почему таким образом может возникнуть проблема

  

если это поможет оттестировать  и найти решение - которое позволит использовать виртуальные машины буду рад

если нуждно могу еще сделать пару таких 

 

  кстати - из 47 ядер  только эти два раздал 2 раза

остальные все стоят  физически один раз - даже те которые на большой машине i7 хоть и стоят на виртуалке но раздаются один раз

--

 
Проблема в том, что нельзя начислять деньги "за задачу". Оплата идет за использованные ресурсы = производительность процессора (PR) * время.

В этой формуле критически важна точная оценка производительности, которую легко подделать в виртуалках.
 

На одном из компьютеров установил и запустил агентов тестирования, но они не работают. Точнее, процессорное время периодически занимается службами metatester (вплоть до 100% на ядро), но и менеджер агентов показывает нули (задач и времени; локальных и облака) и на сайте mql5 в профиле стоят нули у этих агентов (но агенты видны в профиле, во время одного из запусков каким-то образом у одного из них появилась одна, а потом и еще одна задачи). При обращении к этим агентам из MetaTrader5 появляются сообщения, что они заняты.

Привожу содержимое директория MT5tester (из которого запускаю файл metatester.exe) и вложенных поддиректориев и файлов:

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

Прикладываю эти файлы.  Как можно видеть, в директории Tester отсутствуют директории Agents*, которые обычно создаются.

Версия metatester build 479, ОС Windows Server 2003 R2 with SP2, Enterprise Edition, English, 32 bit; CPU Intel Core 2 Duo T9300 2.5 Ghz; RAM 4 GB. Для директория MT5tester и всех вложенных поддиректориев и файлов для всех пользователей (Everyone) установил полный доступ (Full Control), до этого делал полный доступ для пользователя, под которым осуществляется запуск metatester.exe (и вход в Windows) и для пользователя SYSTEM, под которым запускаются службы metatester.

Файлы:
pack.zip  2 kb
 

Агенты были зарегистрированы в MQL5 Cloud Network и работали над задачами из сети. В этот момент к агентам нельзя было подключиться как к удаленным, так как они реально были заняты.

Вот их неполная (еще не все поля обновляются) статистика - проведено около 63 000 задач:

Intel Core2 Duo T8300 @ 2.40GHz, 3581MB


0 32483 0 2011.06.08 2011.07.25
Intel Core2 Duo T8300 @ 2.40GHz, 3581MB


0 29861 0 2011.06.08 2011.07.25


Каталоги Agents были автоматически удалены во время деинсталляции этих агентов (они чистят за собой свой мусор). Вот строки из лога про удаление агентов:

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


В общем, все работает как задумано.

 
Renat:

Агенты были зарегистрированы в MQL5 Cloud Network и работали над задачами из сети. В этот момент к агентам нельзя было подключиться как к удаленным, так как они реально были заняты.

...

Каталоги Agents были автоматически удалены во время деинсталляции этих агентов (они чистят за собой свой мусор). Вот строки из лога про удаление агентов:

...

Имеются ввиду другие агенты:

CPU PR Задачи Доход Создан Активность
Intel Core2 Duo T9300 @ 2.50GHz, 4094MB 0 0 0 2011.06.08 2011.06.08
Intel Core2 Duo T9300 @ 2.50GHz, 4094MB 0 2 0 2011.06.08 2011.07.22

 

Каталоги Agents так и не появлялись во время работы служб metatester (о том, что при деинсталляции удаляются данные, я знаю).

 
zdd:

Имеются ввиду другие агенты:

CPU PR Задачи Доход Создан Активность
Intel Core2 Duo T9300 @ 2.50GHz, 4094MB 0 0 0 2011.06.08 2011.06.08
Intel Core2 Duo T9300 @ 2.50GHz, 4094MB 0 2 0 2011.06.08 2011.07.22

 

Каталоги Agents так и не появлялись во время работы служб metatester (о том, что при деинсталляции удаляются данные, я знаю).

Это не те агенты - посмотрите на даты создания и последней активности.

Правильно смотреть на тех агентов, которых я привел - у них как раз даты последней активности совпадают с текущей датой и логами их деинсталляции.

ps: проинсталлируйте агентов еще раз и посмотрите на каталоги и их персональные логи

 
Renat:

Это не те агенты - посмотрите на даты создания и последней активности.

Правильно смотреть на тех агентов, которых я привел - у них как раз даты последней активности совпадают с текущей датой и логами их деинсталляции.

ps: проинсталлируйте агентов еще раз и посмотрите на каталоги и их персональные логи

Агенты, которые вы привели, работают на другом компьютере (с процессором T8300), к ним вопросов нет.

 

Проверяю еще раз (на компьютере с процессором T9300).

1. Деинсталлировал агенты. Удалил каталог MT5tester вместе со всем содержимым.

2. Удалил из профиля все агенты, которые были на компьютере с процессором T9300.

3. Создал каталог MT5proba. Указал для него полный доступ для пользователя Everyone.

4. Скопировал в него файл metatester.exe (build 479) (получен при помощи LiveUpdate в MetaTrader5).

5. Запустил metatester.exe, указал учетную запись, создал два агента на новых портах (один из них не запустился по неизвестной причине, поэтому создал еще два, лишние удалил). Прикладываю лог-файл.

6. На другом компьютере запустил MetaTrader5, в тестере стратегий удалил всех Remote агентов, создал два новых агента (указал IP-адрес, порт, пароль). Выбрал каждого из них в качестве текущего и запустил одиночное тестирование советника. Определился тип процессора, но тестирование не выполнилось.

MetaTrader5 Strategy Tester 

Привожу журнал: 

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.50GHz, 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.50GHz, 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

При оптимизации:

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

 Из журналов видно, что агенту не удалось подгрузить историю. В дереве каталогов агентов ничего не изменилось по сравнению с тем, что я приводил ранее (нет каталогов Agents*, нет истории). 

 

В профиле на mql5 агенты пока не появились, процессор пока не нагружают (прошел 1 час с момента их запуска)...

Причина обращения: