Работа с матрицами и векторами в MQL5
Работа с матрицами и векторами в MQL5
Для решения математических задач в MQL5 были добавлены матрицы и векторы. Новые типы имеют встроенные методы для написания краткого и понятного кода, который близок к математической записи. Массивы — это хорошо, но матрицы во многих случаях лучше.
Индикатор CCI. Три шага трансформации
Индикатор CCI. Три шага трансформации
В этой статье мы попробуем внести дополнительные изменения в CCI. Эти изменения коснутся самой логики работы этого индикатора. Вплоть до того, что мы сможем увидеть этот индикатор в главном окне графика.
DoEasy. Элементы управления (Часть 19): Прокрутка вкладок в элементе TabControl, события WinForms-объектов
DoEasy. Элементы управления (Часть 19): Прокрутка вкладок в элементе TabControl, события WinForms-объектов
В статье создадим функционал для прокрутки заголовков вкладок в элементе управления TabControl при помощи кнопок управления прокруткой. Функционал будет работать для расположения заголовков вкладок в одну строку с любой из сторон элемента управления.
DoEasy. Элементы управления (Часть 18): Готовим функционал для прокрутки вкладок в TabControl
DoEasy. Элементы управления (Часть 18): Готовим функционал для прокрутки вкладок в TabControl
В статье разместим кнопки управления прокруткой заголовков в WinForms-объекте TabControl на своих местах в случае, если строка заголовков не умещается по размеру элемента управления, и сделаем смещение строки заголовков при щелчке по обрезанному заголовку вкладки.
DoEasy. Элементы управления (Часть 16): WinForms-объект TabControl — несколько рядов заголовков вкладок, режим растягивания заголовков под размеры контейнера
DoEasy. Элементы управления (Часть 16): WinForms-объект TabControl — несколько рядов заголовков вкладок, режим растягивания заголовков под размеры контейнера
В статье продолжим разработку элемента управления TabControl, и реализуем расположение заголовков вкладок со всех четырёх сторон элемента для всех режимов задания размера заголовков: "Normal", "Fixed" и "Fill To Right".
Разработка торгового советника с нуля (Часть 22): Новая система ордеров (V)
Разработка торгового советника с нуля (Часть 22): Новая система ордеров (V)
Сегодня мы продолжим разработку новой системы ордеров. Внедрить новую систему совсем непросто: мы часто сталкиваемся с проблемами, которые сильно усложняют процесс. Когда эти проблемы появляются, нам приходится останавливаться и заново анализировать направление, по которому мы движемся.
DoEasy. Элементы управления (Часть 10): WinForms-объекты — оживляем интерфейс
DoEasy. Элементы управления (Часть 10): WinForms-объекты — оживляем интерфейс
Настала пора заняться оживлением графического интерфейса — делать функционал для взаимодействия объектов с пользователем и другими объектами. И для того, чтобы более сложные объекты могли правильно работать, нам уже необходим функционал взаимодействия объектов друг с другом и с пользователем.
Модель движения цены и ее основные положения (Часть 2):  Уравнение эволюции вероятностного поля цены и возникновение наблюдаемого случайного блуждания
Модель движения цены и ее основные положения (Часть 2): Уравнение эволюции вероятностного поля цены и возникновение наблюдаемого случайного блуждания
Выведено уравнение эволюции вероятностного поля цены, найден критерий приближения ценового скачка, раскрыты суть ценовых значений на графиках котировок и механизм возникновения случайного блуждания этих значений.
Нейросети — это просто (Часть 20): Автоэнкодеры
Нейросети — это просто (Часть 20): Автоэнкодеры
Мы продолжаем изучение алгоритмов обучения без учителя. Возможно, у читателя может возникнуть вопрос об соответствии последних публикаций теме нейронных сетей. В новой статье мы возвращаемся к использованию нейронных сетей.
Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5
Нейросети — это просто (Часть 19): Ассоциативные правила средствами MQL5
Продолжаем тему поиска ассоциативных правил. В предыдущей статье мы рассмотрели теоретические аспекты данного типа задач. В этой статье я продемонстрирую реализацию метода FP-Growth средствами MQL5. А также мы протестируем нашу реализацию на реальных данных.
Нейросети — это просто (Часть 18): Ассоциативные правила
Нейросети — это просто (Часть 18): Ассоциативные правила
В продолжение данной серии статей предлагаю познакомиться ещё с одним типом задач из методов обучения без учителя — поиск ассоциативных правил. Данный тип задач впервые был применен в ритейле для анализа корзин покупателей. О возможностях использования подобных алгоритмов в рамках трейдинга мы и поговорим в этой статье.
Нейросети — это просто (Часть 10): Multi-Head Attention (многоголовое внимание)
Нейросети — это просто (Часть 10): Multi-Head Attention (многоголовое внимание)
Ранее мы уже рассмотрели механизм само-внимания (self-attention) в нейронных сетях. В практике современных архитектур нейронных сетей используется несколько параллельных потоков self-attention для поиска различных зависимостей между элементами последовательности. Давайте рассмотрим реализацию такого подхода и оценим его влияние на общий результат работы сети.
Нейросети — это просто (Часть 8): Механизмы внимания
Нейросети — это просто (Часть 8): Механизмы внимания
В предыдущих статьях мы уже протестировали различные варианты организации нейронных сетей. В том числе и сверточные сети, заимствованные из алгоритмов обработки изображений. В данной статье я предлагаю рассмотреть механизмы внимания, появление которых дало толчок в развитии языковых моделей.
Нейросети — это просто (Часть 7): Адаптивные методы оптимизации
Нейросети — это просто (Часть 7): Адаптивные методы оптимизации
В предыдущих статьях для обучения нейронной сети использовался метод стохастического градиентного спуска с применением единого коэффициента обучения для всех нейронов в сети. В данной статье предлагаю посмотреть в сторону адаптивных методов обучения, которые позволяют изменять скорость обучения каждого нейрона. Давайте посмотрим на плюсы и минусы такого подхода.
Нейросети — это просто (Часть 6): Эксперименты с коэффициентом обучения нейронной сети
Нейросети — это просто (Часть 6): Эксперименты с коэффициентом обучения нейронной сети
Мы уже рассмотрели некоторые виды нейронных сетей и способы их реализации. Во всех случаях мы использовали метод градиентного спуска для обучения нейронных сетей, который предполагает выбор коэффициента обучения. В данной статье, я хочу на примерах показать важность правильного выбора и его влияние на обучение нейронной сети.
Нейросети — это просто (Часть 5): Многопоточные вычисления в OpenCL
Нейросети — это просто (Часть 5): Многопоточные вычисления в OpenCL
Мы уже познакомились с некоторыми типами реализации нейронных сетей. Легко заметить, что для каждого нейрона сети повторяются те же самые операции. И тут возникает желание воспользоваться возможностями многопоточных вычислений современной техники для ускорения процесса обучения нейронной сети. Об одном из вариантов такой реализации пойдет речь в данной статье.
Нейросети — это просто (Часть 4): Рекуррентные сети
Нейросети — это просто (Часть 4): Рекуррентные сети
Продолжаем наше погружение в мир нейронных сетей. И в этой статье я предлагаю поговорить о рекуррентных нейронных сетях. Данный тип нейронных сетей предлагается для использования с временными рядами, коими и являются ценовые графики в торговой платформе MetaTrader 5.
Нейросети — это просто (Часть 3): Сверточные сети
Нейросети — это просто (Часть 3): Сверточные сети
Продолжая тему нейронных сетей, предлагаю рассмотреть сверточные нейронные сети. Данный тип нейронных сетей был разработан для поиска объектов на изображении. Рассмотрим, как он может нам помочь в работе на финансовых рынках.
Нейросети - это просто
Нейросети - это просто
Каждый раз, когда речь заходит об искусственном интеллекте, в голове всплывают какие-то фантастические образы и кажется, что это очень сложное и непостижимое. Но мы все чаще и чаще слышим об искусственном интеллекте в повседневной жизни. В новостных лентах все чаще пишут о каких-либо достижениях с использованием нейронных сетей. В данной статье хочу показать насколько просто каждый может создать свою нейронную сеть и использовать достижения искусственного интеллекта в трейдинге.
Нейросети — это просто (Часть 2): Обучение и тестирование сети
Нейросети — это просто (Часть 2): Обучение и тестирование сети
В данной статье мы продолжим изучение нейронных сетей, начатое в предыдущей статье и рассмотрим пример использования в советниках созданного нами класса CNet. Рассмотрены две модели нейронной сети, которые показали схожие результаты как по времени обучения, так и по точности предсказания.
Модель движения цены и ее основные положения (Часть 1): Простейший вариант  модели  и его  приложения
Модель движения цены и ее основные положения (Часть 1): Простейший вариант модели и его приложения
Представлены основы математически строгой теории движения цены и функционирования рынка. Строгой математической теории движения цены до настоящего момента еще не было создано, а имелся только ряд неподкрепленных ни статистикой, ни теорией предположений типа, что после таких-то паттернов цена движется так-то.
Как правильно выбирать советник в Маркете?
Как правильно выбирать советник в Маркете?
В данной статье рассмотрим моменты, на которые следует обращать внимание при покупке советника в первую очередь. А также поищем способы повышения прибыли и, что самое, главное, как потратить деньги с умом и еще заработать на этом. Кроме того, после прочтения вы поймете, что заработать можно даже на простых и бесплатных продуктах.
SQLite: нативная работа с базами данных на SQL в MQL5
SQLite: нативная работа с базами данных на SQL в MQL5
Разработка торговых стратегий связана с обработкой больших объемов данных. Теперь прямо в MQL5 вы можете работать с базами данных с помощью SQL-запросов на основе SQLite. Важным преимуществом данного движка является то, что вся база данных содержится в единственном файле, который находится на компьютере пользователя.
Практическое применение нейросетей в трейдинге. Python (Часть I)
Практическое применение нейросетей в трейдинге. Python (Часть I)
В данной статье мы поэтапно разберем вариант реализации торговой системы на основе программирования глубоких нейронных сетей на Python. Для этого мы используем библиотеку машинного обучения TensorFlow, разработанной компанией Google. А для описания нейронных сетей используем библиотеку Keras.
Практическое применение нейросетей в трейдинге. Переходим к практике
Практическое применение нейросетей в трейдинге. Переходим к практике
В статье даны описание и инструкция по практическому применению нейросетевых модулей на платформе Matlab. Также затронуты основные аспекты построения системы торговли с использованием НСМ. Для ознакомления с комплексом в рамках сжатого изложения для данной статьи мне пришлось его несколько модернизировать таким образом, чтобы в одной программе совместить несколько функций НСМ.
Практическое применение нейросетей в трейдинге (Часть 2). Компьютерное зрение
Практическое применение нейросетей в трейдинге (Часть 2). Компьютерное зрение
Применение компьютерного зрения позволит обучать нейронные сети на визуальном представлении ценового графика и индикаторов. Данный метод позволит нам более свободно оперировать всем комплексом технических индикаторов, так как не требует их цифровой подачи в нейронную сеть.
Параллельная оптимизация методом роя частиц (Particle Swarm Optimization)
Параллельная оптимизация методом роя частиц (Particle Swarm Optimization)
В статье описан способ быстрой оптимизиции методом роя частиц, представлена его реализация на MQL, готовая к применению как в однопоточном режиме внутри эксперта, так и в параллельном многопоточном режиме в качестве надстройки, выполняющейся на локальных агентах тестера.
Матрицы и векторы в MQL5
Матрицы и векторы в MQL5
Специальные типы данных matrix и vector позволяют писать код, приближенный к математической записи. Это избавляет от необходимости создавать вложенные циклы и помнить о правильной индексации массивов, которые участвуют в вычислении. Таким образом повышается надежность и скорость разработки сложных программ.
Математика в трейдинге: Коэффициенты Шарпа и Сортино
Математика в трейдинге: Коэффициенты Шарпа и Сортино
Доходность является самым очевидным показателем, который используют инвесторы и начинающие трейдеры для анализа эффективности торговли. Профессиональные трейдеры пользуются более надежными инструментами для анализа стратегии, среди них — коэффициенты Шарпа и Сортино.
Набор инструментов для ручной разметки графиков и торговли (Часть III). Оптимизация и новые инструменты
Набор инструментов для ручной разметки графиков и торговли (Часть III). Оптимизация и новые инструменты
Развитие темы рисования графических объектов на графиках с помощью сочетаниях клавиш. В библиотеку добавлены новые инструменты, в частности, прямая, которая идёт по произвольным вершинам, и набор прямоугольников, позволяющих оценить как уровень, так и время разворота. Также показана возможность оптимизации кода для улучшения быстродействия. Пример реализации переписан в виде индикатора, что даёт возможность устанавливать Shortcuts рядом с другими программами для торговли. Уровень владения кодом — чуть выше начинающего.
Набор инструментов для ручной разметки графиков и торговли (Часть II). Рисование разметки
Набор инструментов для ручной разметки графиков и торговли (Часть II). Рисование разметки
Статья продолжает цикл, в котором я показываю, как создавал удобную для меня библиотеку для ручной разметки графиков с помощью сочетаний клавиш. Разметка происходит прямыми линиями и их комбинациями. В этой части рассказано непосредственно о самом рисовании с помощью функций, описанных в первой части. Библиотеку можно подключить к любому эксперту или индикатору, существенно облегчив себе задачи разметки. Данное решение НЕ ИСПОЛЬЗУЕТ внешних dll, все команды реализованы с помощью встроенных средств языка MQL.