Блог им. elab

Парный трейдинг не для всех

    • 10 февраля 2021, 12:55
    • |
    • ELab
  • Еще
Известный факт — парный трейдинг не приносит прибыли. Все модели сливают. Понятно, что или расходятся они недостаточно для того чтобы окупить спрэд (например, обычные против префок или GOOG против GOOGL) или просто не состоянии сохранить зависимость друг от друга после обнаружения таковой. Поэтому часть трейдеров ищет зависимости между ETF, а другая между ETF, фьючерсами и корзиной акций. Это так называемый классический стат. арбитраж.

Я предлагаю взглянуть на с другой стороны и торговать корзину из более чем 200 акций (да, извините, но это не для российского рынка — даже 20-30 акций недостаточно). Для начала нужно высчитать синтетик у которого будет минимальная дисперсия — всех интересующихся отсылаю к трудам hrenfx, который, впрочем, пошел путем непрозрачных и требовательных вычислений, которые требуют большое кол-во памяти и не в состоянии рассчитать синтетик для более чем 30 и более инструментов. Каждый желающий прочитав посты hrenfx может самостоятельно все вычислить используя несколько строк на Python. Чтобы не утомлять деталями в финале получим синтетик вида k1*msft + k1*aapl +… k_n*XLNX. Одна часть синтетика будет с положительными значениями, другая с отрицательными. Это и будет синтетик с минимальной дисперсией, который вы уже можете начать торговать. В реальности нужно будет нормировать коэффициенты и отсеять акции вес которых в портфеле, например, меньше 5-10% (все зависит от торгуемого капитала — ведь нужно будет на эти 5% купить минимальное кол-во акций). Так же можно убрать и дорогие акции AMZN, TESLA etc… Разумно выбрать одну часть синтетика с отрицательными или положительными коэффициентами и торговать «one leg» по оценке на основе полного синтетика. Это снизит издержки и повысит вашу прибыль.  

Ниже PnL для последних 440 торговых дней. Использовал оценку на 15 днях, цены логарифмированы, для учета проскальзывания и fee использованы 3 спреда 0,01 и 0'ое отклонение.

Парный трейдинг не для всех

Regards,
Eugene.

PS. Заранее прошу извинить за не самое детальное изложение — целью было донести базовую идею.


  • Ключевые слова:
  • S&P500
★7
55 комментариев
«Для начала нужно высчитать синтетик у которого будет минимальная дисперсия» Дисперсия чего? Ценового ряда синтетического инструмента? Это  Вы так подбираете коэффициенты, чтобы волатильность была минимальной и полученный инструмент максимально походил на прямую?
avatar
OlegSh5, Олег, ну привет! ))) hrenfx все написал
avatar
ELab, а какую-нибудь ссылку на эти материалы можно? Или это всем известная нетленка?
avatar
OlegSh5, https://www.mql5.com/ru/code/10096 
avatar
Известный факт — парный трейдинг не приносит прибыли
А мужики то не знают! ©
Дмитрий Овчинников, забавно, но все попытки создания стратегий парной торговли, которые видел, заканчивались скальпингом за поводырем=))
Жирный трейдер из Лондона, потому  что торговля  одной  ногой  всегда гораздо более доходная  как  минимум  за счет непокрытия второй ноги (меньше капитала нужно)
Алексей Никитин, тут не поспоришь. 
Жирный трейдер из Лондона, 
Встречаются два еврея. — Слушал я Битлз, не понравилось. Картавят, фальшивят, что только в них находят? — А где же ты их слышал? — Мне Мойша напел. ... 
Дмитрий Овчинников, ага, так все и было. 
Задача  абсолютно решаемая, и очень простая! Но риск безусловно присутствует. И заключается  он  как  раз в минимальной  дисперсии,  она не  стационарна,  что означает периодический  слом построенной  модели синтетика -)) 
Алексей Никитин, +1.  Рвет пары периодически. 
Жирный трейдер из Лондона, не пары,  а корзины  в  данном случае.
У нас же синтетик  из  200 бумаг!  
Алексей Никитин, 
надо вначале посчитать косты входа-выхода и стоимость спреда такого синтетика. После этого, возможно, ваше мнение о прибыльности данной стратегии изменится.
Дмитрий Овчинников, А какое у  меня мнение про доходность ????
Алексей Никитин,  
раз вы считаете, что задача решаемая, значит веруете в присутствие там доходности. Где в этой логике ошибка?
Дмитрий Овчинников, веровать нам  алготрейдунам религия не  позволяет, все  надо проверять в  коде -)))
Алексей Никитин, все то вам писателям неймется? А жарить в ЦЗ2УПП никак?
avatar
Дмитрий Овчинников, про доходность я не  говорил,  я имел в виду что задача вычисления синтетика  решаема с  точки зрения математики, и в целом является не  сложной.
Алексей Никитин, 
вычисления это вообще очень простой процесс, тем более, что он полностью компьютеризирован. В алготрейдинге все-таки основным критерием полезности/ценности идеи является эквити стратегии. Причем, в данном случае, не теоретическая эквити (покупка/продажа всех инструментов по цене клоуз какого-либо интервала), а фактическая, содержащая наиболее приближенные к реальности цены покупки/продажи плюс, точнее минус, все сопутствующие биржевые комиссии и прочие расходы.
Дмитрий Овчинников, ну автор поста нам тут изобразил графег!
Алексей Никитин, 
ну так он и есть теоретический на 100%:
для учета проскальзывания и fee использованы 3 спреда 0,01 и 0'ое отклонение.
Дмитрий Овчинников, вот и весь ответ!!! Теперь всем все понятно!
Дмитрий Овчинников, доходность в правильном стоп лоссе? Или как увидеть кукла и прилепиться к нему?
avatar
Алексей Никитин, да как не назови, лишь в печь не ставь. 
PnL, надеюсь, проторгованная, а не тестовая. А то вы так влететь можете очень сильно.
avatar
Kot_Begemot, тестовая, но кросс валидация использовалась. на живом рынке нужно идти в сторону таймфремов 30М — 1H (не думаю, что меньшие таймфреймы будут доступны)
avatar
ELab, кросс-валидация тут не спасет. Если тестовая, то эту систему легче выбросить, чем мучаться с ней — торговать.
avatar
Kot_Begemot, ок, скомкал и выкинул! спасибо за совет
avatar
"Поэзия — та же добыча радия.
В грамм добыча, в годы труды.
Изводишь единого слова ради
Тысячи тонн словесной руды" ©
avatar
Разумно выбрать одну часть синтетика с отрицательными или положительными коэффициентами и торговать «one leg» по оценке на основе полного синтетика. Это снизит издержки и повысит вашу прибыль.

