Кто-то уже обратил внимание, что в блоге очень мало классических тестов стратегий в программах а-ля MT4, Wealth Lab и т.п. И на это есть ряд причин. Можно подумать, что в них что-то не так, или обсуждать точность, скорость работы, удобство интерфейса или качества языка программирования. Но главная причина не в этом.
Что мы проверяем? Подтверждение чему мы получаем в таких программах?
Посмотрим на ситуацию со стороны. Мы берем некий набор правил, загоняем их в математический алгоритм и проверяем возможность этого алгоритма приносить прибыль в прошлом. Другим словом, подгоняется ли наш набор правил к прошлому.
Этого ли мы хотим?
Еще со времен
Фурье известно, что чем больше набор правил, которые мы загоняем в алгоритм, тем проще ему подстроится под прошлые колебания - "объяснить прошлое". То есть это всего лишь проверка возможности нашей стратегии подстроится к прошлому. А нас интересует потенциальная возможность стратегии приносить прибыль!
Как проверить потенциальную способность стратегии приносить прибыль?
Классическим основанием для вывода о том, что стратегия может приносить прибыль является проверка такового в прошлом. При этом проверяется по принципу "как сейчас бы я сделал". Сейчас мы что делаем?
1. Берем отрезок данных.
2. Оптимизируем стратегию.
3. Торгуем на отрезке данных примыкающих к использованному в п1.
Вот это и требуется повторить в прошлом от 21-го раза. Для статистической достоверности результата ))) Этот тест принято называть форвардным тестом.
Многие хотят, но немногие делают, поскольку требуется решить несколько проблем - период данных для оптимизации, период теста после, какие параметры оптимизировать, как выбирать лучший параметр, сколько раз повторять тест, как определить факт успешного прохождения теста.
Основная проблема - как вы будете выбирать параметры наилучшей стратегии?!. Подход должен быть системен, адекватен, прост и объясним. Например, лучший доход на сделку, наибольший валовый доход и т.п.
С фактом прохождения гораздо проще - если в пределах 30% падения доходности от прогнозов, то отлично.
Как это реализовать технически?
Потенциальных вариантов несколько:
Вариант номер один - придумать способ выбора наилучших данных и сделать этот тест вручную.
Вариант номер два - сделать вариант номер один автоматической частью стратегии, что решает многие проблемы.
Вариант номер три - динамические стратегии, где сами параметры являются относительными и автоматически подстраиваются под текущее состояние рынка, что поглащает варианты номер оди и два.
Вариант номер четыре - ну может еще есть какой...
Пока форвардного теста стратегии не сделано, рассуждения о ее эффективности являются очередной бредовой фантазией, очередной подгонкой, очередными потенциально разрушенными мечтами (стратегии "объяснялки"). Может вам повезет и такая стратегия проторгует еще какое-то время (обычно не более года). Но велики шансы, что она начнет терять деньги прямо с того момента как вы ее запустили в торговлю. Объективных математических данных, подтверждающих возможность ее работы, ведь нет!
TRP Model ©