Из своего хз-сколько-летнего опыта интенсивного тестирования торговых алгоритмов выяснил следующее:
Если получил профит в бектесте, то первое, что нужно сделать - удвоить количество обсчитываемых событий (баров или тиков) или сместить тестируемые события во времени. Если после этого опять натестился профит, то нужно еще раз удвоить количество обсчитываемых событий или сместить события во времени. Как правило, после этого профит проходит. И вместе с ним проходит необоснованная радость.
Что такое "количество обсчитываемых событий"?
Это важнейший параметр алгоритма поиска закономерностей. Например, за 10 лет на часовом таймфрейме обсчитывается ~22 000 событий, каждое из которых описывается четырьмя точками - O, H, L и C. Итого ~88 000 точек. На минутном таймфрейме за 10 лет обсчитываается ~1 320 000 событий. Это ~5 280 000 точек.
Чем больше обсчитываемых точек в истории - тем выше вероятность, что найденная закономерность повторится в будущем.
Например, закономерности, найденные обсчетом 22 000 событий (88 000 точек) дают оконулевую вероятность повторения в будущем. Точнее - они дают переменный финансовый результат, стремящийся к нулю на длинной дистанции. Например, закономерность может давать профит какое-то время, а потом наоборот, а потом снова профит, а потом опять слив. Все это можно увидеть собственными глазами в тестах с помощью смещения точки начала торговли в прошлое:
Берем компьютер - и считаем. Быстро, просто, удобно. И никаких страданий.
Так вот... чтобы выявить более-менее устойчивые закономерности, нужно обсчитать не менее 1 000 000 точек. Такие расчеты можно проводить только на мелких таймфреймах ниже пяти минут, собирая (выкачивая) длинную историю.
Зачем так заморачиваться, если можно нарисовать на графике уровни/каналы и торговать в свое удовольствие?
Затем, что уровни на графике - это закономерность, выявленная на сверхмалом количестве событий. Если протестировать уровни/каналы на 1 000 000 точек, то результат получится примерно нулевой. А комиссии утащат в убытки. Не верь в это. Возьми компьютер, залей миллион точек и проверь.
На этом пока всё. Если что-то не понятно, пишите в комментах. Обсудим)