Просьба пояснить.
avatar
fxsaber, часть синтетика с отрицательными коэфицентами, другая с отрицательными. по сути один синтетический ETF против другого. Но они гарантированно коинтегрированны 
avatar
самостоятельно все вычислить используя несколько строк на Python.

Если через регрессию, то формально это уже иная задача, а не минимизация дисперии. Однако, на практике, наверное, даст не сильное расхождение.
avatar
fxsaber, окей, как на практике на 100 точках решить задачу для 300 акций? регрессия не поможет
avatar
ELab, полноценно дорогая ковариационная матрица вычисляется только один раз. При смещении окна (ЛЮБОГО размера, хоть 10 000 точек) новая матрица получается из старой дешевыми рекурентными соотношениями.

Вам проше Python-код привести, раз это всего несколько строк.

Логично использовать не 200 торговых инструментов, а гораздо больше. А потом начать выкидывать из портфеля инструменты с малыми (для нормированных инструментов) весами.
avatar
ELab, обычно берут фиксированное окно и для каждого его положения вычисляют корзины. Тогда в бэктестах вычисление портфеля отсутствует полностью. Берутся ранее вычисленные значения. Получается очень быстро.
avatar
Алексей Викторович, внимательно почитайте — речь про сотни акций против такого же количества акций
avatar
Морган Стенли так торговал в 1980 — 90 годы весьма успешно, потом всю альфу съели конкуренты
avatar
Я правильно понимаю, что коэффициенты при акциях это решение оптимальной задачи с ограничениями? 
Было бы очень интересно взглянуть именно на саму постановку задачи. Это не самая тривиальная и очевидная вещь.
avatar
SergeyJu, нет — решается другим путем. синтетик получается путем расчета собственных векторов ковариационной матрицы. hrenfx это подробно расписал.
avatar
ELab, скажите, а Вы никогда не слышали, что собственные вектора и собственные числа есть решения той или иной оптимальной задачи для самосопряженной матрицы? 
Если не сложно, дайте ссылку именно на то сообщение, где он расписывает именно упражнения с ковариационной матрицей. 
Тут важно все, как он строит матрицу, как регуляризирует, какие ограничения вводит... 
avatar
SergeyJu, что-то слышал, но забыл ))) в верхних сообщениях есть ссылка
avatar
ELab, эта ссылка про использование его индикатора, а где его построение я не увидел.
avatar
SergeyJu, там есть исходники
avatar
ELab, не увидел. Ссылки на код — совсем не то, что хотелось бы увидеть.
avatar

Привет, отчасти есть решение твоей проблемы. 

Вот мой шорт лист из пар акций которые я торгую в 21 году (не российский рынок)

HR/HTA CUBE/EXR ELS/SUI DCI/PH CMS/WEC

avatar

теги блога ELab

....все тэги



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