← К каталогу
Исходный код · ID 3713

cmystatistic_5363996961055735974.mqh

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Библиотека CMyStatistic предоставляет набор методов для получения статистических показателей результатов тестирования торговых стратегий. Класс инкапсулирует доступ к данным стратегического тестера MetaTrader, возвращая значения ключевых торговых метрик. В библиотеку входят методы для расчёта прибыли и убытков, анализа серий сделок, показателей риска (просадки баланса и средств, коэффициент Шарпа), а также торговой активности (количество сделок, прибыльных и убыточных трейдов, коротких и длинных позиций). Каждый метод обращается к функции TesterStatistics с соответствующим параметром статистики, обеспечивая единый интерфейс для получения результатов тестирования.

Состав библиотеки

Классов: 1 · методов: 42 · конструкторов: 1 · деструкторов: 0 · отдельных функций: 0

Классы
Класс class CMyStatistic

Класс для получения статистических показателей результатов тестирования торговых стратегий.

Методы и конструкторы
Конструктор · CMyStatistic CMyStatistic(void)

Конструктор класса, инициализирует определение языка терминала.

Метод · CMyStatistic double INITIAL_DEPOSIT(void)

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

Метод · CMyStatistic double WITHDRAWAL(void)

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

Метод · CMyStatistic double PROFIT(void)

Чистая прибыль по окончании тестирования.

Метод · CMyStatistic double GROSS_PROFIT(void)

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

Метод · CMyStatistic double GROSS_LOSS(void)

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

Метод · CMyStatistic double MAX_PROFITTRADE(void)

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

Метод · CMyStatistic double MAX_LOSSTRADE(void)

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

Метод · CMyStatistic double CONPROFITMAX(void)

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

Метод · CMyStatistic int CONPROFITMAX_TRADES(void)

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

Метод · CMyStatistic double MAX_CONWINS(void)

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

Метод · CMyStatistic int MAX_CONPROFIT_TRADES(void)

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

Метод · CMyStatistic double CONLOSSMAX(void)

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

Метод · CMyStatistic int CONLOSSMAX_TRADES(void)

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

Метод · CMyStatistic double MAX_CONLOSSES(void)

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

Метод · CMyStatistic int MAX_CONLOSS_TRADES(void)

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

Метод · CMyStatistic double BALANCEMIN(void)

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

Метод · CMyStatistic double BALANCE_DD(void)

Максимальная просадка баланса в деньгах.

Метод · CMyStatistic double BALANCEDD_PERCENT(void)

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

Метод · CMyStatistic double BALANCE_DDREL_PERCENT(void)

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

Метод · CMyStatistic double BALANCE_DD_RELATIVE(void)

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

Метод · CMyStatistic double EQUITYMIN(void)

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

Метод · CMyStatistic double EQUITY_DD(void)

Максимальная просадка средств в деньгах.

Метод · CMyStatistic double EQUITYDD_PERCENT(void)

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

Метод · CMyStatistic double EQUITY_DDREL_PERCENT(void)

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

Метод · CMyStatistic double EQUITY_DD_RELATIVE(void)

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

Метод · CMyStatistic double EXPECTED_PAYOFF(void)

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

Метод · CMyStatistic double PROFIT_FACTOR(void)

Прибыльность — отношение общей прибыли к общему убытку.

Метод · CMyStatistic double RECOVERY_FACTOR(void)

Фактор восстановления — отношение чистой прибыли к максимальной просадке баланса.

Метод · CMyStatistic double SHARPE_RATIO(void)

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

Метод · CMyStatistic double MIN_MARGINLEVEL(void)

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

Метод · CMyStatistic double CUSTOM_ONTESTER(void)

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

Метод · CMyStatistic int DEALS(void)

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

Метод · CMyStatistic int TRADES(void)

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

Метод · CMyStatistic int PROFIT_TRADES(void)

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

Метод · CMyStatistic int LOSS_TRADES(void)

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

Метод · CMyStatistic int SHORT_TRADES(void)

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

Метод · CMyStatistic int LONG_TRADES(void)

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

Метод · CMyStatistic int PROFIT_SHORTTRADES(void)

Количество коротких прибыльных трейдов.

Метод · CMyStatistic int PROFIT_LONGTRADES(void)

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

Метод · CMyStatistic int PROFITTRADES_AVGCON(void)

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

Метод · CMyStatistic int LOSSTRADES_AVGCON(void)

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

Метод · CMyStatistic double COMPLEX_CRITERION(void)

Комплексный критерий оптимизации.

Получить полный код

Поиск по коду файла

