На основе приобретенного опыта попытаюсь ответить на вопрос — как получать стабильный доход от трейдинга? Или немного иначе: может ли биржевая торговля стать основным источником дохода? Как знают мои постоянные читатели, я занимаюсь в основном высокочастотным трейдингом, поэтому дальнейшие рассуждения отражают мое мнение исключительно с точки зрения активной торговли.
Для начала необходимо принять базовые принципы, которые для меня являются аксиомой:
Перевод полезной статьи с сайта jonathankinlay.com
В этом посте я хочу обсудить способы применения сигналов от соответствующих рыночных индексов в вашей торговле. Эти сигналы могут улучшить прибыльность вне зависимости от того, торгуете вы алгоритмически или вручную. Техника, описанная здесь, является одной из наиболее применяемых в арсенале квантов.
Начнем обсуждение с примера простой торговой системы на индексе волатильности VIX по недельным барам. Результаты такой системы приведены на графике ниже. Система обгоняет прибыльность стратегии «купил и держи» на значительную величину с профит-фактором более 3 и процентом выигрышных сделок свыше 82%. Что же здесь не так?
Небольшая статья с ресурса 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']
Начало здесь.
Это третья часть интервью со старшим менеджером алгоритмических стратегий большого хедж-фонда. В первой части мы обсуждали теоретическую стадию создания алгоритмической стратегии. Во второй части говорили о передаче стратегии «в производство». Это интервью вызвало много вопросов у наших читателей, ответы на которые были выделены в отдельный пост.
1.Как вы отслеживаете и управляете вашими моделями в боевых условиях? Какие дополнительные проверки и процедуры используются?
Я верю в ручное отслеживание прибыли/убытков в качестве инструмента диагностики. Мне нужно знать, каждый день, точный источник моих прибылей/убытков. Что подорожало, что подешевело, насколько и почему. Это дает мне уверенность, что модель работает, как должна, и это действует как система предупреждения плохих новостей.
Представляю интересную, но, возможно спорную, статью, написанную авторами Zura Kakushadze, Geoffrey Lauprete and Igor Tulchinsky — "101 Formulaic Alphas". Подходы к торговле, описанные в этой статье, применяются многими трейдерами на практике, а насколько прибыльны представленные сигналы, вы можете проверить сами.
Введение
Мы приводим явные формулы, также являющиеся и компьютерным кодом, по 101 сигналу для реальной торговли — так называемых альфа-сигналов. Среднее время удержания позиции по ним варьируется от 0.6 до 6.4 дней. Средняя величина парных корреляций этих сигналов довольно низкая, 15.9%. Прибыльность сильно коррелирует с волатильностью, но не имеет значительной зависимости от оборота, что напрямую подтверждает раннее полученный нами результат на основе косвенного эмпирического анализа. Также мы эмпирически установили, что оборачиваемость мало влияет на корреляцию альфа-сигналов.Окончание.Начало здесь.
Проверка эффективности индикаторов на реальных данных
В качестве проверки верности результатов на симуляционных данных мы использовали два реальных набора данных для исследования производительности индикаторов. Эти тесты требовали уровня 6 данных, для того, чтобы мы смогли точно воссоздать книгу заявок, отслеживая каждый лимитный ордер в моменты его поступления, изменения и удаления из очереди заявок, так же как и исполнение различных ордеров для точной реконструкции событий. В дополнение, мы присвоили каждому ордеру идентификатор, который классифицировал этот ордер как автоматический или ручной. Последней задачей был поиск событий, происходящих на отдельных рынках для изучения их влияния на происхождение мини обвалов цены.
Мы использовали два отдельных набора данных для исследования предсказательной способности индикаторов:
Начало здесь.
Индикаторы стабильности книги лимитных ордеров
Традиционно стабильность, или эластичность рынка, представляется термином ликвидность, которая является возможностью трансформации одного вида актива в другой за короткий временной период без потерь. Легкость такой трансформации, в смысле требующегося времени и воздействия на цену, видится как мера здорового состояния рынка. К сожалению, ликвидность — это многомерное явление, делающее трудным сведение его к единому значению. Можно определить ликвидность в 4-х измерениях:
Время между сделками. Определяет возможность исполнить транзакцию немедленно по текущей цене. Время ожидания между сделками характеризует данную меру.
Плотность. Возможность купить или продать актив около одной цены и одно и тоже время, обычно трактуется как спред между лучшими бидом и аском.
Начало здесь.
Агентская модель очереди лимитных заявок
Переход к электронной книге заявок и автоматической торговле стал толчком к более тщательному изучению микроструктуры рынка. Симуляция рыночных заявок является экспериментальной средой для исследования особенностей и характеристик рынка учеными и регуляторами путем контролируемого создания репрезентативной маркет даты, используемой для анализа. Из-за малой доступности уровней 4,5 и 6 очереди заявок исследователям, симуляция служит необходимым инструментом.
Агентское моделирование заявок позволяет воспроизвести функционирование биржи и процесс торговли, а также гетерогенность участников рынка, и является мощным методом анализа финансовых рынков. Агентские модели (АВМ) упрощают сложные системы путем включения набора отдельных агентов, топологии и среды.
Представляю перевод статьи Mark Paddrik, Roy Hayes, William Scherer, Peter Beling — Effects of Limit Order Book Information Level on Market Stability Metrics, в которой есть много полезных сведений об электронной очереди заявок.
6 мая 2010 года американский рынок пережил одно из самых больших падений цен в его истории. Индекс Доу-Джонса упал на 5 процентов менее, чем за 5 минут. Цепь падений произошла в следующие 15 минут торгов. Это падение поставило вопрос о стабильности рынков капитала и привело к расследованию SEC.
Падение 6 мая было особенным в смысле того, что не было похожих по глубине, объему и скорости падений цены. Обвалы меньших масштабов, тем не менее, случаются часто. Между 2006 и 2012 годами было около 18 520 случаев мини-обвалов, в которых отдельные активы испытывали резкое снижение и несколько обновлений цены за короткий период времени. Хотя случаи таких падений отличаются один от другого, они несут определенные единые стрессовые маркеры, которые, если их распознать заранее, могут быть основой для воздействия на рынок с целью увеличения его стабильности.
Под заголовком «построение системы» будут публиковаться статьи о разработке автоматических алгоритмов, которые помогут трейдерам понять некоторые тонкости создания таких систем и избежать распространенных ошибок. Лучшие советы от популярных западных блоггеров, с моими комментариями по некторым вопросам. Первая статья о том, как правильно готовить исходные данные для стратегии из блога Investment Idiocy.
Тип данных
Алгоритмы автора представляют собой технические системы, использующие только ценовые данные. Не применяются графики на свечах, анализ производится только для временных дискретных серий.
Внутри дня записывается средняя цена ((бид+аск)/2) контракта, предназначенного для торговли. Для тех же временных точек сохраняется величина спреда (аск минус бид) для измерения ликвидности. Таким образом данные Level 2 (для западных рынков) не используются. Также могут быть взяты цены закрытия для базового ( в случае фьючерсной торговли) или взаимосвязанного контракта для измерения контанго/роллирования и т.п. Кроме того могут понадобится цены закрытия линейки фьючерсов и их объемы для осуществления роллирования, подробнее об этом позже.