Перевод основных моментов статьи «Momentum in traditional and cryptocurrencies made simple» Janick Rohrbach, Silvan Suremann, Joerg Osterrieder. Статья интересна последовательным подходом к разработке алгоритма, обходясь при этом очень простой математикой.
Введение
Импульс это традиционная стратегия для торговли валютами. Растущие ранее активы с большей вероятностью продолжат свой рост, ранее падающие продолжат падение. Для исполнения такой стратегии нужно покупать дорожающие валюты и продавать дешевеющие. Мы используем алгоритм, представленный в Baz, J., Granger, N., Harvey, C.R., Le Roux, N., Rattray, S., 2015. Dissecting investment strategies in the cross section and time series., для генерации импульсных сигналов, основанных на пересечениях трех экспоненциальных скользящих средних с различными временными горизонтами. Эти три скользящие средние определяют короткий, средний и долгосрочный тренд. В упомянутой статье было показано, что этот подход работает хорошо для различных классов активов. Мы возьмем только валютный рынок и детально покажем, как алгоритм работает применительно к нормально распределенным приращениям. Затем мы используем алгоритм для бэктеста на реальных данных и продемонстрируем, на каких периодах стратегия работает, а на каких — нет.
Перевод статьи из блога Эрни Чана.
Все знают, что значение волатильности зависит от частоты измерений: стандартное отклонение 5-минутных приращений цены отличается от стандартного отклонения дневных приращений. Если z — логарифм цены, то волатильность, взятая на интервале
Продолжение. Начало здесь.
2.3. Расчет показателей
Для каждой пары мы рассчитываем пять показателей в тренировочном и проверочном периодах, а именно годовую прибыль, коэффициент Шарпа, среднее время сделки, приведенную к году частоту сделок, и прибыль за сделку.
Дневную прибыль рассчитаем следующим образом:
Небольшая статья по парному трейдингу на американском рынке акций от студентов Колумбийского университета Peng Huang и Tianxiang Wang с практическими примерами (оригинал).
Разница между применямой нами и обычной практикой парного трейдинга в том, что мы используем метод максимального правдоподобия для конструирования оптимального портфеля статического парного трейдинга, который наиболее соответствует процессу Орнштейна-Уленбека, и строго определяем его параметры. Таким образом, мы убеждаемся, что наши портфели следуют процессу возврата среднего перед тем как начинать торговлю. Затем мы генерируем контртрендовые торговые сигналы, используя параметры модели. Также мы оптимизируем пороги и величину периодов in-sample и out-of-sample. Например, акции Crown Castle International Corp. (CCI) и HCP, Inc. (HCP) при таком подходе показывают коэффициент Шарпа 2.326 на периоде in-sample и 2.425 на периоде out-of-sample. Акции Crown Castle International Corp. (CCI) и Realty Income Corporation (O), торгуемые по нашей методике, демонстрируют коэфициент Шарпа 2.405 и 2.903 соответственно на выборках in-sample и out-of-sample.
Тут в трейдерском сообществе разгорелась небольшая дискуссия по поводу поста Андрея Мовчана. Хочу вложить свои скромные 5 копеек в эту общую копилку.
Трудно не согласиться с утверждением, что инвестиции имеют положительное матожидание в долгосрочной перспективе, это, как и пишет А.Мовчан, определено перетеканием доходов реального сектора на рынок. Верно и то, что величина у этого матожидания небольшая в абсолютных цифрах (но может стать значительной по закону сложного процента). В агоритмической торговле, в частности в высокочастотной (или внутридневной), тоже есть фундаментальное свойство рынка, которое позволяет добиться на продолжительном отрезке времени положительной доходности, и это точно так же неизбежно, как и при правильном (диверсифицированном и долгосрочном) инвестировании в акции компаний. Это свойство заключено в mean-reverting характере биржевой торговли. Я специально не говорю про цену, потому что это понятие гораздо шире движения цен, являющегося, по сути только следствием. Пока на бирже есть продавцы и покупатели, и пока между ними существует определенный баланс, высокочастотные алгоритмы будут существовать всегда. Если вы увидите, что цены стали двигаться по прямой, то поймете, что автоматические стратегии зарабатывать перестали ( хотя, я думаю на прямой линии заработать будет намного проще, и без всякой автоматизации).
Перевод полезной статьи с сайта jonathankinlay.com
В этом посте я хочу обсудить способы применения сигналов от соответствующих рыночных индексов в вашей торговле. Эти сигналы могут улучшить прибыльность вне зависимости от того, торгуете вы алгоритмически или вручную. Техника, описанная здесь, является одной из наиболее применяемых в арсенале квантов.
Начнем обсуждение с примера простой торговой системы на индексе волатильности VIX по недельным барам. Результаты такой системы приведены на графике ниже. Система обгоняет прибыльность стратегии «купил и держи» на значительную величину с профит-фактором более 3 и процентом выигрышных сделок свыше 82%. Что же здесь не так?
Новый Год совсем близко, поэтому можно уже подвести итоги. В этом году мы организовались в небольшую алготрейдинговую команду, целью которой было создание высокочастотных алгоритмов и, конечно, их боевое применение. По полной программе роботы начали работать с 10 мая, до этого делали боевую часть на С++, размещались на колокейшн, придумывали собственно сами алгоритмы, то есть длительность боевых торгов — чуть больше полугода. Все алго работают пока только на FORTS, инструменты — RI и Si. Результаты торговли представлены в заголовке поста в процентном отношении к начальному капиталу.
Управление стратегиями происходило по правилам, которые я рассказывал здесь и здесь. Как можно видеть из графика дродауна, в октябре случилась просадка, в 3 раза превысившая расчетную ( а расчетная была около 7%, как следует из
Продолжение. Начало здесь.
Вы, наверное, заметили, что в процедуре вычисления параметров модели, описанной выше, я запоминал действительные предсказанные значения, так же как и предсказания направления приращения цены. Я хочу исследовать предсказательную способность величины приращения. Точнее, может ли фильтрация сделок, в случаях, когда величина предсказанного приращения ниже определенного порога, улучшить доходность стратегии? Код ниже представляет такой анализ для небольших порогах приращений. Для упрощения, я конвертировал логарифмы приращений в простые приращения, чтобы получить управление знаком предсказания и облегчения применения порога:
# Test entering a trade only when prediction exceeds a threshold magnitude simp.forecasts <- exp(ag.forecasts) - 1 threshold <- 0.000025 ag.threshold <- ifelse(simp.forecasts > threshold, 1, ifelse(simp.forecasts < -threshold, -1, 0)) ag.threshold.returns <- ag.threshold * returns[(window.length):length(returns)] ag.threshold.returns[1] <- 0 # remove NA ag.threshold.curve <- log(cumprod( 1 + ag.threshold.returns)) both.curves <- cbind(ag.threshold.curve, buy.hold.curve) names(both.curves) <- c("Strategy returns", "Buy and hold returns") # plot both curves together plot(x = both.curves[,"Strategy returns"], xlab = "Time", ylab = "Cumulative Return", main = "Cumulative Returns", major.ticks= "quarters", # minor.ticks = FALSE, ylim = c(-0.2, 0.45), col = "darkorange") lines(x = both.curves[,"Buy and hold returns"], col = "blue") legend(x = 'bottomleft', legend = c("Strategy", "B&H"), lty = 1, col = myColors)
Статья из блога Robot Wealth.
Продолжая мои исследования в области моделирования временных серий, я решил изучить авторегрессивные и условные гетероскедатичные модели. В частности, я взял авторегрессивную модель ARIMA и общую авторегрессивную гетероскедатичную модель GARCH, так как на них часто сылаются в финансовой литературе. Далее следует описание того, что я узнал об этих моделях и основной процесс нахождения их параметров, а также простая торговая стратегия, основанная на предсказаниях полученной модели.
Сначала дадим несколько необходимых определений. Я не хочу воспроизводить всю теорию целиком, ниже дан краткий обзор моделирования временных серий, в частности ARIMA и GARCH моделей:
В первую очередь, вычисление ARIMA и GARCH моделей это способ узнать, при каких прошлых наблюдениях, шуме и дисперсии временной серии возможно предсказать следующее значения этой серии. Такие модели, параметры которых правильно установлены, имеют некоторую предсказательную способность, предполагая, конечно, что эти параметры остаются постоянными на некоторое время для данного процесса.
Доклад «Оптимизация портфеля алгоритмических стратегий»
1. Введение
В чем состоит цель подобной оптимизации? Представим, что у нас есть набор алгоритмов, каждый из которых обладает некоторыми статистическими свойствами, из которых наиболее важными для нас являются доходность и максимальная величина просадки. В основе каждого из алгоритмов лежат разные стратегии, которые, тем не менее, могут быть коррелированы между собой в разной степени, торговля также может вестись на разных инструментах. В качестве примера приведу характеристики стратегий, которые были разработаны нашей командой и применяются в боевых торгах в настоящее время:
Так как свойства каждого из алгоритмов отличаются, возникает проблема: каким образом распределить между ними доступный капитал для того чтобы:
1. Максимизировать доход при заданном уровне риска ( то есть максимальной величине просадки)
2. Минимизировать риск при заданной доходности
Если дать, например равные доли капитала каждому алгоритму, то, очевидно, что такое распределение не будет оптимальным, так как мы не учитываем характеристики, присущие стратегиям. Не будет оптимальным и тот случай, когда мы, например, выделяем капитал пропорционально относительной доходности каждого алгоритма, здесь мы игнорируем значения волатильности, то есть риска, стратегий.
2. Модель Марковица
Задачу оптимизации попробуем решить, применив теорию оптимального портфеля, разработанную Марковицем, точнее некоторые последующие ее модификации. Обычно данная теория применяется для долгосрочного инвестиционного портфеля, состоящего из различных активов, например акций. Кратко суть теории.