Общая информация
Обратное тестирование (или тестирование на исторических данных) реализовано в торговой платформе как основная функция для проведения анализа эффективности стратегии с использованием исторических данных. Вы можете выполнить обратное тестирование стратегии для отдельного инструмента (ценной бумаги) или списка инструментов (портфолио).
Для обратного тестирования необходимо:
- наличие исторических данных (файл с информацией по тикам или свечам) от поставщика данных
- стратегия AgenaScript или
Если версия AgenaTrader Discovery или выше, то можно воспользоваться стратегией AgenaTrader++ (plusplus).
Чтобы открыть окно обратного тестирования выберите опцию Обратное тестрирование через меню Основная -> Создать.
Порядок работы:
● Выберите в SetupEscort сессию анализатора.
● Задайте в SetupEscort параметры входа, стоп- и таргет-приказов
● Выберите из меню Основная / Создать -> Обратное тестирование
● Выберите в разделе „Общие параметры“ Вашу стратегию (напр. AT++)
● Выберите желаемый источник данных: напр. „Datenfeed“ (поставщик данных) или „File with Ticks“ (файл с тиками) (его необходимо скачать и/или загрузить из Ваших файлов)
● Задайте временной интервал
● Выберите желаемый список инструментов (опционально: с помощью мишки можно дополнительно указать определённый инструмент)
● Определите начало и конец тестирования с помощью даты и времени
● Выберите закладку "Настройки"
● В категории „Backtest Parameters“ установите Ваш сигнал входа и проверьте соответствие стопов и таргетов Вашему сетапу (стратегии). При необходимости Вы можете вносить измения к настройкам на этом этапе. После этого подтвердите настройки нажатием на кнопку „Save Setup“.
● В категории „Parameters“ выберите Вашу сессию анализатора (напр. „Standard“)
● Определите количество необходимых баров, покупательскую способность и т.д.
● Подтвердите настройки нажатием на кнопку „Save Setup“. Внимание! Если Вы меняете параметры сетапа в категории „Backtest Parameters“, то после их сохранения нажатием на кнопку „Save Setup“ Ваши настройки в SetupEscort будут автоматически заменены на новые.
● Начните обратное тестирование путём нажатия на кнопку „Тест“. При этом необходимо будет указать, проводится ли обратное тестирование для всего списка инструментов или только для одного выбранного инструмента.
● В области под списком инструментов Вы сможете увидеть прогресс расчётов, а также остановить тестирование при необходимости.
Общие параметры
Закладка Ввод предоставляет следующие возможности:
|
Закладка Итог предоставляет следующие возможности:
|
Вкладка "Настройки"
Во вкладке отображаются используемые стратегии:
1. Собственные стратегии или импортированные стратегии
Параметры каждой из этих стратегий можно редактировать.
Дополнительные параметры:
- Покупательная способность
- Наличные деньги
- Комиссия
- Проскальзывание
2. Стратегии AgenaTrader++
Характеристики стратегий AT++ в основном не отличаются от указанных выше за исключением небольших различий:
- Категория "Параметры обратного тестирования" включает в себя параметры из Setup Escort
- В категории "Параметры" можно выбрать сеанс анализатора из Setup Escort
- Измененные вручную параметры можно сохранить с помощью кнопки Сохранить настройки.
- При сохранении изменений настройки стратегии в Setup Escort будут перезаписаны.
В категории "Trading" находятся такие функции:
Параметр "Источник данных"
Возможны следующие опции:
- Datаfeed (поставщик данных), например, YFeed, TeleTrader и др. или поставщик данных, предлагаемый брокером.
- File with Bars (данные из файла, содержащего информацию по барам)
- File with Ticks (данные из файла, содержащего информацию по тикам).
Ниже показан пример форматирования данных и поддерживаемые форматы файлов:
Файл с барами: .csv и .txt
Файл с тиками: .csv и .txt
Вкладка "Графики"
Вкладка Графики сотоит из кривой совокупной прибыли и истории торговли на графике.
Кривая прибыли может отображать информацию по одному инструменту (ценной бумаге) или для по списку инструментов (портфолио), тогда как история торговли всегда представлена на одном графике для одного инструмента.
Функции Показать, Капитал и Ось X становятся доступными только после проведения обратного тестирования.
Отображение кривой совокупной прибыли
- Если опция Показать всё активна, то на кривой будут показаны все трейды из результата обратного тестирования.
- Если опция Показать график активна, то на кривой будут показаны только те трейды, которые находятся в области графика (масштаб).
Оба параметра также влияют на отображение результатов в других закладках:
Аналогично:
- Если опция Показать всё активна, то результаты закладок: Сводка, Торги, Приказы, Исполнения, Периоды и Инфо торговли рассчитываются для всех трейдов.
- Если опция Показать график активна, то результаты закладок: Сводка, Торги, Приказы, Исполнения, Периоды и Инфо торговли рассчитываются только для тех трейдов, которые находятся в области графика (масштаб).
- Капитал отдельно: отображает значения только для одного инструмента.
- Капитал всё: отображает значения для всех инструментов из списка (портфолио) и показывает кривые для каждого инструмента отдельно.
- Капитал счёт: отображает значения для всех инструментов из списка (портфолио) на одной кривой.
Обратите внимание! Опции "Показать всё" и "Показать график" не влияют на отображение и расчёт данных в закладках, если активирована одна из опций "Капитал всё" или "Капитал счёт". В этом случае результаты в закладках будут показаны для всех трейдов, а не для определённой области на графике.
Опции параметра Ось Х позволяют отобразить кривую совокупной прибыли в осях Дата - Прибыль/Убыток или Трейды - Прибыль/Убыток.
Управление интерфейсом
Во вкладке "Графики" существует две возможности масштабирования для результатов:
- колёсиком мыши
- правым щелчком мыши и удерживанием, выбрав при этом область на графике торговли или кривой прибыли.
Выше было указано, что опции "Показать всё" и "Показать график" влияют на отображение кривой прибыли и результаты закладок.
Если опция Показать график активна, то масштабирование в пределах истории трейдов на графике также увеличит или уменьшит масштаб кривой прибыли.
Если опция Показать всё активна, то то масштабирование в пределах истории трейдов на графике не повлияет на масштаб кривой прибыли.
При этом масштабирование в пределах кривой прибыли всегда влияет на отображение графика.
Контекстное меню
Опции меню правого клика:
- Копировать
- Сохранить рисунок как...
- Параметры страницы... (для печати)
- Печать...
- Показать значения
- Масштаб как стандартный
Возможности меню "График":
- Кумулятивная прибыль
- Чистая прибыль за день
- Эффективность входа
- Эффективность выхода
- MAE
- MFE
- Чистая прибыль за месяц
- Чистая прибыль за неделю
- Общая эффективность
- Прибыль/Убыток трейда
Возможности меню "Трейды":
- Все
- Длинные
- Короткие
Возможности меню "Прибыль/Убыток":
- Все
- Прибыли
- Убытки
Вкладка "Сводка"
В этой вкладке отображаются сводные данные по торговым результатам.
Значения индикаторов
Результаты по индикаторам представлены в трёх столбцах: все трейды, только длинные позиции и только короткие позиции.
|
Вкладка "Торги"
В этой вкладке показаны все торги обратного тестирования.
Правым щелчком мыши на названии столбца можно открыть контекстное меню, которое позволяет добавить или удалить столбцы, используя опцию Выбрать столбцы.
Правый щелчок мыши в списке трейдов позволит экспортировать записи таблицы в документ MS Excel.
Совет: Отчёт P&L показывает прибыль и убытки по всем текущим торгам. Куммулятивный P&L показывает всегда общий итог по прибыли и убыткам. На рисунке хорошо видно, как уменьшается/увеличивается куммулятивный P&L сверху вниз в зависимости от каждого следующего результата P&L.
Общий расчёт находится в столбце "Кум. P&L", от которого потом отнимится или прибавится следующий результат P&L. Так, по "зигзагу" будут учтены все предыдущие трейды до последнего. При этом стоит учитывать, что возможны минимальные отклонение в расчёте центов, по причине округления P&L к двум цыфрам после запятой, но при этом цены иногда округляются к трем знакам или больше.
Вкладка "Приказы"
В этой вкладке показаны все приказы обратного тестирования.
Правым щелчком мыши на названии столбца можно открыть контекстное меню, которое позволяет добавить или удалить столбцы, используя опцию Выбрать столбцы.
Правый щелчок мыши в списке приказов позволит экспортировать записи таблицы в документ MS Excel.
Описание исполнения приказов
Функция обратного тестирования симулирует поведение финансового рынка в реальном времени в двух разных режимах:
Режим No. 1 - на основе тиков (работает по тому же принципу, что и симулированный торговый счёт)
Если текущий тик дотигает уровня цены открытого приказа, то она используется как цена исполнения.
Режим No. 2 - на основе свечей (симулирует первый режим).
Каждая из свечей условно делится на четыре части:
Растущая свеча: Open; High; Low; Close (цены открытия, максимальная, минимальная и цена закрытия).
Спадающая свеча: Open; Low; High; Close (цены открытия, минимальная, максимальная и цена закрытия).
Например, если максимальная цена дотигает уровня цены открытого приказа, то она используется как цена исполнения. Это действительно также для цен открытия,закрытия и минимальной цены.
Разница между маркет-, стоп- и стоп-лимит приказами
Маркет- и стоп-приказы будут исполнены за счёт одной свечи.
Стоп-лимит приказы будут исполнены за счёт следующей свечи.
Пример. Предположим, что приказ был выставлен во временном интервале 1 день. В этом случае стоп-лимит приказ будет выполнен на следующий день, а стоп-приказ - в тот же самый день.
Вкладка "Исполнения"
В этой вкладке показаны все исполнения ордеров обратного тестирования.
Правым щелчком мыши на названии столбца можно открыть контекстное меню, которое позволяет добавить или удалить столбцы, используя опцию Выбрать столбцы.
Правый щелчок мыши в списке исполнений позволит экспортировать записи таблицы в документ MS Excel.
Вкладка "Периоды"
В этой вкладке показаны итоговые результаты обратного тестирования, которые распределены по периодам.
Правым щелчком мыши на названии столбца можно открыть контекстное меню, которое позволяет добавить или удалить столбцы, используя опцию Выбрать столбцы.
Правый щелчок мыши в списке исполнений позволит экспортировать записи таблицы в документ MS Excel, а также выбрать необходимый временной период.
Возможны следующие типы периодов:
- Год
- Месяц
- Неделя
- День недели
- День
- Время дня
Вкладка "Инфо торговли"
В этой вкладке показана вся информация о торгах в дереве торговли, которое включает частичные трейды, приказы, а также исполнения.
Правым щелчком мыши на названии столбца можно открыть контекстное меню, которое позволяет добавить или удалить столбцы, используя опцию Выбрать столбцы.
Дополнительная информация
Для выполнения обратного тестирования торгового сигнала необходимо правильно установить требуемые сигналом или условием параметры исторической информации. Для этого нужно правильно выбрать параметры для настройки опции «Необходимо баров» в закладке !Настройки». Настройкой по умолчанию является 20 баров (свечей), которых достаточно для большинства сигналов. Если Вы создали через Condition Escort или с помощью окна программирования сигнал или условие, которые требуют большего кокичества исторических данных (баров), то настройки обратного тестирования должны быть изменены в соответствии с этим. Обратите внимание, что для указанного количества исторических данных (количество баров) сигналы и/или условия не могут быть рассчитаны. Например, если вы выбрали 20 баров, то сигнал будет показан только начиная с 21-го бара.
Информация по сигналам, созданным по теории Доу:
Условия, которые были созданы с помощью Доу индикаторов таких как Р123 требуют больше исторической информации для рассчета сигналов – как минимум 500 баров. Внимание! Ваш поставщик данных должен предоставить достаточно исторической информации по курсам, потому что, например, первые 500 баров не будут показывать никаких сигналов, а только использоваться для рассчетов. Сигналы будут показаны начиная с 501 бара.
Дальнейшее усовершенствование от стандартного к усложнённому режиму
В результате совместной работы с Университетом г. Ахен (Институт математики), мы усовершенствовали функцию обратного тестирования AgenaTrader и разработали усложнённый режим. Исследовательская статья авторов Dr. Stanislaus Maier-Paape и Dr. Andreas Platen показывает, что стратегия при обратном тестировании предоставляет результаты только для исторических данных и поэтому не может считаться основанием для реальной торговли. Причина в том, что будущие результаты могут очень сильно отличаться от рассчитанных. Функция обратного тестирования, предлагаемая ведущими разработчиками, по мнению авторов играет очень важную роль для обеспечения качества программного обеспечения. Хорошо разработанное обратное тестирование требуется для усовершенствования эффективности работы торговых систем. Чем точнее будут рассчитаны результаты теста, тем надёжнее является торговая платформа при реальной биржевой торговле.
Исследование также показывает, что несмотря на постоянное развитие алгоритмов и тестов на финансовом рынке, расчёты в некоторых случаях все равно производятся с ошибками. Одним из таких случаев есть неоднозначные ситуации SNU (англ. situation which is not unique). Для обеспечения возможности быстрого реагирования на такие ситуации была разработана функция „Decision Mode“, которая предоставляет пользователю программы право выбора. Возможны следующие настройки:
- Worst case: Неоднозначная ситуация будет оцениваться на основании худшего возможного варианта.
- Best case: Неоднозначная ситуация будет оцениваться на основании лучшего возможного варианта.
- Ignore: Сигнала входа, а также полный трейд будет проигнорирован.
SNU встречаются только для стоп-, лимит и стоп-лимит приказов. Рыночные приказы всегда могут быть однозначно определены.