![Алгоритм адаптивного социального поведения — Adaptive Social Behavior Optimization (ASBO): Метод Швефеля, Бокса-Мюллера](https://c.mql5.com/2/84/Adaptive_Social_Behavior_Optimization_600x314.jpg)
Алгоритм адаптивного социального поведения — Adaptive Social Behavior Optimization (ASBO): Метод Швефеля, Бокса-Мюллера
Эта статья представляет увлекательное погружение в мир социального поведения живых организмов и его влияние на создание новой математической модели — ASBO (Adaptive Social Behavior Optimization). Мы рассмотрим, как принципы лидерства, соседства и сотрудничества, наблюдаемые в обществах живых существ, вдохновляют разработку инновационных алгоритмов оптимизации.
![Модифицированный советник Grid-Hedge в MQL5 (Часть III): Оптимизация простой хеджирующей стратегии (I)](https://c.mql5.com/2/72/Modified_Grid-Hedge_EA_in_MQL5_Part_III_600x314.jpg)
Модифицированный советник Grid-Hedge в MQL5 (Часть III): Оптимизация простой хеджирующей стратегии (I)
В третьей части мы вернемся к советникам Simple Hedge и Simple Grid, разработанным ранее. Теперь мы займемся совершенствованием советника Simple Hedge с помощью математического анализа и подхода грубой силы (brute force) с целью оптимального использования стратегии. Эта статья углубляется в математическую оптимизацию стратегии, закладывая основу для будущего исследования оптимизации на основе кода в последующих частях.
![Разработка торгового робота на Python (Часть 3): Реализация торгового алгоритма на основе модели](https://c.mql5.com/2/82/Development_of_a_trading_robot_in_Python_Part_3_600x314.jpg)
Разработка торгового робота на Python (Часть 3): Реализация торгового алгоритма на основе модели
Продолжаем цикл статей по созданию торгового робота на Python и MQL5. Сегодня решим задачу создания торгового алгоритма на Python.
![Алгоритм поиска в окрестности — Across Neighbourhood Search (ANS)](https://c.mql5.com/2/82/Across_Neighbourhood_Search___2_600x314.jpg)
Алгоритм поиска в окрестности — Across Neighbourhood Search (ANS)
Статья раскрывает потенциал алгоритма ANS, как важного шага в развитии гибких и интеллектуальных методов оптимизации, способных учитывать специфику задачи и динамику окружающей среды в пространстве поиска.
![Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 4): Организация функций в классах в MQL5](https://c.mql5.com/2/64/Desenvolvendo_um_agente_de_Aprendizado_por_Reforso_em_MQL5_com_Integraddo_RestAPI_gParte_4e_Organiza.jpg)
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 4): Организация функций в классах в MQL5
В данной статье рассматривается переход от процедурного написания кода к объектно-ориентированному программированию (ООП) в MQL5 с упором на интеграцию с REST API. Сегодня мы обсуждаем организацию функций HTTP-запросов (GET и POST) в классы и подчеркнем такие преимущества, как инкапсуляция, модульность и простота обслуживания. Подробно рассмотрим рефакторинг кода и покажем замену изолированных функций методами класса. Статья содержит практические примеры и тесты.
![Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы](https://c.mql5.com/2/80/Developing_a_multi-currency_advisor_Part_13_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы
Первый этап автоматизированного процесса оптимизации у нас уже реализован. Для разных символов и таймфреймов мы проводим оптимизацию по нескольким критериям и сохраняем информацию о результатах каждого прохода в базе данных. Теперь займёмся отбором лучших групп наборов параметров из найденных на первом этапе.
![Разработка робота на 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. Сегодня решим задачу выбора и обучения модели, ее тестирования, внедрения кросс-валидации, поиска по сетке, а также задачу ансамблирования моделей.
![Разрабатываем мультивалютный советник (Часть 12): Риск-менеджер как для проп-трейдинговых компаний](https://c.mql5.com/2/79/Developing_a_multi-currency_advisor_Part_12_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 12): Риск-менеджер как для проп-трейдинговых компаний
В разрабатываемом советнике у нас уже заложен определённый механизм контроля просадки. Но он имеет вероятностную природу, так как основывается на результатах тестирования на исторических ценовых данных. Поэтому просадка, хотя и с небольшой вероятностью, может иногда превышать максимальные ожидаемые значения. Попробуем добавить механизм, обеспечивающий гарантированное соблюдение заданного уровня просадки.
![Разрабатываем мультивалютный советник (Часть 11): Начало автоматизации процесса оптимизации](https://c.mql5.com/2/78/Developing_a_multi-currency_advisor_3Part_11u_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 11): Начало автоматизации процесса оптимизации
Для получения хорошего советника нам надо подобрать для него множество хороших наборов параметров экземпляров торговых стратегий. Это можно делать вручную, запуская оптимизацию на разных символах, и затем отбирая лучшие результаты. Но лучше поручить эту работу программе и заняться более продуктивной деятельностью.
![Алгоритм кометного следа (Comet Tail Algorithm, CTA)](https://c.mql5.com/2/78/Comet_Tail_Algorithm_600x314.jpg)
Алгоритм кометного следа (Comet Tail Algorithm, CTA)
В данной статье мы рассмотрим новый авторский алгоритм оптимизации CTA (Comet Tail Algorithm), который черпает вдохновение из уникальных космических объектов - комет и их впечатляющих хвостов, формирующихся при приближении к Солнцу. Данный алгоритм основан на концепции движения комет и их хвостов, и предназначен для поиска оптимальных решений в задачах оптимизации.
![Разрабатываем мультивалютный советник (Часть 10): Создание объектов из строки](https://c.mql5.com/2/77/Developing_a_multi-currency_advisor_cPart_10i_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 10): Создание объектов из строки
План разработки советника предусматривает несколько этапов с сохранением промежуточных результатов в базе данных. Заново достать их оттуда можно только в виде строк или чисел, а не объектов. Поэтому нам нужен способ воссоздания в советнике нужных объектов из строк, прочитанных из базы данных.
![Алгоритмическая торговля с 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.
![Разработка 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 (Часть 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. Изложение охватывает разработку игровой логики, интеграцию и практическое тестирование, а завершается созданием динамической игровой среды и надежной интегрированной системы.
![Как разработать агент обучения с подкреплением на 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 в соединении различных технологий для создания инновационных решений.
![Реализация расширенного теста Дики-Фуллера в MQL5](https://c.mql5.com/2/64/Implementation_of_the_Augmented_Dickey_Fuller_test_in_MQL5_600x314.jpg)
Реализация расширенного теста Дики-Фуллера в MQL5
В статье показаны реализация расширенного теста Дики-Фуллера и его применение для проведения коинтеграционных тестов с использованием метода Энгла-Грейнджера.
![Разрабатываем мультивалютный советник (Часть 9): Сбор результатов оптимизации одиночных экземпляров торговой стратегии](https://c.mql5.com/2/76/Developing_a_multi-currency_advisor_sPart_9z_SQL__600x314.jpg)
Разрабатываем мультивалютный советник (Часть 9): Сбор результатов оптимизации одиночных экземпляров торговой стратегии
Наметим основные этапы по разработке нашего советника. Одним из первых будет проведение оптимизации одиночного экземпляра разработанной торговой стратегии. Попробуем собрать в одном месте всю необходимую информацию о проходах тестера при оптимизации.
![Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 1): Как использовать RestAPI в MQL5](https://c.mql5.com/2/59/REST_600x314.jpg)
Как разработать агент обучения с подкреплением на MQL5 с интеграцией RestAPI (Часть 1): Как использовать RestAPI в MQL5
В этой статье мы расскажем о важности интерфейсов программирования API для взаимодействия между различными приложениями и программными системами. В ней подчеркивается роль API в упрощении взаимодействия между приложениями, позволяя им эффективно обмениваться данными и функциональными возможностями.
![Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть II): Многомодальность](https://c.mql5.com/2/75/Brain_Storm_Optimization_7Part_IIa_600x314.jpg)
Алгоритм оптимизации на основе мозгового штурма — Brain Storm Optimization (Часть II): Многомодальность
Во второй части статьи перейдем к практической реализации алгоритма BSO, проведем тесты на тестовых функциях и сравним эффективность BSO с другими методами оптимизации.
![Разрабатываем мультивалютный советник (Часть 8): Проводим нагрузочное тестирование и обрабатываем новый бар](https://c.mql5.com/2/75/Developing_a_multi-currency_advisor_pPart_8q_Conducting_load_testing_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 8): Проводим нагрузочное тестирование и обрабатываем новый бар
По мере продвижения мы использовали в одном советнике всё больше и больше одновременно работающих экземпляров торговых стратегий. Попробуем выяснить до какого количества экземпляров мы можем дойти прежде, чем столкнёмся ограничениями ресурсов.
![Алгоритм оптимизации на основе мозгового штурма — 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++.
![Разрабатываем мультивалютный советник (Часть 7): Подбор группы с учётом форвард-периода](https://c.mql5.com/2/74/Developing_a_multi-currency_advisor_yPart_7c_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 7): Подбор группы с учётом форвард-периода
Подбор группы экземпляров торговых стратегий с целью улучшения результатов при их совместной работы мы прежде оценивали только на том же временном периоде, на котором проводилась оптимизация отдельных экземпляров. Давайте посмотрим, что получится на форвард-периоде.
![Популяционные алгоритмы оптимизации: Алгоритм птичьего роя (Bird Swarm Algorithm, BSA)](https://c.mql5.com/2/74/Population_optimization_algorithms_Bird_Swarm_Algorithm_4BSA4_600x314.jpg)
Популяционные алгоритмы оптимизации: Алгоритм птичьего роя (Bird Swarm Algorithm, BSA)
В статье исследуется алгоритм BSA, основанный на поведении птиц, который вдохновлен коллективным стайным взаимодействием птиц в природе. Различные стратегии поиска индивидов в BSA, включая переключение между поведением в полете, бдительностью и поиском пищи, делают этот алгоритм многоаспектным. Он использует принципы стайного поведения, коммуникации, адаптивности, лидерства и следования птиц для эффективного поиска оптимальных решений.
![Разработка робота на Python и MQL5 (Часть 1): Препроцессинг данных](https://c.mql5.com/2/74/Robot_development_in_Python_and_MQL5_hPart_1i_Data_preprocessing_600x314.jpg)
Разработка робота на Python и MQL5 (Часть 1): Препроцессинг данных
Разработка торгового робота на основе машинного обучения: подробное руководство. В первой статье цикла осуществлен сбор и подготовка данных и признаков. Для реализации проекта используется язык программирования Python и библиотеки, а также платформа MetaTrader 5.
![Кластеризация временных рядов в причинно-следственном выводе](https://c.mql5.com/2/74/Time_series_clustering_in_causal_inference_600x314.jpg)
Кластеризация временных рядов в причинно-следственном выводе
Алгоритмы кластеризации в машинном обучении — это важные алгоритмы обучения без учителя, которые позволяют разделять исходные данные на группы с похожими наблюдениями. Используя эти группы, можно проводить анализ рынка для конкретного кластера, искать наиболее устойчивые кластеры на новых данных, а также делать причинно-следственный вывод. В статье предложен авторский метод кластеризации временных рядов на языке Python.
![Роль качества генератора случайных чисел в эффективности алгоритмов оптимизации](https://c.mql5.com/2/73/The_role_of_the_quality_of_the_random_number_generator_600x314.jpg)
Роль качества генератора случайных чисел в эффективности алгоритмов оптимизации
В этой статье мы рассмотрим генератор случайных чисел Mersenne Twister и сравним со стандартным в MQL5. Узнаем влияние качества случайных чисел генераторов на результаты алгоритмов оптимизации.
![Комбинаторно-симметричная перекрестная проверка в MQL5](https://c.mql5.com/2/60/Combinatorially_Symmetric_Cross_Validation_600x314.jpg)
Комбинаторно-симметричная перекрестная проверка в MQL5
В статье показана реализация комбинаторно-симметричной перекрестной проверки на чистом MQL5 для измерения степени подгонки после оптимизации стратегии с использованием медленного полного алгоритма тестера стратегий.
![Популяционные алгоритмы оптимизации: Алгоритм оптимизации китов (Whale Optimization Algorithm, WOA)](https://c.mql5.com/2/73/Whale_Optimization_Algorithm_600x314.jpg)
Популяционные алгоритмы оптимизации: Алгоритм оптимизации китов (Whale Optimization Algorithm, WOA)
Алгоритм оптимизации китов (WOA) - это метаэвристический алгоритм, вдохновленный поведением и охотничьими стратегиями горбатых китов. Основная идея WOA заключается в имитации так называемого "пузырькового сетевого" метода кормления, при котором киты создают пузыри вокруг добычи, чтобы затем нападать на нее в спиральном движении.
![Разработка 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, их семантику, то, как мы читаем некоторые из них, а также приводим краткий пример того, как свойства можно использовать для расширения протокола.
![Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)](https://c.mql5.com/2/71/Population_optimization_algorithms_Resistance_to_getting_stuck_in_local_extrema-transformed_600x314.jpg)
Популяционные алгоритмы оптимизации: Устойчивость к застреванию в локальных экстремумах (Часть I)
Эта статья представляет уникальный эксперимент, цель которого - исследовать поведение популяционных алгоритмов оптимизации в контексте их способности эффективно покидать локальные минимумы при низком разнообразии в популяции и достигать глобальных максимумов. Работа в этом направлении позволит глубже понять, какие конкретные алгоритмы могут успешно продолжать поиск из координат, установленных пользователем в качестве отправной точки, и какие факторы влияют на их успешность в этом процессе.
![Показатель склонности (Propensity score) в причинно-следственном выводе](https://c.mql5.com/2/72/Propensity_score_in_causal_inference___600x314.jpg)
Показатель склонности (Propensity score) в причинно-следственном выводе
В статье рассматривается тема матчинга в причинно-следственном выводе. Матчинг используется для сопоставления похожих наблюдений в наборе данных. Это необходимо для правильного определения каузальных эффектов, избавления от предвзятости. Автор рассказывает, как это помогает в построении торговых систем на машинном обучении, которые становятся более устойчивыми на новых данных, на которых не обучались. Центральная роль отводится показателю склонности, который широко используется в причинно-следственном выводе.
![Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен](https://c.mql5.com/2/58/implementation_regression_model_600x314.jpg)
Интеграция ML-моделей с тестером стратегий (Заключение): Реализация регрессионной модели для прогнозирования цен
В данной статье описывается реализация регрессионной модели на основе дерева решений для прогнозирования цен финансовых активов. Мы уже провели подготовку данных, обучение и оценку модели, а также ее корректировку и оптимизацию. Однако важно отметить, что данная модель является лишь исследованием и не должна использоваться при реальной торговле.
![Разрабатываем мультивалютный советник (Часть 4): Отложенные виртуальные ордера и сохранение состояния](https://c.mql5.com/2/71/Developing_a_multi-currency_advisor_Part_4_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 4): Отложенные виртуальные ордера и сохранение состояния
Приступив к разработке мультивалютного советника мы уже достигли некоторых результатов и успели провести несколько итераций улучшения кода. Однако наш советник не мог работать с отложенными ордерами и возобновлять работу после перезапуска терминала. Давайте добавим эти возможности.
![Базовый класс популяционных алгоритмов как основа эффективной оптимизации](https://c.mql5.com/2/71/The_basic_class_of_population_algorithms__600x314.jpg)
Базовый класс популяционных алгоритмов как основа эффективной оптимизации
Уникальная исследовательская попытка объединения разнообразных популяционных алгоритмов в единый класс с целью упрощения применения методов оптимизации. Этот подход не только открывает возможности для разработки новых алгоритмов, включая гибридные варианты, но и создает универсальный базовый стенд для тестирования. Этот стенд становится ключевым инструментом для выбора оптимального алгоритма в зависимости от конкретной задачи.
![Работа с ONNX-моделями в форматах float16 и float8](https://c.mql5.com/2/71/onnx-float_600x314.jpg)
Работа с ONNX-моделями в форматах float16 и float8
Форматы данных, используемые для представления моделей машинного обучения, играют ключевую роль в их эффективности. В последние годы появилось несколько новых типов данных, разработанных специально для работы с моделями глубокого обучения. В данной статье мы обратим внимание на два новых формата данных, которые стали широко применяться в современных моделях.
![Освоение ONNX: Переломный момент для MQL5-трейдеров](https://c.mql5.com/2/59/Mastering_ONNX_up_600x314__1.jpg)
Освоение ONNX: Переломный момент для MQL5-трейдеров
Погрузитесь в мир ONNX - мощного открытого формата для обмена моделями машинного обучения. Узнайте, как использование ONNX может произвести революцию в алгоритмической торговле на MQL5, позволяя трейдерам беспрепятственно интегрировать передовые модели искусственного интеллекта и поднять свои стратегии на новый уровень. Раскройте секреты кросс-платформенной совместимости и узнайте, как раскрыть весь потенциал ONNX в своей торговле на MQL5. Улучшите свою торговлю с помощью этого подробного руководства по ONNX.
![Использование алгоритмов оптимизации для настройки параметров советника "на лету"](https://c.mql5.com/2/69/Using_optimization_algorithms_to_configure_EA_parameters_on_the_fly_600x314.jpg)
Использование алгоритмов оптимизации для настройки параметров советника "на лету"
В статье рассматриваются практические аспекты использования алгоритмов оптимизации для поиска наилучших параметров советников "на лету", виртуализация торговых операций и логики советника. Данная статья может быть использована как своеобразная инструкция для внедрения алгоритмов оптимизации в торгового советника.
![Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)](https://c.mql5.com/2/69/Population_optimization_algorithms___Artificial_Multi-Social_Search_Objects_zMSO4_600x314.jpg)
Популяционные алгоритмы оптимизации: Искусственные мультисоциальные поисковые объекты (artificial Multi-Social search Objects, MSO)
Продолжение предыдущей статьи как развитие идеи социальных групп. В новой статье исследуется эволюция социальных групп с использованием алгоритмов перемещения и памяти. Результаты помогут понять эволюцию социальных систем и применить их в оптимизации и поиске решений.
![Популяционные алгоритмы оптимизации: Эволюция социальных групп (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), новый авторский алгоритм. Мы проанализируем основные концепции, механизмы взаимодействия популяций и преимущества этого алгоритма, а также рассмотрим его производительность в задачах оптимизации.
![Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 3)](https://c.mql5.com/2/58/mqtt_p3_600x314.jpg)
Разработка MQTT-клиента для MetaTrader 5: методология TDD (Часть 3)
Статья является третьей частью серии, описывающей этапы разработки нативного MQL5-клиента для протокола MQTT. В этой части мы подробно описываем применение принципа разработки через тестирование для реализации обмена пакетами CONNECT/CONNACK. В конце этого шага наш клиент ДОЛЖЕН уметь вести себя соответствующим образом при работе с любыми возможными результатами сервера при попытке подключения.