Верните низкий (Low) приоритет MetaTester'у

 

С какой-то недавней версии у MetaTester приоритет стал "Ниже среднего" (Below Normal) вместо "Низкого" (Low). После этого стали подтомаживать компьютеры, на которых он работает. И люди, которые выделяли мне свои ресурсы процессора массово стали просить отключить MetaTester.

Я бы попросил вернуть Низкий (Low) приоритет метатестеру.

 
Вернем.
 
Renat:
Вернем.

Лучше сделать регулируемым (для каждого агента).

--

Вапче в тестере очень бедный интерфейс.  Это касается и настроек, которые не регулируются в основном (как в данном случае), и программного mql-интерфейса, и т.д.

Например очень не хватает функции получения номера прогона в оптимизаторе, функций получения в OnTester() результатов прогона из "стандартного комплекта"  расчитываемых тестером

значений (просадка, прибыльность, коэфф.Шарпа и прочих). Да, их можно посчитать в эксперте самостоятельно, только зачем же считать дважды, время прогона дорого!

Могу поподробнее, чего ещё хотелось бы, но лучше это в другой ветке.

 

Тестерный агент сейчас расширяется, он в режиме визуализации превращается в мощный плеер визуализации процессов тестирования (с маркет вотчем, тиками, чартами, открытыми позициями. историей сделок, логами и тд). Скрины скоро опубликуем.

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

Уже несколько билдов как в тестере можно брать результаты тестирования в OnDeinit через функцию TesterStatistics(ENUM_STATISTICS statistic_id):

Статистика тестирования

После окончания тестирования вычисляются статистические показатели результатов торговли по множеству параметров. Значения показателей можно получить с помощью функции TesterStatistics(), указав идентификатор показателя из перечисления ENUM_STATISTICS.

Хотя при вычислении статистики используются показатели двух типов - int и double - функция возвращает все значения в виде double. Все статистические величины, имеющие тип double, по умолчанию выражаются в валюте депозита, если не сказано иное.

ENUM_STATISTICS

Идентификатор

Описание статистического показателя

Тип

STAT_INITIAL_DEPOSIT

Значение начального депозита

double

STAT_WITHDRAWAL

Количество выведенных со счета средств

double

STAT_PROFIT

Чистая прибыль по окончании тестирования, сумма STAT_GROSS_PROFIT и STAT_GROSS_LOSS (STAT_GROSS_LOSS всегда меньше или равно нулю)

double

STAT_GROSS_PROFIT

Общая прибыль, сумма всех прибыльных (положительных) трейдов. Значение больше или равно нулю

double

STAT_GROSS_LOSS

Общий убыток, сумма всех убыточных (отрицательных) трейдов. Значение меньше или равно нулю

double

STAT_MAX_PROFITTRADE

Максимальная прибыль – наибольшее значение среди всех прибыльных трейдов. Значение больше или равно нулю

double

STAT_MAX_LOSSTRADE

Максимальный убыток – наименьшее значение среди всех убыточных трейдов. Значение меньше или равно нулю

double

STAT_CONPROFITMAX

Максимальная прибыль в последовательности прибыльных трейдов. Значение больше или равно нулю

double

STAT_CONPROFITMAX_TRADES

Количество трейдов, сформировавших STAT_CONPROFITMAX (максимальная прибыль в последовательности прибыльных трейдов)

int

STAT_MAX_CONWINS

Общая прибыль в самой длинной серии прибыльных трейдов

double

STAT_MAX_CONPROFIT_TRADES

Количество трейдов  в самой длинной серии прибыльных трейдов STAT_MAX_CONWINS

int

STAT_CONLOSSMAX

Максимальный убыток в последовательности убыточных трейдов. Значение меньше или равно нулю

double

STAT_CONLOSSMAX_TRADES

Количество трейдов, сформировавших STAT_CONLOSSMAX (максимальный убыток в последовательности убыточных трейдов)

int

STAT_MAX_CONLOSSES

Общий убыток в самой длинной серии убыточных трейдов

double

STAT_MAX_CONLOSS_TRADES

Количество трейдов  в самой длинной серии убыточных трейдов STAT_MAX_CONLOSSES

int

STAT_BALANCEMIN

Минимальное значение баланса

