Статьи по машинному обучению в трейдинге

icon

Создание торговых роботов на основе искусственного интеллекта: нативная интеграция с Python, операции с матрицами и векторами, библиотеки математики и статистики и многое другое.

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

Новая статья
последние | лучшие
preview
Машинное обучение и Data Science (Часть 03): Матричная регрессия

Машинное обучение и Data Science (Часть 03): Матричная регрессия

В этот раз мы будем создавать модели с помощью матриц — они дают большую гибкость и позволяют создавать мощные модели, которые могут обрабатывать не только пять независимых переменных, но и множество других, насколько позволяют пределы вычислительных возможностей компьютера. Статья будет очень интересной, это точно.
preview
Нейросети — это просто (Часть 23): Создаём инструмент для Transfer Learning

Нейросети — это просто (Часть 23): Создаём инструмент для Transfer Learning

В данной серии статей мы уже не один раз упоминали о Transfer Learning. Но дальше упоминаний пока дело не шло. Я предлагаю заполнить этот пробел и посмотреть поближе на Transfer Learning.
preview
Нейросети — это просто (Часть 22): Обучение без учителя рекуррентных моделей

Нейросети — это просто (Часть 22): Обучение без учителя рекуррентных моделей

Мы продолжаем рассмотрение алгоритмов обучения без учителя. И сейчас я предлагаю обсудить особенности использования автоэнкодеров для обучения рекуррентных моделей.
preview
Нейросети — это просто (Часть 21): Вариационные автоэнкодеры (VAE)

Нейросети — это просто (Часть 21): Вариационные автоэнкодеры (VAE)

В прошлой статье мы познакомились с алгоритмом работы автоэнкодера. Как и любой другой алгоритм, он имеет свои достоинства и недостатки. В оригинальной реализации автоэнкодер выполняет задачу максимально разделить объекты из обучающей выборки. А о том, как бороться с некоторыми его недостатками мы поговорим в этой статье.
preview
Эксперименты с нейросетями (Часть 2): Хитрая оптимизация нейросети

Эксперименты с нейросетями (Часть 2): Хитрая оптимизация нейросети

Нейросети наше все. Проверяем на практике, так ли это. MetaTrader 5 как самодостаточное средство для использования нейросетей в трейдинге. Простое объяснение.
preview
Нейросети — это просто (Часть 20): Автоэнкодеры

Нейросети — это просто (Часть 20): Автоэнкодеры

Мы продолжаем изучение алгоритмов обучения без учителя. Возможно, у читателя может возникнуть вопрос об соответствии последних публикаций теме нейронных сетей. В новой статье мы возвращаемся к использованию нейронных сетей.
preview
Машинное обучение и Data Science (Часть 02): Логистическая регрессия

Машинное обучение и Data Science (Часть 02): Логистическая регрессия

Классификация данных — важнейшая вещь для алготрейдера и программиста. В этой статье мы рассмотрим в подробностях один из классификационных логистических алгоритмов, который может помочь нам определить «да» или «нет», рост или падение, покупки или продажи.
preview
Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5

Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5

Продолжаем тему поиска ассоциативных правил. В предыдущей статье мы рассмотрели теоретические аспекты данного типа задач. В этой статье я продемонстрирую реализацию метода FP-Growth средствами MQL5. А также мы протестируем нашу реализацию на реальных данных.
preview
Нейросети — это просто (Часть 18): Ассоциативные правила

Нейросети — это просто (Часть 18): Ассоциативные правила

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

Метамодели в машинном обучении и трейдинге: Оригинальный тайминг торговых приказов

Метамодели в машинном обучении: Автоматическое создание торговых систем практически без участия человека — Модель сама принимает решение как торговать и когда торговать.
preview
Эксперименты с нейросетями (Часть 1): Вспоминая геометрию

Эксперименты с нейросетями (Часть 1): Вспоминая геометрию

Нейросети наше все. Проверяем на практике, так ли это. Экспериментируем и используем нестандартные подходы. Пишем прибыльную торговую систему. Простое объяснение.
preview
Нейросети — это просто (Часть 17): Понижение размерности

