Это знаменует собой первую часть серии количественной торговли, в которой мы стремимся выделить некоторые количественные методы, которые можно применять при получении прибыли в мире цифровых активов.

В этой статье мы продемонстрируем, насколько хорошо различные алгоритмы машинного обучения работают при торговле цифровыми активами, и сравним их с точки зрения точности прогнозов и, в конечном итоге, доходности. В Digital Alpha Research наша команда глубоко увлечена использованием данных для получения информации, которая помогает в стратегиях инвестирования в цифровые активы.

Учитывая, что ликвидность является ключом к масштабируемым стратегиям, продолжая в этой серии статей, мы намерены продемонстрировать, как мы применяем наши мысли к высоколиквидным цифровым активам.

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

Определения

Определение 1. Обыкновенные наименьшие квадраты (OLS)

OLS - это метод, известный для оценки неизвестных параметров в модели линейной регрессии. Цель OLS - точно «подогнать» функцию под данные. Это достигается за счет минимизации суммы квадратов ошибок данных.

Уравнение регрессии, представленное выше, показывает, что каждое наблюдение i включает в себя скалярный ответ y ᵢ и вектор-столбец x ᵢ значений p предикторы x ᵢⱼ для j = 1,…, p. ε - это ненаблюдаемые скалярные случайные величины или ошибки, которые влияют на ответы y ᵢ.

Определение 2. Логистическая модель

Логистическая модель, также называемая логит-моделью, является важным алгоритмом машинного обучения, используемым для моделирования вероятности определенного класса или события для двоичных результатов, например: пройден / не пройден или да / нет.

Эта линейная зависимость может быть записана в следующей математической форме:

Если у нас есть переменная ответа Бернулли Y, которая также обозначается как p = P (Y = 1), b основание логарифма, β ᵢ параметры модели и x ₁ и x ₂ предикторы.

Определение 3. Нейронные сети

Нейронные сети - это вычислительные системы, которые вдохновлены биологическими нейронными сетями, составляющими мозг, но не идентичны им.

Из приведенной выше графической иллюстрации видно, что нейронная сеть глубокого обучения использует несколько уровней для постепенного извлечения функций более высокого уровня из необработанных входных данных.

Реализация

Для вычисления логистической регрессии для прогнозирования использовались следующие технические индикаторы или функции: 1) моментум и 2) скользящие средние (MA) с 9 периодами (MA9), 200 периодами (MA200) и экспоненциальная скользящая средняя. с 20 периодами (EMA20).

Данные состоят из 356 записей, используемых в качестве предикторов, цен на дневное закрытие, в диапазоне от дат 2016–01–01 до 2017–01–01. Это показано в следующей формуле:

В таблице ниже показаны функции, о которых мы упоминали ранее в статье.

Важно отметить, что здесь используются МЕТКИ КЛАССОВ. В конечном итоге это набор отрицательных / положительных или {-1,1} результатов анализа, который обозначается как ReturnSign. Классификация выполняется для нашего столбца индикатора Returns. y ᵢ (Y_Response).

Чтобы избавиться от значений NaN, мы использовали «.dropna ()» и чтобы исключить значения, где ReturnSign равно 0, мы вычислили следующее:

data = data[(data[[‘ReturnSign’]] != 0).all(axis=1)]

Эти корректировки были внесены исключительно для получения следующего набора отрицательных / положительных или {-1,1} результатов.

Важно отметить, что эта формула является частью логистической регрессии, C = 1 / λ, где C - параметр обратной регуляризации. Это означает, что C - это управляющая переменная, которая сохраняет модификацию силы регуляризации, будучи обратно пропорциональной регулятору лямбда.

Далее мы опираемся на это, давая C значение 100, используя le2 как входной. Здесь соотношение будет заключаться в том, что снижение значения C в конечном итоге усилит лямбда-регулятор.

Для логистической регрессии мы получили следующий результат:

Logit beta coefficients for Momentum, MA9, EMA20 and Close:
[[-0.01746924 -0.12784996 -0.00725277  0.13476256]]

Intercept:
[0.17564728]

model.classes_ = [-1.  1.]

Математически это представлено как:

ReturnSign = 0.17564728 - (0.01746924 * Momentum) - (0.1784996 * MA9)- (0.00725277 * EMA20) + (0.13476256 * Close + εt)

Построение сигмовидной железы

Сигмовидная функция - это математическая функция, имеющая характеристическую S-образную кривую или сигмовидную кривую. Основываясь на характеристиках из этой статьи, мы затем создаем график: данные каждой функции нанесены на набор отрицательного / положительного или {-1,1} значения Y (по вертикали).

Чтобы получить значения для диапазона {-1,1}, мы затем вычисляем логистическую сигмовидную функцию:

def logistic_sigmoid(xb):
return (1 / (1 + np.exp(-xb)))

Это представлено как:

Сигмовидная функция построена для функций Momentum, MA10, EMA20 и Close.

«Np.linspace (X_min, X_max, 3000)» генерирует 3000 значений в этом диапазоне постепенно. Мы используем логистическую сигмовидную функцию, чтобы получить альтернативную сигмовидную функцию со значениями X от -1 до 1.

Как видно из иллюстрации выше, точки диаграммы рассеяния, которые являются черными, являются возвратами, равными 1, а точки диаграммы рассеяния, которые имеют белыми, равными -1. Они вычисляются с использованием коэффициента Beta. После наблюдения мы отмечаем, что диаграммы показывают 1) графики линейной регрессии, так как они имеют диапазон от -1 до 1, 2) логистический классификатор плохо классифицируется, так как черные точки разброса не включены красная линия сигмовидной функции и 3) характеристики Momentum и MA9 перевернуты.

Мы переходим к дальнейшему отображению этих функций на графике BTC / GBP ниже:

Использование предыдущих временных шагов для прогнозирования следующего временного шага называется методом скользящего окна. Для краткости в некоторой литературе это можно назвать оконным методом. В статистике и анализе временных рядов это называется отставанием.

С учетом вышеизложенного мы теперь вычисляем отдачу и отставание. Используя фактическое значение доходности следующего периода со знаком «ПРОГНОЗИРОВАННЫЙ», мы умножаем цену закрытия на доходность следующего дня с прогнозируемым знаком. В этом бэк-тестировании используются преимущества ретроспективного анализа, но подход логичен. Он представляет собой прибыль и убыток последовательности сделок.

Для прогнозов мы используем, как определено выше, регрессию OLS, логистическую регрессию и нейронные сети для анализируемых нами цен BTC-GBP. мы получаем доходы наших нейронных сетей, умножая доходы BTC на прогнозы нейронной сети. Мы получаем наши данные от Yahoo! finance с использованием тикера BTC-GBP, используя точки данных с 2016 по 2017 год.

15 задержек

50 задержек

100 задержек

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

Заключение

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

В следующей части серии мы вычислим и сравним точность между 1) проверками K-Cross и стратифицированными K-Cross 2) машинами опорных векторов (SVM) и 3) деревьями решений / случайными лесами. Мы объединим их с аналогичными функциями, такими как моментум и скользящие средние, которые используются в этой статье, а также с более сложными функциями, такими как индекс относительной силы (RSI) и расхождение сходимости скользящих средних (MACD).

Учитывая, что класс активов только зарождается, в настоящее время существует очень мало специализированных поставщиков услуг по исследованию цифровых активов. Если вас интересуют индивидуальные количественные исследования, посетите https://digitalalpharesearch.com, чтобы связаться с нашей командой.