double

STAT_BALANCE_DD

Максимальная просадка баланса в деньгах. В процессе торговли баланс может испытать множество просадок, берется наибольшее значение.

double

STAT_BALANCEDD_PERCENT

Просадка баланса в процентах, которая была зафиксирована в момент максимальной просадки баланса в деньгах (STAT_BALANCE_DD).

double

STAT_BALANCE_DDREL_PERCENT

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

double

STAT_BALANCE_DD_RELATIVE

Просадка баланса в деньгах, которая была зафиксирована в момент максимальной просадки баланса в процентах (STAT_BALANCE_DDREL_PERCENT).

double

STAT_EQUITYMIN

Минимальное значение собственных средств

double

STAT_EQUITY_DD

Максимальная просадка средств в деньгах. В процессе торговли средства могут испытать множество просадок, берется наибольшее значение.

double

STAT_EQUITYDD_PERCENT

Просадка средств в процентах, которая была зафиксирована в момент максимальной просадки средств в деньгах (STAT_EQUITY_DD).

double

STAT_EQUITY_DDREL_PERCENT

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

double

STAT_EQUITY_DD_RELATIVE

Просадка средств в деньгах, которая была зафиксирована в момент максимальной просадки средств в процентах (STAT_EQUITY_DDREL_PERCENT).

double

STAT_EXPECTED_PAYOFF

Математическое ожидание выигрыша

double

STAT_PROFIT_FACTOR

Прибыльность – отношение STAT_GROSS_PROFIT/STAT_GROSS_LOSS. Если STAT_GROSS_LOSS=0, то прибыльность принимает значение DBL_MAX

double

STAT_RECOVERY_FACTOR

Фактор восстановления – отношение STAT_PROFIT/STAT_BALANCE_DD

double

STAT_SHARPE_RATIO

Коэффициент Шарпа

double

STAT_MAX_MARGINLEVEL

Максимальное достигнутое значение уровня маржи

double

STAT_CUSTOM_ONTESTER

Значение рассчитанного пользовательского критерия оптимизации, возвращаемого функцией OnTester()

double

STAT_DEALS

Количество совершенных сделок

int

STAT_TRADES

Количество трейдов

int

STAT_PROFIT_TRADES

Прибыльные трейды

int

STAT_LOSS_TRADES

Убыточные трейды

int

STAT_SHORT_TRADES

Короткие трейды

int

STAT_LONG_TRADES

Длинные трейды

int

STAT_PROFIT_SHORTTRADES

Короткие прибыльные трейды

int

STAT_PROFIT_LONGTRADES

Длинные прибыльные трейды

int

STAT_PROFITTRADES_AVGCON

Средняя длина прибыльной серии трейдов

int

STAT_LOSSTRADES_AVGCON

Средняя длина убыточной серии трейдов

int

 
Renat:

Уже несколько билдов как в тестере можно брать результаты тестирования в OnDeinit через функцию TesterStatistics(ENUM_STATISTICS statistic_id):

Класс! А я прозевал. И в OnTester() оказывается можно вызывать.  Это очень здорово. 

Пожалуйста, добавьте ещё номер прогона в виде функции, значение которой можно было бы брать в ините, что-нибудь типа int OptimizatorPassNum().

Он нужен для самых разных целей, например: 1) построения таблицы результатов, пронумерованной по проходам, 2) инициализации генератора случайных чисел уникальным числом в начале прогона,

3) регулирования подмешанного к сигналам "шума", для уменьшения подгоночных эффектов, (4, 5, 6....) и т.д. 

 
Ну и где низкий приоритет? Уже два билда прошло со времен вашего ответа, что вернёте.
 
PiramidaR:
Ну и где низкий приоритет? Уже два билда прошло со времен вашего ответа, что вернёте.
Вернем в следующем билде.
 
Renat Fatkhullin:
Вернем в следующем билде.

Забыли вернуть? Или только на удаленных машинах приоритет низкий (не проверял), а на локальной не надо?

 
Aleksey Vyazmikin:

Забыли вернуть? Или только на удаленных машинах приоритет низкий (не проверял), а на локальной не надо?

У локальных не надо.
 
Renat Fatkhullin:
У локальных не надо.

Почему не надо?

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