class CMyStatistic
  {
protected:
   bool              m_lan;
private:

public:
                     CMyStatistic(void);

   double            INITIAL_DEPOSIT(void);       // === Значение начального депозита
   double            WITHDRAWAL(void);            // === Количество выведенных со счета средств
   double            PROFIT(void);                // === Чистая прибыль по окончании тестирования, сумма STAT_GROSS_PROFIT и STAT_GROSS_LOSS (STAT_GROSS_LOSS всегда меньше или равно нулю)
   double            GROSS_PROFIT(void);          // === Общая прибыль, сумма всех прибыльных (положительных) трейдов. Значение больше или равно нулю
   double            GROSS_LOSS(void);            // === Общий убыток, сумма всех убыточных (отрицательных) трейдов. Значение меньше или равно нулю
   double            MAX_PROFITTRADE(void);       // === Максимальная прибыль – наибольшее значение среди всех прибыльных трейдов. Значение больше или равно нулю
   double            MAX_LOSSTRADE(void);         // === Максимальный убыток – наименьшее значение среди всех убыточных трейдов. Значение меньше или равно нулю
   double            CONPROFITMAX(void);          // === Максимальная прибыль в последовательности прибыльных трейдов. Значение больше или равно нулю
   int               CONPROFITMAX_TRADES(void);   // === Количество трейдов, сформировавших STAT_CONPROFITMAX (максимальная прибыль в последовательности прибыльных трейдов)
   double            MAX_CONWINS(void);           // === Общая прибыль в самой длинной серии прибыльных трейдов
   int               MAX_CONPROFIT_TRADES(void);  // === Количество трейдов  в самой длинной серии прибыльных трейдов STAT_MAX_CONWINS
   double            CONLOSSMAX(void);            // === Максимальный убыток в последовательности убыточных трейдов. Значение меньше или равно нулю
   int               CONLOSSMAX_TRADES(void);     // === Количество трейдов, сформировавших STAT_CONLOSSMAX (максимальный убыток в последовательности убыточных трейдов)
   double            MAX_CONLOSSES(void);         // === Общий убыток в самой длинной серии убыточных трейдов
   int               MAX_CONLOSS_TRADES(void);    // === Количество трейдов  в самой длинной серии убыточных трейдов STAT_MAX_CONLOSSES
   double            BALANCEMIN(void);            // === Минимальное значение баланса
   double            BALANCE_DD(void);            // === Максимальная просадка баланса в деньгах. В процессе торговли баланс может испытать множество просадок, берется наибольшее значение.
   double            BALANCEDD_PERCENT(void);     // === Просадка баланса в процентах, которая была зафиксирована в момент максимальной просадки баланса в деньгах (STAT_BALANCE_DD).
   double            BALANCE_DDREL_PERCENT(void); // === Максимальная просадка баланса в процентах. В процессе торговли баланс может испытать множество просадок, для каждой фиксируется относительное значение просадки в процентах. Возвращается наибольшее значение
   double            BALANCE_DD_RELATIVE(void);   // === Просадка баланса в деньгах, которая была зафиксирована в момент максимальной просадки баланса в процентах (STAT_BALANCE_DDREL_PERCENT).
   double            EQUITYMIN(void);             // === Минимальное значение собственных средств
   double            EQUITY_DD(void);             // === Максимальная просадка средств в деньгах. В процессе торговли средства могут испытать множество просадок, берется наибольшее значение.
   double            EQUITYDD_PERCENT(void);      // === Просадка средств в процентах, которая была зафиксирована в момент максимальной просадки средств в деньгах (STAT_EQUITY_DD).
   double            EQUITY_DDREL_PERCENT(void);  // === Максимальная просадка средств в процентах. В процессе торговли средства могут испытать множество просадок, для каждой фиксируется относительное значение просадки в процентах. Возвращается наибольшее значение
   double            EQUITY_DD_RELATIVE(void);    // === Просадка средств в деньгах, которая была зафиксирована в момент максимальной просадки средств в процентах (STAT_EQUITY_DDREL_PERCENT).
   double            EXPECTED_PAYOFF(void);       // === Математическое ожидание выигрыша
   double            PROFIT_FACTOR(void);         // === Прибыльность – отношение STAT_GROSS_PROFIT/STAT_GROSS_LOSS. Если STAT_GROSS_LOSS=0, то прибыльность принимает значение DBL_MAX
   double            RECOVERY_FACTOR(void);       // === Фактор восстановления – отношение STAT_PROFIT/STAT_BALANCE_DD
   double            SHARPE_RATIO(void);          // === Коэффициент Шарпа
   double            MIN_MARGINLEVEL(void);       // === Минимальное достигнутое значение уровня маржи
   double            CUSTOM_ONTESTER(void);       // === Значение рассчитанного пользовательского критерия оптимизации, возвращаемого функцией OnTester()
   int               DEALS(void);                 // === Количество совершенных сделок
   int               TRADES(void);                // === Количество трейдов
   int               PROFIT_TRADES(void);         // === Прибыльные трейды
   int               LOSS_TRADES(void);           // === Убыточные трейды
   int               SHORT_TRADES(void);          // === Короткие трейды
   int               LONG_TRADES(void);           //

Показано первые 50% кода (символов: 8146)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
814,60₽ ≈ $9.95