Арбитраж и все все все
Atom Ответить
12.12.2011


Бодрого дня, уважаемые коллеги и примкнувшие к ним товарищи. Ветка это есть продолжения краткой дискуссии про тематические парки и куртизанок, что была в скайпе.
Предлагаю обсудить тему арбитража. Но прежде чем начать, хотел бы сразу попросить «выступить» всех у кого есть, что сказать по делу и они готовы это сказать. Утверждения типа «на этом можно хорошо зарабатывать имея и пару лямов» и прочие утверждения в стиле Капитана Очевидности лучше пока оставить для скайпа. Если готовы обсуждать открыто (благо форум закрытый – значит можно палить граали), то давайте попробуем.
Так же хочу отметить, что я в этой теме пока как свин в апельсинах. Это связано в первую очередь с возможно не самыми глубокими познаниями в статистике и рядом других причин.
Но для затравки попробую выступить первым.
Хочу сразу поставить все точки над «и» в вопросах терминологии. Есть много разных обзывательств, касательно арбитража. Я предлагаю утвердить слудующее:
- математический арбитраж – арбитраж при котором вероятность благоприятного исхода (гарантированного схождения)близка к 100% - это например игрища со спрэдами между ближним и дальним фьючом. Конечно говорить о 100% удаче не совсем корректно – черных леблядей никто не отменял.
- риск-арбитраж – арбитраж между акциями компаний, затеявших сделку по слиянию (поглощению). В рамках данной темы предлагаю это не трогать ибо на нашем рынке это не актуально, а для буржуйского имеет смысл при наличии больших денег, кучи времени и хорошего понимания фундаментальных факторов.
- межрыночный арбитраж – купили на ММВБ, продали на LSE. Трогать не будем ибо это дорого.
-статистический арбитраж (парный трейдинг) – это именно то, что нам нужно. Назовем это арбитражем при котором ожидается, что спрэд (у нас вроде как это раздвижкой зовется) вернется к своему среднему значению в случае отклонения. При этом «среднее» может быть как и реально mean-reversing, так и 0-reversing (написал с ошибками наверно). Что брать за среднюю обсудим чуть позднее.
«Участниками» парной торговли могут быть – акция+акция (для РФ работает), акция + индустриальный ETF (для РФ не работает), фьючерс-фьючерс (корзина фьючерсов – на РФ возможна, хотя и не всегда приятна), фьючерс-акция (возможна в РФ), ряд других вещей, которые на скудном рынке РФ никак не реализуются.
Нас будет интересовать только два варианта: акция-акция (в том числе и американский рынок) и фьюч-фьючи (в том числе и американский рынок)
Теперь посмотрим из каких «частей» складывается правильная «парная» торговля:
- определение торгуемых инструментов
- определение веса каждого инструмента в паре
- определение точки (причины) входа в позицию
- определение причины выхода из позиции
-ведение позиции в течении сделки

Предлагаю обсудить по очереди каждый из пунктов ибо в подходах существует много разных мнений.

1.Определение торгуемых инструментов.
Для буржуев пары подбираются с учетом следующих факторов: акции должны находиться в одном секторе\индустрии, их корреляция должна быть как можно ближе к 1(-1). Первое требование обусловлено тем, что акции одного сектора будут одинаков реагировать на рыночные риски, имеют схожие операционные модели, ну и «слабые» всегда будут стремиться за «сильными». При работе с фьючерсами обычно также ищут фундаментальные взаимосвязи (например Нефть разных марок, индексы разных стран и т.д.) Что касается корреляции – тот тут я не встретил в литературе единого мнения – как правило указывается, что акции должны коррелировать и значения в 0.5 типа как уже достаточно. «Пацаны» на буржуйских форумах все-таки склоняются к тому, что это значение не должно быть ниже 0.7-0.8. Для нашего рынка это не актуально  ибо акции которыми можно торговать у нас имеют 0.9 и называются Газпромосбербанк.
Некоторые продвинутые участники упоминают еще и необходимость коинтеграции, но мой скудный статистических багаж подсказывает, что добиться коинтеграции у высоко коррелированных инструментов гораздо проще. Но тут я могу быть не прав.

