Расскажу о своих успехах за апрель. Я переписала бектестер (который умеет брутфорсить весь рынок) для торговли с пропущенными данными. В прошлом посте мы затрагивали проблему заполнения пропущенных данных для статистического анализа. Там это было полезно, но когда дело доходит до бектестов, симулировать торговлю в момент, когда на инструменте не было ликвидности, это ошибка. Какая логика получилась у меня?
Так как я исследую парную торговлю, то дожидаюсь момента, когда на обоих инструментах появляется ликвидность, только после этого встаем в позицию или выходим из нее. Дизайн эксперимента не подразумевает подглядываний в будущее: все параметры для оптимизации рассчитываются на первой половине наблюдений, на второй половине происходит симуляция торговли.
В эсперименте участвовало 80 коинтегрированных пар, которые просто втупую, не глядя были загружены в бектестер. Я не видела по ним ни спреды, ни сами ряды. Мне было важно, чтобы алгоритм перемалывал даже пары низкого качества и в среднем выдавал положительный результат. Получилось в среднем
4,78% годовых на 1 контракт.
На самом деле это мало чем отличается от депозита, и с учетом риска втупую торговать коинтегрированные пары не имеет смысла. Лучше положить деньги на накопительный счет, а в свободное время заниматься саморазвитием. Если же мы будем отбирать пары перед тем, как добавлять их в портфель, то можно получить более интересный профит.
Например, для пары (MFGS, MFGSP) получается 19,12% годовых на 1 контракт. Приведу по этой паре скрины из метатрейдера с результатами бектеста:



Без обид!
www.tradingview.com/x/gp4LgJbo/
короткий
2 месяца
www.tradingview.com/x/lAXOM9gV/
4 месаяца
www.tradingview.com/x/ml1LxTFa/
с лета
www.tradingview.com/x/vtdmcNSF/
за год+
www.tradingview.com/x/WsPCoMtW/
за 2 года — видно как теоретическое контанго превратилось в мнимое
www.tradingview.com/x/N5Uloo9m/