Как производится тестирование торговых систем?


Как производится тестирование торговых систем?

Здравствуйте, читатели блога о трейдинге. Тестирование торговых систем является их неотъемлемой частью, поскольку дает представление трейдеру об ожидаемой прибыли или убытке. Вы, наверное, слышали уже, что исторические данные не дают истинного представления о будущем исполнении рынка и могут сильно искажать результаты. И это верно. Но в этой статье мы рассмотрим профессиональное тестирование торговых систем не только с помощью исторических данных, но и текущих.

Системный и дискреционный трейдинг

Мы снова возвращаемся к этой теме, которую обсуждали в предыдущей статье о создании торговых систем. Стратегии для системного трейдинга легко тестировать на исторических данных, поскольку они основаны на абсолютных правилах. Их нужно просто представить в виде программного кода и внести на вашу торговую платформу.

Другое дело при дискреционном подходе к трейдингу. Так как здесь все подряд не торгуется, хотя установлены конкретные правила, тестирование на исторических данных сильно утруднено, а иногда и вовсе невозможно. Например, стратегию свинг трейдинга, которая представлена на этом сайте, мне не удалось протестировать. Какой выход?

Далее в этой статье мы поговорим о таком способе тестирование, как «paper trading» или трейдинг на бумаге. Он поможет не только проанализировать стратегию, но и покажет результаты, которые можно реально ожидать.

Бэктестинг

Термин «бэктестинг» относится к тестированию торговых систем на основании исторических данных, чтобы увидеть, как они работали на протяжении прошлого периода. Большинство нынешних торговых платформ поддерживает бэктестинг, и вы можете быстро проанализировать некоторые идеи, не рискуя своими деньгами.

Для того, чтобы произвести тестирование на исторических данных, нужно представить свою торговую систему в виде программного кода. Если у вас таких навыков нет, то воспользуйтесь услугами программиста, который интегрирует исходные данные и правила вашей стратегии в торговую платформу.

Бэктестинг может быть ложно обнадеживающим, поскольку любую проигрышную стратегию здесь можно трансформировать в машину для генерации дохода. Как? При помощи оптимизации. Например, вы тестируете, как работала стратегия пересечения двух скользящих средних на протяжении последних 2 лет. Путем нехитрой игры с периодичностью скользящей средней, у вас получилось, что феноменальный результат дает пересечение 12-периодной SMA с 33-периодной EMA. Но практика показывает, что с таким подходом, в следующие 2 года эта стратегия будет феноменально убыточной.

Итак, тонкая подгонка установок торговой системы и ее сверх оптимизация, могут показать вам 100% прибыльный результат на исторических данных, но быть убыточными на реальном рынке. Как поступить?

Правильный бэктестинг или форвард тестирование

Вам нужно взять достаточно длинный исторический период, не менее 5 лет и разделить его на три части. Две трети вы оставите для тестирования и оптимизации, и называться эта часть будет – данные в выборке. Одну треть нужно зарезервировать для контроля под названием – данные вне выборки.

Итак, вы проводите тестирование торговых систем на исторических данных в выборке, а результаты проверяете на контрольной трети – данных вне выборки. Такой консервативный подход поможет вам избежать провала на реальном рынке с вашей оптимизированной стратегией.

Если полученные результаты на данных в выборке и вне выборки имеют низкую корреляцию (сильно разнятся), то, скорее всего, ваша торговая система сверх оптимизирована и провалится на реальном рынке. И наоборот, когда корреляция сильная, то вы все сделали правильно, и осталось протестировать стратегию на текущих рыночных данных, о чем и поговорим далее.

Тестирование на текущих данных

Тестирование на текущих данных или «paper trading» позволяет нам получить реальные представления о работе торговой системы. Вы фактически моделируете трейдинг на реальном рынке. Все сделки исполняются «на бумаге» (мы не рискуем своими деньгами), включая открытие, управление и закрытие позиции, документируя каждый цент прибыли или убытка.

Сегодня большинство брокеров дают возможность своим клиентам открыть демо счет, с которого можно торговать, не рискуя личными средствами. Демо торговля поможет вам протестировать стратегию, а также наработать какой-то опыт в трейдинге. Так что, вы убьете двух зайцев одним выстрелом.

Если результаты вашей торговой системы сильно коррелированны на данных в выборке, вне выборки и текущих, то можно смело приступать к трейдингу на реальном торговом счете.

Тестирование торговых систем является заключительным этапом перед выходом на реальный рынок. Избегайте сверх оптимизации и проводите бэктестинг по приведенным на этой странице правилам. Помните, что реальный трейдинг – это не тестирование торговых систем, и полученные результаты не переделаешь. Блог о трейдинге благодарит за внимание. Будьте успешными!


Интересная тема - опцион и фьючерс отличия


рассказать друзьям

Это тоже вам понравится