Тестирование
Во вкладке "Strategy Tester — Settings" можно:
- Expert Advisor — выбрать тестируемый советник из списка доступных. Для этого советник должен быть скомпилирован и находится в директории "Experts". Все вновь создаваемые эксперты автоматически помещаются в эту директорию;
- Symbol — выбрать один из доступных финансовых инструментов;
- Period — выбрать период инструмента (таймфрейм);
- Model — выбрать метод моделирования баров: Open Price Only — использовать цены открытия баров текущего таймфрейма (самый быстрый способ);
Control points — использовать последние 10 баров текущего периода и метод фрактальной генерации. При этом динамика развития цен внутри одного бара будет повторять динамику последних десяти баров. Если имеются данные меньшего периода, то для фрактальной генерации используются 5 меньшего периода;
Every tick — генерировать каждый тик. Тики генерируются между контротльными точками, но в отличие от предыдущего метода контрольные точки генерируются на основании данных самого мелкого из доступных таймфремов. Это наиболее точный и наиболее длительный способ моделирования. - Refresh file — обновлять файл данных. При тестировании советников Strategy Tester может использовать уже существующий файл данных. В качестве файла данных можно использовать любые данные в формате *.FXT (например, полученные на основе реальных тиковых данных). Если эта опция включена, при тестировании существующий файл будет удален, а вместо него будет создан новый, на основе существующих данных и выбранного метода моделирования баров. Сгенерированные файлы формата *.FXT хранятся в директории /TESTER/HYSTORY;
- Use date — использовать диапазон дат при тестировании (From — начальная дата; To — дата окончания тестирования). Если эта опция отключена, при тестировании будут использоваться все доступные данные;
- Expert properties — открыть окно "Expert properties", позволяющее управлять параметрами советника при тестировании;
- Symbols properties — посмотреть параметры финансового инструмента. Эти данные записываются в заголовок файла *.FXT и используются для эмуляции работы сервера;
- Open chart — открыть окно выбранного для тестирования графика финансового инструмента с нанесенными на него значками открытия и закрытия позиций и другими объектами. Это график может быть открыт только после проведения тестирования;
- Start — начать тестирование.
- Optimization — флажок, переключающий тестирование стратегий на оптимизацию параметров. Более детальная информация по оптимизации параметров советника приведена ниже;
- Positions — опция управляющая направлением открываемых позиций (Only Long — открывать только длинные позиции; Only Short — открывать только короткие позиции; Long and Short — открывать позиции в обе стороны);
- Initial deposit — начальный депозит.
Во вкладке "Test Limitations" представлены параметры, ограничивающие тестирование советника. Эти параметры определены изначально, но их значения можно изменять. Для этого необходимо дважды щелкнуть левой кнопкой мыши на требуемом значении и вписать другое. Кроме того, флажок слева от названия параметра позволяет включить или выключить его. К параметрам, ограничивающим тестирование советника, относятся:
- Balance minimum — минимальное значение баланса;
- Profit maximum — максимальная прибыль;
- Minimal margin level % — минимальный уровень маржы в процентах;
- Maximum drawdown % — максимальная просадка в процентах;
- Consecutive loss — серия из убыточных сделок в денежных единицах;
- Consecutive loss trades — количество убыточных сделок в одной серии;
- Consecutive win — серия из прибыльных сделок в денежных единицах;
- Consecutive win trades — количество прибыльных сделок в одной серии.
Просмотр результатов тестирования
Для просмотра результатов тестирования используются оставшиеся четыре вкладки окна "Strategy Tester": Results, Report, Equity Graph и Journal.
Вкладка Results
Результаты тестирования в этой вкладке представлены в виде таблицы с информацией о всех проведенных торговых операциях. Таблица состоит из следующих полей:
- Op — номер торговой операции;
- Time — время совершения операции;
- Type — тип совершенной операции (sell, buy, s/l, t/p, modify и так далее);
- Ticket — номер тикета (торговой позиции или ордера);
- Lots — количество лотов;
- Price — цена;
- S/L — значение Stop Loss ордера;
- T/P — значение Take Profit ордера;
- Profit — прибыль/убыток. Значение прибыли/убытка проставляется только для операций закрытия позиций;
- Balance — значение баланса. Значение баланса проставляется только для операций закрытия позиций.
В этой вкладке представлены обобщенные результаты тестирования и некоторые ключевые показатели:
- Initial deposit — начальный депозит;
- Total net profit — чистая прибыль (валовая прибыль за вычетом валовых убытков);
- Gross profit — валовая прибыль;
- Gross loss — валовые убытки;
- Trades total — общее количество торговых позиций;
- Profit trades — количество прибыльных торговых позиций;
- Loss trades — количество прибыльных торговых позиций;
- Largest profit trade — наиболее прибыльная торговая позиция;
- Largest loss trade — наиболее убыточная позиция;
- Max consecutive winners — наибольшая серия прибыльных торговых позиций и их абсолютные значения;
- Max consecutive lossers — наибольшая серия убыточных торговых позиций и их абсолютные значения;
- Avg consecutive winners — среднее количество прибыльных сделок среди серий;
- Avg consecutive lossers — среднее количество убыточных сделок среди серий;
- Max consecutive profit — наибольшая прибыль в серии и размер этой серии торговых позиций;
- Max consecutive loss — наибольший убыток в серии и размер этой серии торговых позиций;
- Absolute drawdown — forex советникипросадка (наибольший убыток ниже линии баланса);
- Max drawdown — максимальная просадка (наибольший убыток от локального максимума).
Во вкладке "Equity Graph" автоматически рисуется график состояния баланса счета, наглядно отражающий динамику результатов торговли при тестирования. Вкладка Journal
Во вкладке "Journal" автоматически публикуются сообщения о ходе тестирования советника. Этот журнал полностью идентичен журналу окна "Terminal — Journal", за исключением того, что в окне тестера публикуются сообщения при тестировании советника, а не при его реальной работе на рынке. При тестировании "Strategy Tester" выводит данные в отдельный каталог /TESTER/LOGS.
Оптимизация параметров советникаОптимизация параметров советника заключается в подборе наилучших показателей входных параметров. Это достигается путем перебора переменных. Для включения оптимизации необходимо выставить флажок в окне "Expert Properties — Optimization". Далее во вкладке "Input Parameters" того же окна необходимо задать параметры перебора требуемых входных переменных. К примеру, этим параметром может быть количество лотов, которыми оперирует советник при совершении торговых операций. Для оптимизируемых переменных необходимо задать не только начальные значения (Initial Value), но также шаг изменения переменных (Step) и конечную границу перебора параметра (Stop Value).
Внимание!!!
- Если конечное значение параметра (Stop Value) или шаг (Step) равны нулю, либо конечное значение недостижимо (например, Stop Value положительное, а Step — отрицательное), оптимизация по этому параметру производиться не будет.
- В процессе оптимизации могут изменяться только данные типа int или double.
По завершению оптимизации можно просмотреть все результаты во вкладках Results, Report и Equity Graph. На этот раз в них будут другие данные:
Вкладка ResultsВ этой вкладке при оптимизации публикуются окончательные отчеты каждого из прогонов. То есть это таблица с множеством отчетов по тестированиям одного эксперта при различных значениях переменных. В таблице приведены следующие данные:
- Pass — номер прогона тестирования;
- Profit — чистая прибыль (валовая прибыль за вычетом валовых убытков);
- Gross profit — валовая прибыль;
- Gross loss — валовые убытки;
- Max profit deal — наиболее прибыльная сделка;
- Max loss deal — наиболее убыточная сделка;
- Max drawdown — максимальная просадка;
- Drawdown % — относительная просадка;
- Trades total — общее количество торговых позиций;
- Profit trades — количество прибыльных сделок;
- Loss trades — количество убыточных сделок.
Вкладка Report
При оптимизации параметров во вкладке "Report" представлена информация по прогонам:
- Initial deposit — начальный депозит;
- Maximal profit — максимальная прибыль за прогон;
- Minimal profit — минимальная прибыль за прогон;
- Passes total — общее количество тестирований (прогонов);
- Profit passes — количество прибыльных прогонов;
- Loss passes — количество убыточных прогонов;
- Best pass # with parameters — номер наиболее прибыльного прогона и его параметры;
- Worst pass # with parameters — номер наиболее ПОДКЛЮЧЕНИЕ СОВЕТНИКОВ прогона и его параметры.
На графике "Equity Graph" можно легко определить наиболее и наименее прибыльные прогоны. Двойной щелчок на любой линии графика автоматически выбирает соответствующий результат тестирования во вкладке "Results". Используя эти параметры можно приступить к непосредственному тестированию советника с выбранными параметрами.