Блог им. AdrenaLeen

Бектест коинтегрированных пар на MOEX за 2018 год на часовом таймфрейме

Расскажу о своих успехах за апрель. Я переписала бектестер (который умеет брутфорсить весь рынок) для торговли с пропущенными данными. В прошлом посте мы затрагивали проблему заполнения пропущенных данных для статистического анализа. Там это было полезно, но когда дело доходит до бектестов, симулировать торговлю в момент, когда на инструменте не было ликвидности, это ошибка. Какая логика получилась у меня?

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

В эсперименте участвовало 80 коинтегрированных пар, которые просто втупую, не глядя были загружены в бектестер. Я не видела по ним ни спреды, ни сами ряды. Мне было важно, чтобы алгоритм перемалывал даже пары низкого качества и в среднем выдавал положительный результат. Получилось в среднем 4,78% годовых на 1 контракт.

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

Например, для пары (MFGS, MFGSP) получается 19,12% годовых на 1 контракт. Приведу по этой паре скрины из метатрейдера с результатами бектеста:
Бектест коинтегрированных пар на MOEX за 2018 год на часовом таймфрейме
Бектест коинтегрированных пар на MOEX за 2018 год на часовом таймфрейме
Бектест коинтегрированных пар на MOEX за 2018 год на часовом таймфрейме
Бектест коинтегрированных пар на MOEX за 2018 год на часовом таймфрейме
★1
34 комментария
На самом деле это мало чем отличается от депозита, и с учетом риска втупую торговать коинтегрированные пары не имеет смысла. 
Мой вам совет, кладите деньги на депозит. У вас концептуальные ошибки в методике, в реальности все будет работать совсем не так и цифры не будут иметь ничего общего с такими тестами.
Без обид!
Дмитрий Овчинников, попробуйте в следующий раз написать какой-то конструктивный комментарий. Без обид!
а вы не пробовали газ/нефть 2022-23 сравнивать — куда интереснее и практичнее

avatar
Sergio Fedosoni, нет. Благодарю за предложение
Ксения Кузнецова, кстати вопрос бэктэстов
допусти есть рынок опционов — с одной стороны полупустые стаканы, а с другой — поставб туда заявку — слопают
в итоге чтоб оценить реальные цены и потретности приходится кормить чьих то ботов чтоб картину тестеру построить.
а уж потом в вроде пустых стаканах набирать миллионные конструкции,
зачастую имея 25-50% обьема всего страйка на себя
avatar
Sergio Fedosoni, угу, котов на всех не хватает 
avatar
asfa, 
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/



avatar
один из важнейших элементов парной торговли — контроль издержек. Что-то мне подсказывает, что у Вас с этим проблема. 
avatar
SergeyJu, если есть желание, можем разобраться с контролем издержек.
Ксения Кузнецова, напишите, как Вы это делаете, ничего же нет секретного, тут много опытных людей, подскажут.
avatar
 идея может быть и интереная но зачем 2018 сравнивать если у нас СВО «за окном шел снег и рота красноармейцев мобилизованных» 
другой мир — другие правила уже
avatar
Sergio Fedosoni, для объективности проверяю на 5-летней истории. Позднее сделаю тесты на других рынках и годах.
Ксения Кузнецова, так всё координально начал отменяться в ковид, а сейчас и подавно всё иначе
avatar
Sergio Fedosoni, ну вот и посмотрим, как алгоритмы отработают в ковид.

>Если же мы будем отбирать пары перед тем, как добавлять их в портфель

Как-то вы на самом интересном месте и прервались ((
Или это интрига для следующей серии?

avatar
Arbitrg, конечно. Оптимизация портфеля — это тема для отдельного поста.

Вы чё-то не то делаете по-моему. Какие-то слабенькие результаты. 

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

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

Но выбор мне ваш нравится ) 

avatar
Kot_Begemot, что именно показалось вам слабеньким результатом?

Ксения Кузнецова, 

Мне было важно, чтобы алгоритм перемалывал даже пары низкого качества и в среднем выдавал положительный результат. Получилось в среднем 4,78% годовых на 1 контракт.


В общем, свой подход к коинтеграции я выше уже описал — фильтруем, фильтруем, фильтруем, если отфильтровали слишком много, то признаем негодным всю партию)
avatar
Виктор Громов, я не торгую парный арбитраж. 
avatar
Виктор Громов, что именно вас позабавило?
Виктор Громов, как интересно ) вы боитесь вызвать у меня неприятные эмоции…
Один год — слишком маленькая выборка, насколько стабильной является такой вид торговли на протяжении несколько лет? 
Какие самые большие просадки? 
Понятно, что на истории можно найти окно на котором мы можем выбрать наилучшие результаты. Как стратегия себя провела в период супер стрессовых ситуаций, возьмите 24 февраля прошлого года? 
Насколько я понимаю при торговле парами — одна акция лонг, вторая шорт. Что если брокер потребует принудительно закрыть шортовую ногу? 
Насколько важна скорость исполнения для такой торговли? 
И что делать если наша стратегия на истории в 90% случаев была прибыльная, а тут спред разошелся больше исторического максимумуа? 
avatar
love_to_trade, на протяжении нескольких лет не получится торговать одной и той же парой с изначально рассчитанными параметрами. Максимальные просадки брутфорсом не анализировала. Результаты по прошлому году выложу в будущих постах. Если брокер принудительно закроет шортовую ногу, надо будет закрывать лонговую. На часовом таймфрейме скорость исполнения не сильно важна. Если спред разошелся больше исторического максимума, то сработает стоп лосс.
Виктор Громов, ну тогда скажу, что R2 рассчитывает матлаб в статистике коинтеграционной регрессии.
Виктор Громов, нет, на конференции меня ещё не зовут — молодой слишком)
avatar

теги блога Ксения Кузнецова

....все тэги



UPDONW
Новый дизайн