Секреты TSLab | Торговые роботы | События
22 Апр

Тестирование торговых стратегий в TSLab

Тестирование торговых стратегий в TSLab. Портфель торговых систем.

Бессмысленно отрицать, что TSLab является очень хорошей платформой для разработки и тестирования торговых стратегий. Однако многие пользователи периодически сталкиваются с функциональными ограничениями, особенно когда дело заходит в область портфельного тестирования торговых систем на исторических данных. Портфельный тестер хорош тем, что сразу показывает общий итоговый результат работы всех торговых систем на одном или нескольких торговых инструментах. Кто-то пытается решить проблему отсутствия портфельного тестера с помощью «зашивания» сразу нескольких скриптов в общий контейнер TSLab. Но подобные решения достаточно сложны и громоздки в реализации, и к тому же работают только на одинаковом временном интервале (таймфрейме). Встает закономерный вопрос: а можно ли решить эту проблему как-то иначе?

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

Этап 1 – Экспорт сделок из TSLab

Наверняка не все осведомлены о возможности экспорта из TSLab в Excel таблицы всех сделок торговой системы. Это можно проделать, предварительно нажав на закладку «Сделки» в редакторе лаборатории, через нажатие кнопки «Инструменты» >> «Экспорт в Excel» в верхней панели программы. После чего появится возможность сохранить файл со сделками в формате csv.

Экспорт сделок из TSLab

Экспорт сделок из TSLab

Результат экспорта таблицы сделок можно увидеть на картинке ниже.

Экспорт сделок из TSLab

Экспорт сделок из TSLab

Этап 2 – Обработка полученных таблиц

Порой не все поля удается корректно «вытащить» из TSLab, например, у автора данной статьи упорно не читался русский шрифт (что хорошо видно на картинке выше в первом столбце). Впрочем, большая часть данной таблицы нам и не понадобится. Для построения кривой доходности портфеля торговых стратегий вполне достаточно будет колонки с результатом каждой отдельной сделки (Net Profit) и даты закрытия сделки (Exit Date). Далее мы просто копируем оба столбца на отдельный лист формата Excel. Проделываем аналогичную процедуру для всех экспортированных торговых систем (в нашем случае две), причем вставляем соответствующие колонки из разных таблиц друг за другом, как показано на рисунке. После чего нам остается только отсортировать новую таблицу (в которую уже включены сделки всех алгоритмов) по дате закрытия позиции (Exit Date) через меню «Данные» >> «Сортировка» в Excel.

Сортировка сделок TSLab

Сортировка сделок TSLab

Этап 3 – Оценка результатов портфеля механических торговых систем

Это самая интересная часть. Здесь нам нужно сначала построить кривую доходности получившегося композита торговых стратегий. Для этого сделаем дополнительную третью колонку (Sum Profit), в которой нарастающим итогом просуммируем результаты каждой отдельной сделки. Затем, используя стандартные графические функции, нарисуем итоговый график. После чего остается только заняться аналитическими вычислениями. По полученным рядам (Net Profit и Sum Profit) с помощью известных формул можно вычислить и оценить все важные параметры портфеля торговых стратегий: итоговую доходность, максимальную просадку, процент прибыльных сделок, профит фактор, величина средней сделки, различные аналитические коэффициенты и т.д. Подобным способом можно оценить портфель из сколь угодно большого числа торговых систем, посмотреть какое влияние оказывают они друг на друга, а также «поиграться с объемами» и вывести оптимальное соотношение торгуемых контрактов.

Кривая доходности портфеля торговых систем

Кривая доходности портфеля торговых систем


comments powered by HyperComments

Сергей Павленко
2015-10-19 03:12:24
У каждого робота будут разные даты... один робот сделал за этот период 500 сделок... другой - 100, ну и как же это все "равномерно" вывести на график? не работает такой подход....
ra81
2015-10-22 06:16:29
Вот так грубо в лоб может и не работают, но немного не в лоб прекрасное работает :). Нужно складывать эквити а не сделки и все будет ок. А дальше дело за экспортом эквити, что собственно не проблема
Артур
2017-01-03 15:10:34
Секс знакомства http://bit.ly/2hkF2s9
14
Июл
2017

Доверительное управление. Результаты в июне 2017 года.

Доверительное управление. Результаты в июне 2017 года. Июнь индекс РТС вновь провел преимущественно в боковых движениях, а… »

11
Июн
2017

Доверительное управление. Результаты в мае 2017 года.

Доверительное управление. Результаты в мае 2017 года. В мае “болтанка” индекса РТС продолжилась, на паре… »

7
Май
2017

Доверительное управление. Результаты в апреле 2017 года.

Доверительное управление. Результаты в апреле 2017 года. В апреле мы наблюдали очередной месяц “боковика” по… »

2
Апр
2017

Доверительное управление. Результаты в марте 2017 года.

Доверительное управление. Результаты в марте 2017 года. В марте волатильность на рынке несущественно выросла. Все… »

7
Мар
2017

Доверительное управление. Результаты в феврале 2017 года.

Доверительное управление. Результаты в феврале 2017 года. Февраль был самым коротким торговым месяцем, к тому же… »