2.Определение веса инструмента. Тут опять же есть несколько подходов. Самый простой и самый неправильный – поделить один инструмент на другой и полученное значение будет множителем для определения веса инструмента в паре. Более продвинутые предлагают использовать формулу (цена А/бета А)/(цена Б/ бета Б). Даная фишка применима исключительно для акций, торгуемых в штатах (и условно применима для наших). Такой формулой мы учитываем волатильность инструментов относительно «эталона» которым в данном случае выступает индекс. Не могу сказать какие тут минусы ибо «глубоко» протестить это дело трудно так как самому бету считать заманаешься, а исторических данных найти в свободном доступе трудно.
Еще одним способом является простое ATR A/ATR B. Работает для акций и фьючей но не совсем подходит для торговле фьюч-корзина фьючей (использует товарищь Кауфман).
Попадались и иные способы (например с учетом исторической волатильности), но так или иначе все они учитывают волатильность инструментов и гораздо точнее работают нежели простая «дележка» инструментов.
Для корзинки фьючей наибольший интерес предлагает метод предложенный (но не до конца раскрытый) Тарасом в его публикациях на русском трейдере.

3.Определение точки входа. Тут так же есть туча вариантов. Одни строят график спрэда и при отклонении на величину более 1.5-2-2.5(кто как) стандартного отклонения за некий промежуток времени открывают позу в надежде на возврат цены к своему среднему (стоит отметить что ст-откл. также можно посчитать по разному), кто-то в качестве фильтра еще считает Density curve. Однако у данного метода есть один неприятный момент – спрэд может не возвращаться к своему среднему значению достаточно продолжительное время. Нам же интересен короткий горизонт – не далече 3дней (ну или интрадейные колебания).
Другие товарищи считают спрэд не по цене, а через формулу стохастика (без усреднения) и спрэдом для них являются разница двух стохастиков (это предлагает делать Кауфман) или же стохастик построенный по этой разнице взятый за несколько дней (автор он же). Тут у нас решается проблема возврата к «0».
Есть и более изощренный вариант «от Тараса», где цена нормируется с целью избавления от «трендовой» составляющей и предполагается торговля при отходе от среднего.

4.Выход из позиции и управление позицией. Выход прямо зависит от причины входа – это или возвращение к «0» или к средней. Так же используется стоп при достижение порогового значения риска или стоп по времени удержания позы.
Управление позой предполагает добавление к позиции с целью смещения точки безубыточности в случае неверного движения. Однако этот метод весьма требователен к депозиту и устойчивости задницы трейдера.

Ну вот собственно у меня все. Предлагаю высказаться по пунктам у кого есть что сказать.



Спасибо:




41 Ответов
< 1 2 
Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 24.11.2014
Ответить


Андрей Шабанов Перейти
По своему опыту:

если знания равны то лучше матлаб в силу наличия удобоваримого дебага и большей скорости работы. R всеже погибче будет


MatLab лучше R по множеству парамертров. Исчерпывающее сравнение на английском http://stackoverflow.com/a/1738309

Другое дело, что вопрос стоит наверняка в плоскости, что лучше, МатЛаб, приобретенный через торрент, против Р. Ведь МатЛаб стоит денег, а R бесплатен. И Матлаб стоит для компании куда дороже, чем для частного использования.
Спасибо:

transdex

Фотография
Дата: 24.11.2014
Ответить


Однако, старовата ссылочка...
Вот поновее:
http://www.tiobe.com/ind...aperinfo/tpci/index.html



Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 27.11.2014
Ответить


transdex Перейти
Однако, старовата ссылочка...
Вот поновее:
https://www.tiobe.com/ind...aperinfo/tpci/index.html





Ссылочка рассказывает о языках вообще. На Сях не видел ни одной платформы по трейдингу. Вот более менее предметная статистика (фильтр по финансовой группе):