Нейросети — это просто (Часть 17): Понижение размерности

Мы продолжаем рассмотрение моделей искусственного интеллекта. И, в частности, алгоритмов обучения без учителя. Мы уже познакомились с одним из алгоритмов кластеризации. А в этой статье я хочу поделиться с Вами вариантом решения задач понижения размерности.
preview
Как прокачаться в машинном обучении (Machine Learning)

Как прокачаться в машинном обучении (Machine Learning)

Представляем вашему вниманию подборку материалов, которые будут полезны трейдеру для повышения своих знаний в алготрейдинге. Время простых алгоритмов уходит в прошлое, сейчас сложно добиться успехов без использования машинного обучения и нейронных сетей.
preview
Нейросети — это просто (Часть 16): Практическое использование кластеризации

Нейросети — это просто (Часть 16): Практическое использование кластеризации

В предыдущей статье мы построили класс для кластеризации данных. В этой статье я хочу с вами поделиться вариантами возможного использования полученных результатов для решения практических задач трейдинга.
preview
Машинное обучение и Data Science (Часть 01): Линейная регрессия

Машинное обучение и Data Science (Часть 01): Линейная регрессия

Пришло время нам, трейдерам, обучить наши системы и научиться самим принимать решения, основываясь на том, что показывают цифры. Не визуальным и не интуитивным путем, которым движется весь мир. Мы пойдем перпендикулярно общему направлению.
preview
Нейросети — это просто (Часть 15): Кластеризации данных средствами MQL5

Нейросети — это просто (Часть 15): Кластеризации данных средствами MQL5

Продолжаем рассмотрение метода кластеризации. В данной статье мы создадим новый класс CKmeans для реализации одного из наиболее распространённых методов кластеризации k-средних. По результатам тестирования модель смогла выделить около 500 паттернов.
preview
Нейросети — это просто (Часть 14): Кластеризация данных

Нейросети — это просто (Часть 14): Кластеризация данных

Должен признаться, что с момента публикации последней статьи прошло уже больше года. За столь длительное время можно многое переосмыслить, выработать новые подходы. И в новой статье я хотел бы немного отойти от используемого ранее метода обучения с учителем, и предложить немного окунуться в алгоритмы обучения без учителя. И, в частности, рассмотреть один из алгоритмов кластеризации — k-средних.
preview
Матрицы и векторы в MQL5

Матрицы и векторы в MQL5

Специальные типы данных matrix и vector позволяют писать код, приближенный к математической записи. Это избавляет от необходимости создавать вложенные циклы и помнить о правильной индексации массивов, которые участвуют в вычислении. Таким образом повышается надежность и скорость разработки сложных программ.
preview
Пишем глубокую нейронную сеть с нуля на языке MQL

Пишем глубокую нейронную сеть с нуля на языке MQL

Статья познакомит вас с глубокой нейронной сетью, написанной на MQL, и с различными функциями активации этой сети, такими как функция гиперболического тангенса для скрытых слоев и Softmax для выходного слоя. Мы будем изучать нейросеть постепенно, двигаясь от первого шага до последнего, и вместе создадим глубокую нейронную сеть.
preview
Многослойный перцептрон и алгоритм обратного распространения ошибки (Часть II): Реализация на Python и интеграция с MQL5

Многослойный перцептрон и алгоритм обратного распространения ошибки (Часть II): Реализация на Python и интеграция с MQL5

Уже доступен пакет Python для разработки интеграции с MQL, что открывает двери для многих возможностей, таких как изучение данных и создание и использование моделей машинного обучения. Эта встроенная интеграция MQL5 в Python открывает для нас много возможностей, которые позволяют построить от простой линейной регрессии до моделей глубокого обучения. Давайте разберемся, как установить и подготовить среду разработки и использовать некоторые библиотеки машинного обучения.
preview
Нейросети — это просто (Часть 13): Пакетная нормализация (Batch Normalization)

Нейросети — это просто (Часть 13): Пакетная нормализация (Batch Normalization)

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

