Избранное трейдера Вася Пупкин
В прошлой статье Расчет мультипликаторов – часть 2: подготовка данных мы рассмотрели главную стратегию фундаментального анализа, а также перечислили основные мультипликаторы.
Теперь давайте на конкретных примерах рассчитаем мультипликаторы нескольких компаний. Первое что стоит сделать, это подготовить данные. Как уже говорилось, мультипликаторы фактически позволяют сопоставить рыночную стоимость компании с ее бухгалтерской отчетностью. Таким образом исходными данными у нас будут:
Рыночные данные: кол-во обыкновенных акций, кол-во привилегированных акций, рыночная стоимость акций (котировка).
Данные бухгалтерской отчетности.
Давайте подготовим данные для следующих компаний:
Я специально взял три совершенно разные компании, чтобы примеры получились более полезными.
Окей, 100 плюсов есть. Обещанный способ угадывания гэпа.
Идем к сайлентбобу: smart-lab.ru/blog/206454.php
Что видим:
1) только лонг
2) работает с 2011 года, до этого времени нет
3) сделок с весны 2011 до сентября 2014 мало — 123 штуки — событие с одной стороны редкое, а с другой вполне себе равномерно распределено по году (смотрим эквити). Процент выигрыша 65, профит фактор 2,77.
4) паттерн достаточно очевидный чтобы его было не жалко отдать сматрлабовцам.
Какое у нас редкое равномерно распределенное очевидное событие? День недели. Строим простейший скрипт и смотрим есть ли закономерности в Си по дням недели.
Чего видим? в пятницу у нас гэп скорее вверх, причем профит фактор сразу 2,56. Смотрим на эквити:

Все красиво, похоже предположение верное. На следующем шаге добавляем фильтр в стиле «на момент входа снизились не более чем на определенную величину от закрытия предыдущего дня». Часть сделок отсеиваем, улучшаем ПФ на 0,39. Радуемся, исследуем дальше, встраиваем в свои системы.
А заодно начинаем думать почему так может происходить, и почему до 2011 было по-другому. До мая 2010 пятничный гэп в целом повторял движение самого Си, а с мая 2010 до начала 2011
На смартлабе очень мало чего можно почитать начинающему алготрейдеру. Если кто и пишет — все больше эквити выкладывают, а на идеи стратегий даже не намекают. Один из товарищей которых я читаю — silentbob ( http://smart-lab.ru/profile/silentbob/ ). Он периодически выкладывает что-то из своих наблюдений, на основе которых вполне пишутся рабочие стратегии.
В своё время он предлагал выложить выложить устойчивый метод угадывания гэпа вверх в Си за 350 плюсиков
smart-lab.ru/blog/206454.php
За плюсики смартлабовцы метод не выкупили и для многих он остался загадкой)) Эквити у метода была вот такая:

Идея простая: покупаем в 23-45 при выполнении определенных условий и продаем в 10-15. Я потратил какое-то время и постарался найти стратегию с похожими параметрами. Совсем такой же у меня не получилось, но что то все таки нашел:

Здравствуйте дорогие друзья!
Хочу проверить влияние спреда IV-HV на результат торговли, если куплен стредл на центральном страйке и выравнивать дельту фьючем каждый день.
Сдесь и далее в следующих статьях:
IV — подразумеваемая волатильность центрального страйка
HV — историческая волатильность приведенная к годовой
Спред — разница между IV и HV
Все дальнейшие расчеты и скриншёты приведены для инструмента RI.
Формула по рассчету HV:
Сначала рассчитывается средний дневной ход цены (HV_EMA) в процентах
HV_EMA=HV_EMA(t-1) + Alfa * (100 * (Abs(PRICE_F — Prev_PRICE_F) / Prev_PRICE_F) — HV_EMA(t-1))
где:
HV_EMA(t-1) — средний дневной ход цены на предыдущем шаге (дне)
Alfa — коэффициент сглаживания (0...1)
PRICE_F — цена фьючерса на текущем шаге (дне)
Prev_PRICE_F — цена фьючерса на предыдущем шаге (дне)
Если проще сказать то HV_EMA это экспоненциальная средняя дневных изменений цены фьючерса взятых по модулю.
У нас получается дневная волатильность. Далее приводим дневную волатильность к годовой:
HV=HV_EMA * КОРЕНЬ(252)
Почему я взял 252? Потому что в году примерно 252 рабочих дня, хотя этот вопрос спорный какой коэффициент брать 252 или 365.
Все, теперь у нас есть историческая волатильность приведенная к годовой и её можно теперь сравнивать с подразумеваемой.
Методом тупого перебора я перебрал все коэффициенты Alfa и определил, что у коэффициента Alfa=0,06 наименьшее среднеквадратичное отклонение между IV и HV, его то и возьмем для дальнейших исследований.
Посчитаем разность между IV и HV и построим график этого спреда

С ростом волатильности на рынке, для многих трейдеров, актуальным становится быстрое хеджирование своих текущих позиций. При хеджировании или корректировке позиции, вы смотрите на цену, премию и сравниваете со страховкой, которую получаете взамен. Это, как покупать страховку на машину — вы хотите купить самую дешевую, но с высоким покрытием риска.
Защита от «шипов» волатильности
Если цена идет против вас, волатильность, как правило, увеличивается, также увеличиваются и маржинальные требования и премия кредитного спреда.
Именно от волатильности или от Веги мы и хотим застраховать себя. Если вы составляете кредитный спред, то ожидаете, что опционы истекут ничего не стоящими. Или, другими словами, вы занимаете короткую позицию по волатильности. Снижение волатильности будет выгодно, увеличение волатильности — вредно для вашей позиции.
Начнем с базового риск профиля
Рассмотрим профиль P/L типичного кредитного пут спреда, на котором видно предполагаемый убыток и прибыль по позиции, а также их соотношение, на экспирацию. Например, вы продали 1 опцион пут со страйком $45 и купили 1 опцион пут со страйком $40 и получили кредит $200.

Небольшая статья с ресурса http://www.talaikis.com/ о построении простой стратегии, использующую наивный байесовский классификатор при создании процесса возврата к среднему. Весь код в статье приведен на языке Python.
Это достаточно большая область исследований, но расскажем все очень кратко. Мы попытаемся найти взаимоотношение между временными сериями (в данном случае возьмем в качестве сигнала взаимный фонд XLF из финансового сектора, сдвинутый по времени на 1 день назад), а нашей целью будет фьючерс S&P500 в форме CFD. Будем входить в длинную позицию по этой бумаге при нулевой вероятности приращения. Логически нулевая вероятность ни о чем не говорит, другими словами, будем покупать возврат к среднему.
1. Получение данных
Y = read_mongo(dbase, "S&P5001440") X = read_mongo(dbase, syms[s]).shift() #готовим набор данных res = pd.concat([X.CLOSE, Y.CLOSE], axis=1, join_axes=[X.index]).pct_change().dropna() res.columns = ['X', 'Y']
Не нравятся нейронные сети? Вы просто не умеете их готовить. Рецепт.
Silentium est aurum
Молчи, пока ты не в состоянии сказать нечто такое, что полезнее твоего молчания. (кто-то умный сказал)