Во-первых, видно, что R был всегда популярнее остальных решений (мое мнение - за счет бесплатности).
Во-вторых, разрушается миф о Питоне, набирающем силу среди трейдеров. Видно, что бесплатный Питон, который должен иметь перформанс хотя бы половину от R, еле-еле ходит вокрут платного и дорогого МатЛаб-а.
Спасибо:

transdex

Фотография
Дата: 28.11.2014
Ответить


Неправильное использование Google Trends детектед.
Почему неправильно и как правильно см. тут
Поэтому должно получится что-то вроде этого.
Или как-то так.

Ну и отдельно по группам языков можно посмотреть тут:
http://lang-index.sourceforge.net/

Откуда следует, что каждого своя правда...
Но Python пока рулит.

А вот и Грааль BigGrin
Statistical arbitrage with Python

Цитата:
NOTE: For the impatient/curious, the model gives about 12% annual returns with Sharpe ratio=5 and maximum drawdown=0.5% with $0.005/per share transaction costs. Jump to the end of this notebook to see the plots.


PS. По поводу бесплатности R. Местами да, местами нет. Слышал краем уха, что десктоп версия "Revolution R Enterprise" стоит $4500.
Спасибо:

JaguarFX

Фотография
Курсы
Дата: 05.01.2015
Ответить


Михаил, можно попросить вас сделать в следующей версии S#.API тестовый пример парного трейдинга!!!
Иначе все эти разговоры про парный трейдинг на основе платформы StockSharp для рядовых пользователей так и остаются только разговорами - разобраться как спрограммировать такую стратегию самостоятельно практически не представляется возможным.
Так я потратил массу времени и сил в попытке запустить парный трейдинг через WeightedIndexSecurity, но выяснил что продать/купить в нужном направлении сразу несколько инструментов продавая/покупая в стратегии WeightedIndexSecurity невозможно.
Спасибо:

RomSunZ

Фотография
Программист
Дата: 06.01.2015
Ответить


Что мешает запустить несколько отдельных стратегий на покупку/продажу разных инструментов?
Спасибо:

devruss

Фотография
Курсы
Дата: 06.01.2015
Ответить


RomSunZ Перейти
Что мешает запустить несколько отдельных стратегий на покупку/продажу разных инструментов?


4 раза пересекать bid/ask spread убивает львиную долю прибыли
Спасибо:

Сергей Гаврилов

Фотография
Курсы
Дата: 06.01.2015
Ответить


devruss Перейти
RomSunZ Перейти
Что мешает запустить несколько отдельных стратегий на покупку/продажу разных инструментов?


4 раза пересекать bid/ask spread убивает львиную долю прибыли

А синтетика пересекать не будет что ли?

Спасибо:

RomSunZ

Фотография
Программист
Дата: 06.01.2015
Ответить


devruss Перейти
RomSunZ Перейти
Что мешает запустить несколько отдельных стратегий на покупку/продажу разных инструментов?


4 раза пересекать bid/ask spread убивает львиную долю прибыли


Blink Есть другие варианты?
Спасибо:

JaguarFX

Фотография
Курсы
Дата: 06.01.2015
Ответить


