ТЛ;ДР
Вы думаете, что у вас есть отличные идеи на рынке, но вы не знаете, как реализовать их, не рискуя своими средствами? Умение тестировать торговые идеи на исторических данных – это хлеб с маслом хорошего систематического трейдера.
Основная предпосылка бэктестинга заключается в том, что то, что работало в прошлом, может работать и в будущем. Но как сделать это самостоятельно и как оценить результаты? Давайте пройдем простой процесс бэктестинга.
Введение
Бэктестирование — один из ключевых компонентов разработки собственного графика и торговой стратегии. Это влечет за собой реконструкцию сделок, которые могли произойти в прошлом с помощью системы, основанной на исторических данных. Результаты бэктестинга должны дать вам общее представление о том, эффективна ли инвестиционная стратегия.
Что такое бэктестирование?
Во-первых, если вы хотите глубже погрузиться в бэктестирование, прочитайте нашу статью «Что такое бэктестинг?»
Короче говоря, основная цель бэктестинга — показать вам, верны ли ваши торговые идеи. Вы начинаете с использования прошлых рыночных данных, чтобы увидеть, как бы сработала стратегия. Если стратегия выглядит так, как будто у нее есть потенциал, она также может быть эффективной в реальной торговой среде.
Что делать перед бэктестированием?
Прежде чем приступить к бэктестированию, вы должны определить, какой вы трейдер. Вы дискреционный или систематический трейдер?
Дискреционная торговля основана на принятии решений: трейдеры используют свои собственные суждения, чтобы решить, когда входить и выходить. Это относительно свободная и открытая стратегия, в которой большинство принимаемых решений зависит от оценки трейдером имеющихся условий. Таким образом, тестирование на исторических данных менее актуально, когда речь идет о дискреционной торговле, поскольку стратегия строго не определена.
Конечно, это не означает, что если вы дискреционный трейдер, вам вообще не следует тестировать на исторических данных или торговать на бумаге. Это просто означает, что результаты могут быть не такими надежными, как обычно при систематической торговле.
Систематическая торговля более применима для тестирования на истории. Систематические трейдеры полагаются на торговую систему, которая определяет и сообщает им, когда именно входить и выходить. Хотя систематические трейдеры контролируют большинство аспектов стратегии, она полностью определяет для них сигналы входа и выхода. Вы можете придумать простую систематическую стратегию, состоящую из двух простых шагов:
Когда события A и B происходят одновременно, открывайте сделку.
Когда после этого произойдет X, выйдите из сделки.
Некоторые трейдеры предпочитают этот подход. Это может исключить эмоциональные решения в торговле и обеспечить разумную степень уверенности в том, что торговая система прибыльна. Конечно, гарантий пока нет.
Вот почему важно убедиться, что в вашей системе есть очень конкретные правила, определяющие, когда входить или выходить из позиций. Нечетко выраженная стратегия приведет к противоречивым результатам. Как и следовало ожидать, этот стиль торговли более популярен в алгоритмической торговле.
Если вы хотите автоматизировать процесс, вы можете купить программное обеспечение для бэктестинга — вам просто нужно ввести свои собственные данные, и программа выполнит бэктестинг за вас. Однако в этом примере мы воспользуемся стратегией ручного тестирования. Это требует немного больше работы, но совершенно бесплатно.
Как протестировать торговую стратегию?
Вы можете найти шаблон электронной таблицы Google Sheets по этой ссылке. Это элементарный шаблон, который вы можете использовать в качестве отправной точки для создания своего собственного. Это дает вам общее представление о том, какую информацию может содержать лист бэктестинга. Некоторые трейдеры предпочитают использовать Excel или писать код на Python; строгих правил нет. Вы можете добавить в него столько данных, сколько вам нужно, а также любую другую информацию, которую вы сочтете полезной.
Давайте протестируем простую торговую стратегию:
Мы покупаем один биткойн при первом закрытии дня после золотого креста. Мы считаем золотым крестом ситуацию, когда 50-дневная скользящая средняя пересекает 200-дневную скользящую среднюю.
Мы продаем один биткойн при первом закрытии дня после креста смерти. Мы считаем крест смерти, когда 200-дневная скользящая средняя пересекает 50-дневную скользящую среднюю.
Как видите, мы также определили временные рамки, в которых стратегия действительна. Это означает, что если на четырехчасовом графике появится золотой крест, мы не будем считать это торговым сигналом.
Период времени в этом примере начинается в начале 2019 года. Однако, если вы хотите получить более точные и надежные результаты, вы можете вернуться гораздо дальше в историю ценового движения Биткойна.
Теперь посмотрим, какие торговые сигналы выдает данная система за заданный период времени:
Купить за ~$5400
Продать за ~9200$
Купить за ~$9,600
Продать за ~$6,700
Купить за ~$9000
Вот как наши сигналы выглядят при наложении на график:
Наша первая сделка принесла прибыль в размере около 3800 долларов, а вторая сделка привела к убытку в размере около 2900 долларов. Это означает, что наш реализованный PnL на данный момент составляет 900 долларов.
Мы также ведем активную торговлю, которая по состоянию на декабрь 2020 года имела нереализованную прибыль около 9000 долларов США. Если мы будем придерживаться изначально определенной стратегии, мы закроем ее, когда произойдет следующий смертельный крест.
Оценка результатов бэктестинга
Итак, что же показывают эти результаты? Наша стратегия могла бы принести разумную прибыль, но пока она не показывает ничего выдающегося. Мы могли бы реализовать открытую в данный момент сделку, чтобы резко увеличить наш реализованный PnL, но это противоречило бы цели тестирования на исторических данных. Если мы не будем придерживаться плана, результаты также не будут надежными.
Несмотря на то, что это систематическая стратегия, стоит также учитывать контекст. Убыточная сделка с 9600 до 6700 долларов произошла во время краха COVID-19 в марте 2020 года. Такое событие «черный лебедь» может оказать огромное влияние на любую торговую систему. Это еще одна причина, по которой стоит вернуться еще дальше и посмотреть, является ли эта потеря выбросом или просто побочным продуктом стратегии.
Это один из примеров простого процесса бэктестинга. Эта стратегия может оказаться многообещающей, если мы вернемся и протестируем ее на большем количестве данных или включим другие технические индикаторы, чтобы потенциально усилить подаваемые ею сигналы.
Но что еще могут показать результаты бэктестинга?
Показатели волатильности: ваш максимальный потенциал роста и просадки.
Экспозиция: сумма капитала, которую вам необходимо выделить из всего вашего портфеля для реализации стратегии.
Годовая доходность: процентная доходность стратегии в течение года.
Соотношение выигрышей и проигрышей: сколько сделок в системе могут привести к выигрышу, а сколько – к убытку.
Средняя цена исполнения: средняя цена ваших исполненных входов и выходов при использовании стратегии.
Имейте в виду, что приведенные выше примеры не представляют собой исчерпывающий список. Какие показатели вы хотите отслеживать, полностью зависит от вас. В любом случае, чем больше подробностей вы включите в свой торговый журнал о соответствующих настройках, тем больше у вас будет возможностей извлечь уроки из результатов. Некоторые трейдеры очень строги в своем тестировании на исторических данных, что, вероятно, отразится на их результатах.
И последнее, на что следует обратить внимание – это оптимизация. Если вы прочитали нашу статью о бэктестировании, вы поймете разницу между бэктестированием и форвардным тестированием (или бумажной торговлей).
Заключительные мысли
Мы прошли базовый процесс проведения ручного тестирования торговой стратегии. Однако важно помнить, что прошлые результаты не гарантируют будущих результатов.
Рыночная среда меняется, и вы должны адаптироваться к этим изменениям, если хотите улучшить свою торговую стратегию. Вы также должны быть осторожны и не доверять слепо данным. Здравый смысл — полезный, хотя и часто упускаемый из виду, инструмент, когда дело доходит до оценки результатов.
Дальнейшее чтение
Руководство для начинающих по торговле криптовалютой на колебаниях
Что такое арбитражная торговля?
Что такое торговый журнал и как его использовать
Что такое скальпинг-трейдинг криптовалютой?
Что такое поведенческие предубеждения и как их избежать?