Многослойный перцептрон и алгоритм обратного распространения ошибки

В последнее время, с ростом популярности этих двух методов появилось много библиотек на Matlab, R, Python, C ++ и т.д., которые получают на вход обучающий набор и автоматически создают соответствующую нейронную сеть для вашей задачи. Мы постараемся понять, как работает базовый тип нейронной сети — перцептрон с одним нейроном и многослойный перцептрон — замечательный алгоритм, который отвечает за обучение сети (градиентный спуск и обратное распространение). Эти сетевые модели будут основой для более сложных моделей, существующих на сегодняшний день.
preview
Нейросети — это просто (Часть 12): Dropout

Нейросети — это просто (Часть 12): Dropout

Продвигаясь дальше в изучении нейронных сетей, наверное, стоит немного уделить внимания методам повышения их сходимости при обучении. Существует несколько таких методов. В этой статье предлагаю рассмотреть один из них — Dropout.
preview
Машинное обучение в торговых системах на сетке и мартингейле. Есть ли рыба?

Машинное обучение в торговых системах на сетке и мартингейле. Есть ли рыба?

Данная статья познакомит читателя с техникой машинного обучения для торговли сеткой и мартингейлом. К моему удивлению, такой подход по каким-то причинам совершенно не затронут в глобальной сети. Прочитав статью, вы сможете создавать своих собственных ботов.
preview
Нейросети — это просто (Часть 11): Вариации на тему GPT

Нейросети — это просто (Часть 11): Вариации на тему GPT

Сегодня, наверное, одной из самых передовых языковых моделей нейросетей является GPT-3, которая в максимальном своем варианте содержит 175 млрд. параметров. Конечно, мы не будем создавать подобного монстра в домашних условиях. Но давайте посмотрим, какие архитектурные решения мы можем использовать в своей работе и какие это нам даст преимущества.
preview
Практическое применение нейросетей в трейдинге (Часть 2). Компьютерное зрение

Практическое применение нейросетей в трейдинге (Часть 2). Компьютерное зрение

Применение компьютерного зрения позволит обучать нейронные сети на визуальном представлении ценового графика и индикаторов. Данный метод позволит нам более свободно оперировать всем комплексом технических индикаторов, так как не требует их цифровой подачи в нейронную сеть.
preview
Нейросети — это просто (Часть 10): Multi-Head Attention (многоголовое внимание)

Нейросети — это просто (Часть 10): Multi-Head Attention (многоголовое внимание)

Ранее мы уже рассмотрели механизм само-внимания (self-attention) в нейронных сетях. В практике современных архитектур нейронных сетей используется несколько параллельных потоков self-attention для поиска различных зависимостей между элементами последовательности. Давайте рассмотрим реализацию такого подхода и оценим его влияние на общий результат работы сети.
preview
Нейросети — это просто (Часть 9): Документируем проделанную работу

Нейросети — это просто (Часть 9): Документируем проделанную работу

Мы уже проделали довольно большой путь, и код нашей библиотеке сильно разрастается. Становится сложно отслеживать все связи и зависимости. И конечно, перед продолжением развития проекта нам нужно задокументировать уже проделанную работу и актуализировать документацию на каждом последующем шаге. Правильно подготовленная документация поможет нам увидеть целостность нашей работы.
preview
Градиентный бустинг в задачах трансдуктивного и активного машинного обучения

Градиентный бустинг в задачах трансдуктивного и активного машинного обучения

В данной статье вы познакомитесь с методами активного машинного обучения на реальных данных, узнаете какие плюсы и минусы они имеют. Возможно, эти методы займут свое место в вашем арсенале моделей машинного обучения. Термин трансдукции был введен Владимиром Наумовичем Вапником, изобретателем машины опорных векторов или SVM (support vector machine).
preview
Нейросети — это просто (Часть 8): Механизмы внимания

Нейросети — это просто (Часть 8): Механизмы внимания

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

Продвинутый ресемплинг и выбор CatBoost моделей брутфорс методом