Доходность того варианта парного трейдинга, который я хочу закодить (http://robotcraft.ru/vstroeniestrategii/arbitrag/89-arbitrag-difference) не зависит от пересечений стакана, а только от частоты колебания спреда за период в достаточно узком канале.
Вариант с 2-мя одновременно работающими стратегиями совсем не лучшее решение, так как аналитика там единая.
Спасибо:

Сергей Гаврилов

Фотография
Курсы
Дата: 06.01.2015
Ответить


lebedevsrg Перейти
Доходность того варианта парного трейдинга, который я хочу закодить (https://robotcraft.ru/vstroeniestrategii/arbitrag/89-arbitrag-difference) не зависит от пересечений стакана, а только от частоты колебания спреда за период в достаточно узком канале.
Вариант с 2-мя одновременно работающими стратегиями совсем не лучшее решение, так как аналитика там единая.


А... Это стратегия, которую Давид Серебренников "многоуровневым маркетмейкингом" называет. Уже как 7 лет о ней говорит, даже хедж-фонд под нее создал... Особо не обольщайтесь.. В принципе эта стратегия рабочая, но требует использования множества пар для диверсификации..

Спасибо:

RomSunZ

Фотография
Программист
Дата: 08.01.2015
Ответить


lebedevsrg Перейти
Доходность того варианта парного трейдинга, который я хочу закодить (https://robotcraft.ru/vstroeniestrategii/arbitrag/89-arbitrag-difference) не зависит от пересечений стакана, а только от частоты колебания спреда за период в достаточно узком канале.
Вариант с 2-мя одновременно работающими стратегиями совсем не лучшее решение, так как аналитика там единая.


Запускайте котирование на вход/выход по инструментам из Вашей единой аналитики, там же и следите за позициями и ценами входа, в чем сложность-то? S# по барабану сколько котирований запущено и по каким направлениям...
Спасибо:

JaguarFX

Фотография
Курсы
Дата: 10.01.2015
Ответить


Понятно что все можно реализовать написав кучу кода.
Но это концептуально неверно - если в StockSharp имеется инструмент типа WeightedIndexSecurity, то стратегия (объект типа Strategy) должна с ним нормально работать:
1) при покупке 1 инструмента такого типа обеспечить выставление заявок на покупку заданного весами количества базовых инструментов у которых положительные веса, и продажу заданного весами количества базовых инструментов у которых отрицательные веса,
2) при продаже 1 инструмента такого типа обеспечить аналогичные обратные сделки.
Тогда только можно будет говорить что StockSharp нормально поддерживает парный трейдинг, и в общем случае комплексные арбитражные стратегии типа индекс против корзины базовых инструментов.

Тем более что создатели уже поместили упоминание парного трейдинга как элемента StockSharp на первую страницу сайта. Но по факту оказывается что пока рано об этом говорить.
PaireTrading.jpg 203,6KB (0)
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 10.01.2015
Ответить


lebedevsrg Перейти
если в StockSharp имеется инструмент типа WeightedIndexSecurity, то стратегия (объект типа Strategy) должна с ним нормально работать


Изначально так и задумывалось. Но по мере переделок в S# пришло понимание, что алгоритмы нельзя затягивать внутрь библиотеки (если это не стандартные алго или формулы в 1 строчку). Потому что каждый по разному вкладывает понимание Индекс. Вы например повесили на вес соотношение. Кто-то другой предпочитает вес в процентах. Кто-то - вес, определяющий доли в портфеле.

Комбинаций - море. Плюс ко всему не понятно зачем это делать внутри библиотеки, если это можно сделать как стратегию-пример. О чем и было предложено в плане самостоятельно реализации. Стандартная реализация - это как автомат для стрижки волос. Изначально у всех головы разных размеров.

С т.з. разработки - это неправильно. Мы предоставляем возможность и для pair trading и для арбитража. Инструменты есть. Работают они на низком уровне. Делать надстройки нет ни причины ни возможностей. Это все равно что создавать разработчикам платформы еще и стратегии. Этим занимаются сами пользователи.
Спасибо:

JaguarFX

Фотография
Курсы
Дата: 13.01.2015
Ответить


Михаил, вполне возможно что отсутствие таких функций дает дополнительный простор для творчества пользователей... Но все же было бы очень здорово если в S.API Samples появился бы хоты бы один простой пример.
Спасибо:

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 14.01.2015
Ответить


Повторюсь.

Сделать примеры для всех-всех-всех случае не возможно в принципе. Задача наполнения контента по идее должна быть возложена на пользователей. К сожалению, от пользователей на данный день можно ждать только бесплатного негатива, и нулевого конструктива.
Спасибо:
< 1 2 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy