![Популяционные алгоритмы оптимизации: Бинарный генетический алгоритм (Binary Genetic Algorithm, BGA). Часть II](https://c.mql5.com/2/65/Population_optimization_algorithms__Binary_Genetic_Algorithm_dBGAf___Part_2_600x314.jpg)
Популяционные алгоритмы оптимизации: Бинарный генетический алгоритм (Binary Genetic Algorithm, BGA). Часть II
В этой статье мы рассмотрим бинарный генетический алгоритм (BGA), который моделирует естественные процессы, происходящие в генетическом материале у живых существ в природе.
![Разрабатываем мультивалютный советник (Часть 4): Отложенные виртуальные ордера и сохранение состояния](https://c.mql5.com/2/71/Developing_a_multi-currency_advisor_Part_4_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 4): Отложенные виртуальные ордера и сохранение состояния
Приступив к разработке мультивалютного советника мы уже достигли некоторых результатов и успели провести несколько итераций улучшения кода. Однако наш советник не мог работать с отложенными ордерами и возобновлять работу после перезапуска терминала. Давайте добавим эти возможности.
![Разработка MQTT-клиента для MetaTrader 5: методология TDD](https://c.mql5.com/2/56/mqtt_600x314.jpg)
Разработка MQTT-клиента для MetaTrader 5: методология TDD
Статья представляет собой первую попытку разработать нативный MQTT-клиент для MQL5. MQTT - это протокол обмена данными по принципу "издатель - подписчик". Он легкий, открытый, простой и разработан так, чтобы его было легко внедрить. Это позволяет применять его во многих ситуациях.
![Использование алгоритмов оптимизации для настройки параметров советника "на лету"](https://c.mql5.com/2/69/Using_optimization_algorithms_to_configure_EA_parameters_on_the_fly_600x314.jpg)
Использование алгоритмов оптимизации для настройки параметров советника "на лету"
В статье рассматриваются практические аспекты использования алгоритмов оптимизации для поиска наилучших параметров советников "на лету", виртуализация торговых операций и логики советника. Данная статья может быть использована как своеобразная инструкция для внедрения алгоритмов оптимизации в торгового советника.
![Освоение ONNX: Переломный момент для MQL5-трейдеров](https://c.mql5.com/2/59/Mastering_ONNX_up_600x314__1.jpg)
Освоение ONNX: Переломный момент для MQL5-трейдеров
Погрузитесь в мир ONNX - мощного открытого формата для обмена моделями машинного обучения. Узнайте, как использование ONNX может произвести революцию в алгоритмической торговле на MQL5, позволяя трейдерам беспрепятственно интегрировать передовые модели искусственного интеллекта и поднять свои стратегии на новый уровень. Раскройте секреты кросс-платформенной совместимости и узнайте, как раскрыть весь потенциал ONNX в своей торговле на MQL5. Улучшите свою торговлю с помощью этого подробного руководства по ONNX.
![Разрабатываем мультивалютный советник (Часть 9): Сбор результатов оптимизации одиночных экземпляров торговой стратегии](https://c.mql5.com/2/76/Developing_a_multi-currency_advisor_sPart_9z_SQL__600x314.jpg)
Разрабатываем мультивалютный советник (Часть 9): Сбор результатов оптимизации одиночных экземпляров торговой стратегии
Наметим основные этапы по разработке нашего советника. Одним из первых будет проведение оптимизации одиночного экземпляра разработанной торговой стратегии. Попробуем собрать в одном месте всю необходимую информацию о проходах тестера при оптимизации.
![Разрабатываем мультивалютный советник (Часть 7): Подбор группы с учётом форвард-периода](https://c.mql5.com/2/74/Developing_a_multi-currency_advisor_yPart_7c_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 7): Подбор группы с учётом форвард-периода
Подбор группы экземпляров торговых стратегий с целью улучшения результатов при их совместной работы мы прежде оценивали только на том же временном периоде, на котором проводилась оптимизация отдельных экземпляров. Давайте посмотрим, что получится на форвард-периоде.
![Разработка робота на Python и MQL5 (Часть 2): Выбор модели, создание и обучение, кастомный тестер Python](https://c.mql5.com/2/79/Robot_development_in_Python_and_MQL5____Part_2__600x314.jpg)
Разработка робота на Python и MQL5 (Часть 2): Выбор модели, создание и обучение, кастомный тестер Python
Продолжаем цикл статей по созданию торгового робота на Python и MQL5. Сегодня решим задачу выбора и обучения модели, ее тестирования, внедрения кросс-валидации, поиска по сетке, а также задачу ансамблирования моделей.
![Роль качества генератора случайных чисел в эффективности алгоритмов оптимизации](https://c.mql5.com/2/73/The_role_of_the_quality_of_the_random_number_generator_600x314.jpg)
Роль качества генератора случайных чисел в эффективности алгоритмов оптимизации
В этой статье мы рассмотрим генератор случайных чисел Mersenne Twister и сравним со стандартным в MQL5. Узнаем влияние качества случайных чисел генераторов на результаты алгоритмов оптимизации.
![Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть I): Кластеризация](https://c.mql5.com/2/75/Brain_Storm_Optimization_2Part_Ip_600x314.jpg)
Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть I): Кластеризация
В данной статье мы рассмотрим инновационный метод оптимизации, названный BSO (Brain Storm Optimization), который вдохновлен природным явлением - "мозговым штурмом". Мы также обсудим новый подход к решению многомодальных задач оптимизации, который использует метод BSO и позволяет находить несколько оптимальных решений без необходимости заранее определять количество подпопуляций. В статье мы также рассмотрим методы кластеризации K-Means и K-Means++.
![Сделайте торговые графики лучше с интерактивным графическим интерфейсом на основе MQL5 (Часть II): Перемещаемый интерфейс (II)](https://c.mql5.com/2/56/Revolutionize_Your_Trading_Charts_Part_2_600x314.jpg)
Сделайте торговые графики лучше с интерактивным графическим интерфейсом на основе MQL5 (Часть II): Перемещаемый интерфейс (II)
Раскройте потенциал динамического представления данных в своих торговых стратегиях и утилитах с помощью нашего подробного руководства по созданию перемещаемых графических интерфейсов в MQL5. Погрузитесь в фундаментальные принципы объектно-ориентированного программирования и узнайте, как легко и эффективно разрабатывать и использовать один или несколько перемещаемых графических интерфейсов на одном графике.
![Как подключить MetaTrader 5 к PostgreSQL](https://c.mql5.com/2/53/How_to_connect_MetaTrader_5_to_PostgreSQL_600x314.jpg)
Как подключить MetaTrader 5 к PostgreSQL
В статье описываются четыре метода подключения кода MQL5 к базе данных Postgres и предоставляется пошаговое руководство по настройке среды разработки для одного из них, REST API, с использованием подсистемы Windows для Linux (WSL). Показано демонстрационное приложение для API с соответствующим кодом MQL5 для вставки данных и запросов к соответствующим таблицам, а также демонстрационный советник для использования этих данных.
![Работа с ONNX-моделями в форматах float16 и float8](https://c.mql5.com/2/71/onnx-float_600x314.jpg)
Работа с ONNX-моделями в форматах float16 и float8
Форматы данных, используемые для представления моделей машинного обучения, играют ключевую роль в их эффективности. В последние годы появилось несколько новых типов данных, разработанных специально для работы с моделями глубокого обучения. В данной статье мы обратим внимание на два новых формата данных, которые стали широко применяться в современных моделях.
![Разработка торгового советника с нуля (Часть 16): Доступ к данным в Интернете (II)](https://c.mql5.com/2/49/Developing_a_trading_Expert_Advisor_from_scratch_007_600x314.jpg)
Разработка торгового советника с нуля (Часть 16): Доступ к данным в Интернете (II)
Знание того, как вводить данные из Web в советник, не так очевидно, вернее, не так просто, чтобы это можно было сделать без понимания всех возможностей, которые есть в MetaTrader 5.
![Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 5)](https://c.mql5.com/2/64/Developing_an_MQTT_client_for_Metatrader_5___Part_5_600x314.jpg)
Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 5)
Статья является пятой частью серии, описывающей этапы разработки нативного MQL5-клиента для протокола MQTT 5.0. В этой части мы опишем структуру пакетов PUBLISH - как мы устанавливаем их флаги публикации (Publish Flags), кодируем строки названий тем и устанавливаем идентификаторы пакетов, когда это необходимо.
![Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 2): Функции MQL5 для HTTP-взаимодействия с REST API игры "крестики-нолики"](https://c.mql5.com/2/61/DALLwE_2023-11-27_16.08.45_-_A_minimalistic_illustration_showing_the_concept_of_system_integration_u.jpg)
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 2): Функции MQL5 для HTTP-взаимодействия с REST API игры "крестики-нолики"
В этой статье расскажем о том, как MQL5 может взаимодействовать с Python и FastAPI, используя HTTP-вызовы в MQL5 для взаимодействия с игрой "крестики-нолики" на Python. В статье рассматривается создание API с помощью FastAPI для этой интеграции и приводится тестовый скрипт на MQL5, подчеркивающий универсальность MQL5, простоту Python и эффективность FastAPI в соединении различных технологий для создания инновационных решений.
![Разрабатываем мультивалютный советник (Часть 11): Начало автоматизации процесса оптимизации](https://c.mql5.com/2/78/Developing_a_multi-currency_advisor_3Part_11u_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 11): Начало автоматизации процесса оптимизации
Для получения хорошего советника нам надо подобрать для него множество хороших наборов параметров экземпляров торговых стратегий. Это можно делать вручную, запуская оптимизацию на разных символах, и затем отбирая лучшие результаты. Но лучше поручить эту работу программе и заняться более продуктивной деятельностью.
![Разрабатываем мультивалютный советник (Часть 12): Риск-менеджер как для проп-трейдинговых компаний](https://c.mql5.com/2/79/Developing_a_multi-currency_advisor_Part_12_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 12): Риск-менеджер как для проп-трейдинговых компаний
В разрабатываемом советнике у нас уже заложен определённый механизм контроля просадки. Но он имеет вероятностную природу, так как основывается на результатах тестирования на исторических ценовых данных. Поэтому просадка, хотя и с небольшой вероятностью, может иногда превышать максимальные ожидаемые значения. Попробуем добавить механизм, обеспечивающий гарантированное соблюдение заданного уровня просадки.
![Реализация расширенного теста Дики-Фуллера в MQL5](https://c.mql5.com/2/64/Implementation_of_the_Augmented_Dickey_Fuller_test_in_MQL5_600x314.jpg)
Реализация расширенного теста Дики-Фуллера в MQL5
В статье показаны реализация расширенного теста Дики-Фуллера и его применение для проведения коинтеграционных тестов с использованием метода Энгла-Грейнджера.
![Популяционные алгоритмы оптимизации: Алгоритм поиска системой зарядов (Charged System Search, CSS)](https://c.mql5.com/2/59/Charged_System_Search_CSS___white_600x314.jpg)
Популяционные алгоритмы оптимизации: Алгоритм поиска системой зарядов (Charged System Search, CSS)
В этой статье рассмотрим ещё один алгоритм оптимизации, инспирированный неживой природой - алгоритм поиска системой зарядов (CSS). Цель этой статьи - представить новый алгоритм оптимизации, основанный на принципах физики и механики.
![Алгоритмическая торговля с MetaTrader 5 и R для начинающих](https://c.mql5.com/2/64/Algorithmic_Trading_With_MetaTrader_5_And_R_For_Beginners_600x314.jpg)
Алгоритмическая торговля с MetaTrader 5 и R для начинающих
В статье мы объединим финансовый анализ с алгоритмической торговлей, а также посмотрим, как можно подружить R и MetaTrader 5. Эта статья — руководство по объединению аналитической гибкости R с огромными торговыми возможностями MetaTrader 5.
![Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть II): Многомодальность](https://c.mql5.com/2/75/Brain_Storm_Optimization_7Part_IIa_600x314.jpg)
Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть II): Многомодальность
Во второй части статьи перейдем к практической реализации алгоритма BSO, проведем тесты на тестовых функциях и сравним эффективность BSO с другими методами оптимизации.
![Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 1): Как использовать RestAPI в MQL5](https://c.mql5.com/2/59/REST_600x314.jpg)
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 1): Как использовать RestAPI в MQL5
В этой статье мы расскажем о важности интерфейсов программирования API для взаимодействия между различными приложениями и программными системами. В ней подчеркивается роль API в упрощении взаимодействия между приложениями, позволяя им эффективно обмениваться данными и функциональными возможностями.
![Теория категорий в MQL5 (Часть 7): Мульти-, относительные и индексированные домены](https://c.mql5.com/2/54/Category-Theory-p7_600x314.jpg)
Теория категорий в MQL5 (Часть 7): Мульти-, относительные и индексированные домены
Теория категорий представляет собой разнообразный и расширяющийся раздел математики, который лишь недавно начал освещаться в MQL5-сообществе. Эта серия статей призвана рассмотреть некоторые из ее концепций для создания открытой библиотеки и дальнейшему использованию этого замечательного раздела в создании торговых стратегий.
![Популяционные алгоритмы оптимизации: Алгоритм оптимизации китов (Whale Optimization Algorithm, WOA)](https://c.mql5.com/2/73/Whale_Optimization_Algorithm_600x314.jpg)
Популяционные алгоритмы оптимизации: Алгоритм оптимизации китов (Whale Optimization Algorithm, WOA)
Алгоритм оптимизации китов (WOA) - это метаэвристический алгоритм, вдохновленный поведением и охотничьими стратегиями горбатых китов. Основная идея WOA заключается в имитации так называемого "пузырькового сетевого" метода кормления, при котором киты создают пузыри вокруг добычи, чтобы затем нападать на нее в спиральном движении.
![Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен](https://c.mql5.com/2/58/implementation_regression_model_600x314.jpg)
Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен
В данной статье описывается реализация регрессионной модели на основе дерева решений для прогнозирования цен финансовых активов. Мы уже провели подготовку данных, обучение и оценку модели, а также ее корректировку и оптимизацию. Однако важно отметить, что данная модель является лишь исследованием и не должна использоваться при реальной торговле.
![Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 4)](https://c.mql5.com/2/59/mechanism_in_MQTT_600x314__1.jpg)
Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 4)
Статья является четвертой частью серии, описывающей этапы разработки нативного MQL5-клиента для протокола MQTT. В этой части мы рассматриваем свойства MQTT v5.0, их семантику, то, как мы читаем некоторые из них, а также приводим краткий пример того, как свойства можно использовать для расширения протокола.
![Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 3): Создание автоматических ходов и тестовых скриптов на MQL5](https://c.mql5.com/2/61/RestAPI_Parte_3_-_Criando_jogadas_automyticas_e_Scripts_de_Teste_em_MQL5_600x314.jpg)
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 3): Создание автоматических ходов и тестовых скриптов на MQL5
В этой статье рассматривается реализация автоматических ходов в игре "Крестики-нолики" на языке Python, интегрированная с функциями MQL5 и модульными тестами. Цель - улучшить интерактивность игры и обеспечить надежность системы с помощью тестирования на MQL5. Изложение охватывает разработку игровой логики, интеграцию и практическое тестирование, а завершается созданием динамической игровой среды и надежной интегрированной системы.
![Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы](https://c.mql5.com/2/80/Developing_a_multi-currency_advisor_Part_13_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы
Первый этап автоматизированного процесса оптимизации у нас уже реализован. Для разных символов и таймфреймов мы проводим оптимизацию по нескольким критериям и сохраняем информацию о результатах каждого прохода в базе данных. Теперь займёмся отбором лучших групп наборов параметров из найденных на первом этапе.
![Многослойный перцептрон и алгоритм обратного распространения ошибки (Часть 3): Интеграция с тестером стратегии - Обзор (I)](https://c.mql5.com/2/51/Perceptron_Multicamadas_e_o_Algoritmo_Backpropagation_600x314.jpg)
Многослойный перцептрон и алгоритм обратного распространения ошибки (Часть 3): Интеграция с тестером стратегии - Обзор (I)
Многослойный перцептрон - это эволюция простого перцептрона, способного решать нелинейно разделяемые задачи. Вместе с алгоритмом обратного распространения можно эффективно обучить данную нейронную сеть. В третьей части серии статей о многослойном перцептроне и обратном распространении мы посмотрим, как интегрировать эту технику в тестер стратегий. Эта интеграция позволит использовать комплексный анализ данных и принимать лучшие решения для оптимизации торговых стратегий. В данном обзоре мы обсудим преимущества и проблемы применения этой методики.
![Разработка торгового робота на Python (Часть 3): Реализация торгового алгоритма на основе модели](https://c.mql5.com/2/82/Development_of_a_trading_robot_in_Python_Part_3_600x314.jpg)
Разработка торгового робота на Python (Часть 3): Реализация торгового алгоритма на основе модели
Продолжаем цикл статей по созданию торгового робота на Python и MQL5. Сегодня решим задачу создания торгового алгоритма на Python.
![Теория категорий в MQL5 (Часть 5): Эквалайзеры](https://c.mql5.com/2/53/Category-Theory-p5_600x314.jpg)
Теория категорий в MQL5 (Часть 5): Эквалайзеры
Теория категорий представляет собой разнообразный и расширяющийся раздел математики, который лишь недавно начал освещаться в MQL5-сообществе. Эта серия статей призвана рассмотреть некоторые из ее концепций для создания открытой библиотеки и дальнейшему использованию этого замечательного раздела в создании торговых стратегий.
![Теория категорий в MQL5 (Часть 3)](https://c.mql5.com/2/52/Category-Theory-part-3_600x314.jpg)
Теория категорий в MQL5 (Часть 3)
Теория категорий представляет собой разнообразный и расширяющийся раздел математики, который пока относительно не освещен в MQL5-сообществе. Эта серия статей призвана осветить некоторые из ее концепций для создания открытой библиотеки и дальнейшему использованию этого замечательного раздела в создании торговых стратегий.
![Разработка системы репликации - Моделирование рынка (Часть 02): Первые эксперименты (II)](https://c.mql5.com/2/52/replay-p2_600x314.jpg)
Разработка системы репликации - Моделирование рынка (Часть 02): Первые эксперименты (II)
В этот раз попробуем другой подход для достижения цели в 1 минуту. Однако эта задача не так проста, как можно подумать.
![Теория категорий в MQL5 (Часть 10): Моноидные группы](https://c.mql5.com/2/55/Category_Theory_Part_10_600x314.jpg)
Теория категорий в MQL5 (Часть 10): Моноидные группы
Статья продолжает серию о реализации теории категорий в MQL5. Здесь мы рассматриваем группы моноидов как средство, нормализующее множества моноидов и делающее их более сопоставимыми в более широком диапазоне множеств моноидов и типов данных.
![Теория категорий в MQL5 (Часть 14): Функторы с линейным порядком](https://c.mql5.com/2/57/Category-Theory-p14_600x314__1.jpg)
Теория категорий в MQL5 (Часть 14): Функторы с линейным порядком
Эта статья из серии статей о реализации теории категорий в MQL5 посвящена функторам. Мы исследуем, как линейный порядок может быть отображен на множестве благодаря функторам при рассмотрении двух множеств данных, между которыми на первый взгляд отсутствует всякая связь.
![Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)](https://c.mql5.com/2/71/Population_optimization_algorithms_Resistance_to_getting_stuck_in_local_extrema-transformed_600x314.jpg)
Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)
Эта статья представляет уникальный эксперимент, цель которого - исследовать поведение популяционных алгоритмов оптимизации в контексте их способности эффективно покидать локальные минимумы при низком разнообразии в популяции и достигать глобальных максимумов. Работа в этом направлении позволит глубже понять, какие конкретные алгоритмы могут успешно продолжать поиск из координат, установленных пользователем в качестве отправной точки, и какие факторы влияют на их успешность в этом процессе.
![Популяционные алгоритмы оптимизации: Эволюция социальных групп (Evolution of Social Groups, ESG)](https://c.mql5.com/2/68/Population_optimization_algorithms_Evolution_of_Social_Groups_dESG4_600x314.jpg)
Популяционные алгоритмы оптимизации: Эволюция социальных групп (Evolution of Social Groups, ESG)
В статье рассмотрим принцип построения многопопуляционных алгоритмов и в качестве примера такого вида алгоритмов разберём Эволюцию социальных групп (ESG), новый авторский алгоритм. Мы проанализируем основные концепции, механизмы взаимодействия популяций и преимущества этого алгоритма, а также рассмотрим его производительность в задачах оптимизации.
![Разрабатываем мультивалютный советник (Часть 8): Проводим нагрузочное тестирование и обрабатываем новый бар](https://c.mql5.com/2/75/Developing_a_multi-currency_advisor_pPart_8q_Conducting_load_testing_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 8): Проводим нагрузочное тестирование и обрабатываем новый бар
По мере продвижения мы использовали в одном советнике всё больше и больше одновременно работающих экземпляров торговых стратегий. Попробуем выяснить до какого количества экземпляров мы можем дойти прежде, чем столкнёмся ограничениями ресурсов.
![Понимание и эффективное использование OpenCL API путем воссоздания встроенной поддержки в виде DLL в Linux (Часть 2): Реализация OpenCL Simple DLL](https://c.mql5.com/2/53/Recreating-built-in-OpenCL-p3_600x314.jpg)
Понимание и эффективное использование OpenCL API путем воссоздания встроенной поддержки в виде DLL в Linux (Часть 2): Реализация OpenCL Simple DLL
В продолжение первой части создадим простую DLL и протестируем ее с помощью MetaTrader 5. Это хорошо подготовит нас к разработке полноценной поддержки OpenCL в виде DLL в следующей части.