Разработка торговой системы на основе стакана цен (Часть I): индикатор
Стакан цен Depth of Market, несомненно, является очень важным элементом для выполнения быстрых сделок, особенно в алгоритмах высокочастотного трейдинга (HFT). В этой серии статей мы рассмотрим этот тип торговых событий, которые можно получить через брокера на многих торгуемых символах. Начнем с индикатора, в котором можно настроить цветовую палитру, положение и размер гистограммы, отображаемой непосредственно на графике. Мы также рассмотрим, как сгенерировать события BookEvent для тестирования индикатора в определенных условиях. Другие возможные темы для будущих статей - это хранение данных ценовых распределений и способы их использования в тестере стратегий.
Как опередить любой рынок (Часть IV): Индексы волатильности евро и золота CBOE
Мы проанализируем альтернативные данные, собранные Чикагской опционной биржей (Chicago Board of Options Exchange, CBOE), чтобы повысить точность наших глубоких нейронных сетей при прогнозировании символа XAUEUR.
Переходим на MQL5 Algo Forge (Часть 1): Создание основного репозитория
В процессе работы над проектами в MetaEditor разработчики сталкиваются с необходимостью управления версиями кода. Недавно начался переход на GIT и запуск MQL5 Algo Forge для версионного хранения кода и возможности совместной разработки. В статье рассматриваются способы эффективной работы с текущими инструментами.
От новичка до эксперта: Программирование японских свечей
В настоящей статье сделаем первый шаг в программировании на MQL5, даже для совсем новичков. Мы покажем вам, как преобразовать знакомые свечные паттерны в полнофункциональный пользовательский индикатор. Свечные паттерны ценны тем, что они отражают реальное движение цены и сигнализируют о сдвигах на рынке. Вместо ручного сканирования графиков — подхода, чреватого ошибками и неэффективностью, — мы обсудим, как автоматизировать этот процесс с помощью индикатора, идентифицирующего и помечающего паттерны для вас. Попутно рассмотрим такие ключевые понятия, как индексация, временные ряды, средний истинный диапазон (для обеспечения точности при различной волатильности рынка), а также разработку пользовательской библиотеки свечных паттернов для многократного использования в будущих проектах.
Разработка торгового советника с нуля (Часть 27): Навстречу будущему (II)
Давайте перейдем к более полноценной системе ордеров непосредственно на графике. В этой статье я вам покажу способ исправить систему ордеров или, скорее, как сделать её более интуитивно понятной.
Связь торговых роботов MetaTrader 5 с внешними брокерами через API и Python
В настоящей статье мы обсудим реализацию MQL5 в партнерстве с Python для выполнения связанных с брокером операций. Представьте, что у вас есть постоянно работающий советник (EA), размещенный на VPS и совершающий сделки от вашего имени. В какой-то момент способность советника управлять средствами становится первостепенной. Она включает в себя такие операции, как пополнение вашего торгового счета и инициирование вывода средств. В данном обсуждении мы прольем свет на преимущества и практическую реализацию этих функций, обеспечивающих плавную интеграцию управления средствами в вашу торговую стратегию. Следите за обновлениями!
Популяционные алгоритмы оптимизации: Алгоритмы искусственной микро-иммунной системы (Micro Artificial immune system, Micro-AIS)
Статья рассказывает о методе оптимизации, основанном на принципах функционирования иммунной системы организма — Micro Artificial Immune System (Micro-AIS) — модификацию AIS. Micro-AIS использует более простую модель иммунной системы и простые операции обработки иммунной информации. Статья также обсуждает преимущества и недостатки Micro-AIS по сравнению с обычным AIS.
Как реализовать автоматическую оптимизацию в советниках MQL5
Пошаговое руководство по автоматической оптимизации на MQL5 для советников. Мы рассмотрим надежную логику оптимизации, лучшие практики по выбору параметров, а также как реконструировать стратегии с помощью бэк-тестирования. Кроме того, будут рассмотрены методы более высокого уровня, такие как пошаговая форвард-оптимизация, которые улучшат ваш подход к трейдингу.
Применение Conditional LSTM и индикатора VAM в автоматической торговле
В настоящей статье рассматривается разработка советника (EA) для автоматической торговли, сочетающего в себе технический анализ с прогнозами с помощью глубокого обучения.
Переходим на MQL5 Algo Forge (Часть 4): Работа с версиями и выпуск релизов
Продолжим разработку проекта Simple Candles и Adwizard, описывая нюансы использования системы контроля версий и хранилища MQL5 Algo Forge.
Эластичная чистая регрессия с использованием покоординатного спуска в MQL5
В этой статье мы исследуем практическую реализацию эластичной чистой регрессии (elastic net regression), чтобы минимизировать переобучение и в то же время автоматически отделять полезные предикторы от тех, которые имеют небольшую прогностическую силу.
Торговый инструментарий MQL5 (Часть 2): Расширение и применение EX5-библиотеки для управления позициями
Узнайте, как импортировать и использовать EX5-библиотеки в вашем коде или проектах MQL5. В этой статье мы расширим ранее созданную EX5-библиотеку, добавив больше функций управления позициями и создав два советника. В первом примере будет использоваться технический индикатор Variable Index Dynamic Average для разработки советника по стратегии трейлинг-стопа, а во втором - торговая панель для мониторинга, открытия, закрытия и изменения позиций. Эти два примера продемонстрируют, как использовать обновленную EX5-библиотеку для управления позициями.
DoEasy. Элементы управления (Часть 11): WinForms-объекты — группы, WinForms-объект CheckedListBox
В статье рассмотрим группирование WinForms-объектов и создадим объект-список объектов CheckBox.
Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть II): Многомодальность
Во второй части статьи перейдем к практической реализации алгоритма BSO, проведем тесты на тестовых функциях и сравним эффективность BSO с другими методами оптимизации.
Постфактумный анализ торговли: подбираем TrailingStop и новые стопы в тестере стратегий
Продолжаем тему анализа совершённых сделок в тестере стратегий для улучшения качества торговли. Проверим, как использование различных трейлингов поможет изменить уже полученные результаты торговли.
Как интегрировать в советник концепции Smart Money (BOS) в сочетании с индикатором RSI
Концепция Smart Money (Break of Structure) в сочетании с индикатором RSI для принятия обоснованных решений в автоматической торговле на основе структуры рынка.
Алгоритм кометного следа (Comet Tail Algorithm, CTA)
В данной статье мы рассмотрим новый авторский алгоритм оптимизации CTA (Comet Tail Algorithm), который черпает вдохновение из уникальных космических объектов - комет и их впечатляющих хвостов, формирующихся при приближении к Солнцу. Данный алгоритм основан на концепции движения комет и их хвостов, и предназначен для поиска оптимальных решений в задачах оптимизации.
Разметка данных в анализе временных рядов (Часть 6):Применение и тестирование советника с помощью ONNX
В этой серии статей представлены несколько методов разметки временных рядов, которые могут создавать данные, соответствующие большинству моделей искусственного интеллекта (ИИ). Целевая разметка данных может сделать обученную модель ИИ более соответствующей пользовательским целям и задачам, повысить точность модели и даже помочь модели совершить качественный скачок!
Реализация механизма безубыточности в MQL5 (Часть 1): Базовый класс и режим безубытка по фиксированным пунктам
В данной статье рассматривается применение механизма безубыточности (breakeven) в автоматизированных стратегиях на языке MQL5. Начнем с простого объяснения, что такое режим безубытка, как он реализуется и каковы его возможные вариации. Далее эта функциональность интегрируется в советника Order Blocks, созданного нами в последней статье об управлении рисками. Для оценки эффективности проведем два бэктеста при определенных условиях: один с применением механизма безубыточности и другой — без.
Таблицы в парадигме MVC на MQL5: Таблица корреляции символов
В статье доработаем классы графической библиотеки, добавив в таблицу вертикальный заголовок, и на основе классов таблиц создадим индикатор, отображающий корреляцию символов, указанных в настройках.
DoEasy. Элементы управления (Часть 24): Вспомогательный WinForms-объект "Подсказка"
В статье переработаем логику указания базового и главного объекта для всех WinForms-объектов библиотеки, разработаем новый базовый объект "Подсказка" и несколько его производных классов для указания возможного направления перемещения разделительной линии.
DoEasy. Элементы управления (Часть 15): WinForms-объект TabControl — несколько рядов заголовков вкладок, методы работы с вкладками
В статье продолжим работу над WinForm-объектом TabControl — создадим класс объекта-поля вкладки, сделаем возможность расположения заголовков вкладок в несколько рядов и добавим методы для работы с вкладками объекта.
Функции Уолша в современном трейдинге
Эта статья рассматривает применение функций Уолша в трейдинге. Мы познакомимся с основными принципами использования этих функций для анализа финансовых рынков, прогнозирования цен и принятия торговых решений. Также мы обсудим преимущества и недостатки этих функций, и перспективы их применения в трейдинге и техническом анализе.
DoEasy. Элементы управления (Часть 10): WinForms-объекты — оживляем интерфейс
Настала пора заняться оживлением графического интерфейса — делать функционал для взаимодействия объектов с пользователем и другими объектами. И для того, чтобы более сложные объекты могли правильно работать, нам уже необходим функционал взаимодействия объектов друг с другом и с пользователем.
Разработка системы репликации (Часть 57): Анализируем тестовый сервис
И заключительный момент: хотя он и не включен в эту статью, я объясню код сервиса, который будет использоваться в следующей, поскольку мы будем использовать этот же код в качестве трамплина для того, что мы на самом деле разрабатываем. Так что, наберитесь терпения и ждите следующей статьи, ведь с каждым днем все становится еще интереснее.
DoEasy. Элементы управления (Часть 19): Прокрутка вкладок в элементе TabControl, события WinForms-объектов
В статье создадим функционал для прокрутки заголовков вкладок в элементе управления TabControl при помощи кнопок управления прокруткой. Функционал будет работать для расположения заголовков вкладок в одну строку с любой из сторон элемента управления.
DoEasy. Элементы управления (Часть 32): горизонтальный "ScrollBar", прокрутка колесиком мышки
В статье завершим разработку функционала объекта-горизонтальной полосы прокрутки. Сделаем возможность прокрутки содержимого контейнера перемещением ползунка полосы прокрутки и вращением колёсика мышки. Также внесём дополнения в библиотеку с учётом появившейся в терминале новой политики исполнения ордеров и новых кодов ошибок времени выполнения в MQL5.
От новичка до эксперта: Создание индикатора для определения зон ликвидности
Протяженность зон ликвидности и величина диапазона пробоя являются ключевыми переменными, существенно влияющими на вероятность повторного тестирования. В этом обсуждении мы описываем полный процесс разработки индикатора, который включает в себя эти коэффициенты.
DoEasy. Элементы управления (Часть 16): WinForms-объект TabControl — несколько рядов заголовков вкладок, режим растягивания заголовков под размеры контейнера
В статье продолжим разработку элемента управления TabControl, и реализуем расположение заголовков вкладок со всех четырёх сторон элемента для всех режимов задания размера заголовков: "Normal", "Fixed" и "Fill To Right".
Создание самооптимизирующихся советников на языках MQL5 и Python
В этой статье обсудим, как можно создать советник, способный самостоятельно выбирать и менять торговые стратегии в зависимости от преобладающих на рынке условий. Познакомимся с цепями Маркова и с их возможностями с точки зрения пользы для нас, алготрейдеров.
Помощник Connexus (Часть 5): HTTP-методы и коды состояния
В настоящей статье мы разберемся с методами HTTP и кодами состояния, двумя очень важными элементами взаимодействия между клиентом и сервером в Интернете. Понимание того, что каждый метод действительно дает возможность более точно делать запросы, информируя сервер о том, какое действие надо выполнить, и делая его более эффективным.
Алгоритм черной дыры — Black Hole Algorithm (BHA)
Алгоритм черной дыры (Black Hole Algorithm, BHA) использует принципы гравитации черных дыр для оптимизации решений. В статье мы рассмотрим, как BHA притягивает лучшие решения, избегая локальных экстремумов, и почему этот алгоритм стал мощным инструментом для решения сложных задач. Узнайте, как простые идеи могут привести к впечатляющим результатам в мире оптимизации.
Переосмысливаем классические стратегии (Часть 12): Стратегия пробоев на паре EURUSD
Присоединяйтесь к нам сегодня, поскольку мы ставим перед собой задачу разработать прибыльную торговую стратегию пробоев на MQL5. Мы выбрали пару EURUSD и попытались торговать на ценовых пробоях на часовом таймфрейме. Нашей системе было трудно отличить ложные пробои от начала истинных трендов. Мы снабдили нашу систему фильтрами, предназначенными для минимизации потерь и увеличения прибыли. В конце концов, мы успешно сделали нашу систему прибыльной и менее подверженной ложным пробоям.
Объединение стратегий фундаментального и технического анализа на языке MQL5 для начинающих
В этой статье обсудим, как эффективно интегрировать следование тренду и фундаментальные принципы в один советник для создания более надежной стратегии. Статья продемонстрирует, насколько просто любой желающий может приступить к созданию собственных торговых алгоритмов с помощью языка MQL5.
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 3): Создание автоматических ходов и тестовых скриптов на MQL5
В этой статье рассматривается реализация автоматических ходов в игре "Крестики-нолики" на языке Python, интегрированная с функциями MQL5 и модульными тестами. Цель - улучшить интерактивность игры и обеспечить надежность системы с помощью тестирования на MQL5. Изложение охватывает разработку игровой логики, интеграцию и практическое тестирование, а завершается созданием динамической игровой среды и надежной интегрированной системы.
DoEasy. Элементы управления (Часть 12): Базовый объект-список, WinForms-объекты ListBox и ButtonListBox
В статье создадим базовый объект списков WinForms-объектов и два новых объекта: ListBox и ButtonListBox.
Как опубликовать код в CodeBase: Практическое руководство
В статье рассмотрим на реальных примерах процесс публикации различных типов программ для терминала в Библиотеке исходных кодов на языке MQL5.
DoEasy. Элементы управления (Часть 23): дорабатываем WinForms-объекты TabControl и SplitContainer
В статье добавим новые события мышки относительно границ рабочих областей WinForms-объектов и доработаем некоторые недочёты в работе элементов управления TabControl и SplitContainer.
Алгоритм искусственного электрического поля — Artificial Electric Field Algorithm (AEFA)
Статья представляет алгоритм искусственного электрического поля (AEFA), вдохновленный законом Кулона об электростатической силе. Алгоритм моделирует электрические явления для решения сложных задач оптимизации, используя заряженные частицы и их взаимодействие. AEFA демонстрирует уникальные свойства в контексте других алгоритмов, связанных с законами природы.
Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)
Эта статья представляет уникальный эксперимент, цель которого - исследовать поведение популяционных алгоритмов оптимизации в контексте их способности эффективно покидать локальные минимумы при низком разнообразии в популяции и достигать глобальных максимумов. Работа в этом направлении позволит глубже понять, какие конкретные алгоритмы могут успешно продолжать поиск из координат, установленных пользователем в качестве отправной точки, и какие факторы влияют на их успешность в этом процессе.