В данной статье описан один из возможных подходов к трансформации данных для улучшения обобщающей способности модели, а также рассмотрен перебор моделей CatBoost и выбор лучшей из них.
preview
Машинное обучение от Яндекс (CatBoost) без изучения Python и R

Машинное обучение от Яндекс (CatBoost) без изучения Python и R

В статье приведен код и описаны основные этапы процесса машинного обучения на конкретном примере. Для получения моделей не потребуется знание таких языков программирования, как Python или R, знание языка MQL5 будут востребованы неглубокие, впрочем, как и в наличии у автора этой статьи, поэтому смею надеяться, что данная статья послужит хорошим руководством для широкого круга заинтересованных лиц, желающих экспериментальным путем оценить возможности машинного обучения и внедрить их в свои разработки.
preview
Нейросети — это просто (Часть 7): Адаптивные методы оптимизации

Нейросети — это просто (Часть 7): Адаптивные методы оптимизации

В предыдущих статьях для обучения нейронной сети использовался метод стохастического градиентного спуска с применением единого коэффициента обучения для всех нейронов в сети. В данной статье предлагаю посмотреть в сторону адаптивных методов обучения, которые позволяют изменять скорость обучения каждого нейрона. Давайте посмотрим на плюсы и минусы такого подхода.
preview
Градиентный бустинг (CatBoost) в задачах построения торговых систем. Наивный подход

Градиентный бустинг (CatBoost) в задачах построения торговых систем. Наивный подход

Обучение классификатора CatBoost на языке Python и экспорт модели в mql5 формат, а также разбор параметров модели и кастомный тестер стратегий. Для подготовки данных и обучения модели используется язык программирования Python и библиотека MetaTrader5.
preview
Нейросети — это просто (Часть 6): Эксперименты с коэффициентом обучения нейронной сети

Нейросети — это просто (Часть 6): Эксперименты с коэффициентом обучения нейронной сети

Мы уже рассмотрели некоторые виды нейронных сетей и способы их реализации. Во всех случаях мы использовали метод градиентного спуска для обучения нейронных сетей, который предполагает выбор коэффициента обучения. В данной статье, я хочу на примерах показать важность правильного выбора и его влияние на обучение нейронной сети.
preview
Нейросети — это просто (Часть 5): Многопоточные вычисления в OpenCL

Нейросети — это просто (Часть 5): Многопоточные вычисления в OpenCL

Мы уже познакомились с некоторыми типами реализации нейронных сетей. Легко заметить, что для каждого нейрона сети повторяются те же самые операции. И тут возникает желание воспользоваться возможностями многопоточных вычислений современной техники для ускорения процесса обучения нейронной сети. Об одном из вариантов такой реализации пойдет речь в данной статье.
preview
Нейросети — это просто (Часть 4): Рекуррентные сети

Нейросети — это просто (Часть 4): Рекуррентные сети

Продолжаем наше погружение в мир нейронных сетей. И в этой статье я предлагаю поговорить о рекуррентных нейронных сетях. Данный тип нейронных сетей предлагается для использования с временными рядами, коими и являются ценовые графики в торговой платформе MetaTrader 5.
preview
Нейросети — это просто (Часть 3): Сверточные сети

Нейросети — это просто (Часть 3): Сверточные сети

Продолжая тему нейронных сетей, предлагаю рассмотреть сверточные нейронные сети. Данный тип нейронных сетей был разработан для поиска объектов на изображении. Рассмотрим, как он может нам помочь в работе на финансовых рынках.
preview
Нейросети — это просто (Часть 2): Обучение и тестирование сети

Нейросети — это просто (Часть 2): Обучение и тестирование сети

В данной статье мы продолжим изучение нейронных сетей, начатое в предыдущей статье и рассмотрим пример использования в советниках созданного нами класса CNet. Рассмотрены две модели нейронной сети, которые показали схожие результаты как по времени обучения, так и по точности предсказания.
preview
Практическое применение нейросетей в трейдинге. Переходим к практике

Практическое применение нейросетей в трейдинге. Переходим к практике

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