![Изучение MQL5 — от новичка до профи (Часть III): Сложные типы данных и подключаемые файлы](https://c.mql5.com/2/84/Learning_MQL5_-_from_beginner_to_pro_Part_III_600x314.jpg)
Изучение MQL5 — от новичка до профи (Часть III): Сложные типы данных и подключаемые файлы
Статья является третьей в серии материалов об основных аспектах программирования на MQL5. Здесь описываются сложные типы данных, которые не были описаны в предыдущей статье, включая структуры, объединения, классы и тип данных "функция". Также рассказано, как добавить модульности нашей программе с помощью директивы препроцессора #include.
![Алгоритм адаптивного социального поведения — 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) с целью оптимального использования стратегии. Эта статья углубляется в математическую оптимизацию стратегии, закладывая основу для будущего исследования оптимизации на основе кода в последующих частях.
![Парадигмы программирования (Часть 2): Объектно-ориентированный подход к разработке советника на основе ценовой динамики](https://c.mql5.com/2/71/MQL5_Article-02_Artwork_hero_1200_x_628px_600x314.jpg)
Парадигмы программирования (Часть 2): Объектно-ориентированный подход к разработке советника на основе ценовой динамики
В этой статье мы поговорим о парадигме объектно-ориентированного программирования и ее применении в коде MQL5. Это вторая статья в серии. В ней мы познакомимся с особенностями объектно-ориентированного программирования и рассмотрим практические примеры. В прошлый раз мы написали советник на основе ценовой динамики (Price Action), используя индикатор EMA и свечные данные. Сейчас мы преобразуем его процедурный код в объектно-ориентированный.
![GIT: Но что это?](https://c.mql5.com/2/69/GIT__Mas_que_coisa_x_esta_600x314.jpg)
GIT: Но что это?
В этой статье я представлю очень важный инструмент для разработчиков. Если вы не знакомы с GIT, прочтите эту статью, дабы получить представление о том, что он собой представляет, и как его использовать вместе с MQL5.
![Нейросети в трейдинге: Пространственно-временная нейронная сеть (STNN)](https://c.mql5.com/2/84/Neural_networks_in_trading_STNN_600x314.jpg)
Нейросети в трейдинге: Пространственно-временная нейронная сеть (STNN)
В данной статье мы поговорим об использовании пространственно-временных преобразований для эффективного прогнозирования предстоящего ценового движения. Для повышения точности численного прогнозирования в STNN был предложен механизм непрерывного внимания, который позволяет модели лучше учитывать важные аспекты данных.
![Проблема разногласий: объяснимость и объяснители в ИИ](https://c.mql5.com/2/72/The_Disagreement_Problem_Diving_Deeper_into_The_Complexity_Explainability_in_AI_600x314.jpg)
Проблема разногласий: объяснимость и объяснители в ИИ
В этой статье мы будем говорить о проблемах, связанных с объяснителями и объяснимостью в ИИ. Модели ИИ часто принимают решения, которые трудно объяснить. Более того, использование нескольких объяснителей часто приводит к так называемой "проблеме разногласий". А ведь ясное понимание того, как работают модели, является ключевым для повышения доверия к ИИ.
![Разрабатываем мультивалютный советник (Часть 14): Адаптивное изменение объёмов в риск-менеджере](https://c.mql5.com/2/83/Developing_a_multi-currency_advisor_Part_14_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 14): Адаптивное изменение объёмов в риск-менеджере
Разработанный ранее риск-менеджер содержал только базовую функциональность. Попробуем рассмотреть возможные пути его развития, позволяющие повысить торговые результаты без вмешательства в логику торговых стратегий.
![Алгоритм искусственного электрического поля — Artificial Electric Field Algorithm (AEFA)](https://c.mql5.com/2/83/Artificial_Electric_Field_Algorithm_600x314.jpg)
Алгоритм искусственного электрического поля — Artificial Electric Field Algorithm (AEFA)
Статья представляет алгоритм искусственного электрического поля (AEFA), вдохновленный законом Кулона об электростатической силе. Алгоритм моделирует электрические явления для решения сложных задач оптимизации, используя заряженные частицы и их взаимодействие. AEFA демонстрирует уникальные свойства в контексте других алгоритмов, связанных с законами природы.
![Модель глубокого обучения GRU на Python с использованием ONNX в советнике, GRU vs LSTM](https://c.mql5.com/2/70/Deep_Learning_GRU_model_with_Python_to_ONNX_with_EAh_and_GRU_vs_LSTM_models_600x314.jpg)
Модель глубокого обучения GRU на Python с использованием ONNX в советнике, GRU vs LSTM
Статья посвящена разработке модели глубокого обучения GRU ONNX на Python. В практической части мы реализуем эту модель в торговом советнике, а затем сравним работу модели GRU с LSTM (долгой краткосрочной памятью).
![Нейросети в трейдинге: Модель двойного внимания для прогнозирования трендов](https://c.mql5.com/2/83/Neural_networks_made_easy__A_dual_attention_model_for_trend_forecasting_600x314.jpg)
Нейросети в трейдинге: Модель двойного внимания для прогнозирования трендов
Продолжаем разговор об использовании кусочно-линейного представления временных рядов, начатый в предыдущей статье. И сегодня мы поговорим о комбинировании данного метода с другими подходами к анализу временных рядов для повышения качества прогнозирования трендов ценовых движений.
![Торговля спредами на рынке форекс с использованием фактора сезонности](https://c.mql5.com/2/83/Trading-spreads-in-the-forex-market-using-seasonality_600x314__1.jpg)
Торговля спредами на рынке форекс с использованием фактора сезонности
В статье рассматриваются возможности формирования и предоставления отчетных данных по использованию фактора сезонности при торговле спредами на рынке форекс.
![Нейросети в трейдинге: Кусочно-линейное представление временных рядов](https://c.mql5.com/2/82/Neural_networks_are_simple_Piecewise_linear_representation_of_time_series_600x314.jpg)
Нейросети в трейдинге: Кусочно-линейное представление временных рядов
Эта статья несколько отличается от предыдущих работ данной серии. В ней мы поговорим об альтернативном представлении временных рядов. Кусочно-линейное представление временных рядов — это метод аппроксимации временного ряда с помощью линейных функций на небольших интервалах.
![Эконометрические инструменты для прогнозирования волатильности: Модель GARCH](https://c.mql5.com/2/82/Econometric_Tools_for_Volatility_Forecasting__GARCH_Model_600x314.jpg)
Эконометрические инструменты для прогнозирования волатильности: Модель GARCH
В статье дается описание свойств нелинейной модели условной гетероскедастичности(GARCH). На ее основе построен индикатор iGARCH для прогнозирования волатильности на один шаг вперед. Для оценки параметров модели используется библиотека численного анализа ALGLIB.
![Нейросети — это просто (Часть 97): Обучение модели с использованием MSFformer](https://c.mql5.com/2/82/Neural_networks_are_easy_Part_97_600x314.jpg)
Нейросети — это просто (Часть 97): Обучение модели с использованием MSFformer
При изучении различных архитектур построения моделей мы мало уделяем внимания процессу обучения моделей. В этой статье я попытаюсь восполнить этот пробел.
![Машинное обучение и Data Science (Часть 20): Выбор между LDA и PCA в задачах алготрейдинга на MQL5](https://c.mql5.com/2/70/Data_Science_and_Machine_Learning_Part_20_Algorithmic_Trading_Insightsx_A_Faceoff_Between_LDA_and_PC.jpg)
Машинное обучение и Data Science (Часть 20): Выбор между LDA и PCA в задачах алготрейдинга на MQL5
В этой статье мы рассмотрим методы уменьшения размерности и их применение в торговой среде MQL5. В частности, мы изучим нюансы линейного дискриминантного анализа (LDA) и анализа главных компонентов (PCA), а также посмотрим на их влияние при разработке стратегий и анализе рынка.
![Разработка торгового робота на 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 (Часть 4): Структуры, классы и функции времени](https://c.mql5.com/2/70/Introduction_to_MQL5_pPart_4c_Mastering_Structuresq_Classesf_and_Time_Functions_600x314.jpg)
Введение в MQL5 (Часть 4): Структуры, классы и функции времени
В этой серии мы продолжаем раскрывать секреты программирования. В новой статье мы изучим в основы структур, классов и временных функций и получим новые навыки для эффективного программирования. Это руководство, возможно, будет полезно не только для новичков, но и для опытных разработчиков, поскольку упрощает сложные концепции, предоставляя ценную информацию для освоения MQL5. Продолжайте изучать новое, совершенствуйте навыки программирования и освойте мир алгоритмического трейдинга.
![Нейросети — это просто (Часть 96): Многоуровневое извлечение признаков (MSFformer)](https://c.mql5.com/2/82/Neural_networks_are_easy_Part_96_600x314.jpg)
Нейросети — это просто (Часть 96): Многоуровневое извлечение признаков (MSFformer)
Эффективное извлечение и объединение долгосрочных зависимостей и краткосрочных характеристик остаются важной задачей в анализе временных рядов. Правильное их понимание и интеграция необходимы для создания точных и надежных предсказательных моделей.
![Разработка системы репликации (Часть 41): Начало второй фазы (II)](https://c.mql5.com/2/65/Desenvolvendo_um_sistema_de_Replay_pParte_417_600x314.jpg)
Разработка системы репликации (Часть 41): Начало второй фазы (II)
Если до этого момента вам всё казалось правильным, это значит, что вы на самом деле не задумываетесь о долгосрочной перспективе. Когда вы начинаете разрабатывать приложения, а со временем вам больше не приходится создавать новые приложения. Остается только добиться того, чтобы они работали вместе. Давайте рассмотрим, как завершить сборку указателя мыши.
![Как разработать агент обучения с подкреплением на 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) в классы и подчеркнем такие преимущества, как инкапсуляция, модульность и простота обслуживания. Подробно рассмотрим рефакторинг кода и покажем замену изолированных функций методами класса. Статья содержит практические примеры и тесты.
![Нейросети — это просто (Часть 95): Снижение потребления памяти в моделях Transformer](https://c.mql5.com/2/81/Neural_networks_are_easy_Part_95_600x314.jpg)
Нейросети — это просто (Часть 95): Снижение потребления памяти в моделях Transformer
Модели на основе архитектуры Transformer демонстрируют высокую эффективность, однако их использование осложняется большими затратами ресурсов как на этапе обучения, так и в процессе эксплуатации. В этой статье я предлагаю познакомиться с алгоритмами, которые позволяют уменьшить использование памяти такими моделями.
![Разработка системы репликации (Часть 40): Начало второй фазы (I)](https://c.mql5.com/2/64/Desenvolvendo_um_sistema_de_Replay_oParte_40r_Iniciando_a_segunda_fase__600x314.jpg)
Разработка системы репликации (Часть 40): Начало второй фазы (I)
Сегодня поговорим о новой фазе системы репликации/моделирования. На данном этапе разговор станет поистине интересным, а содержанием довольно насыщенным. Я настоятельно рекомендую вам внимательно прочитать статью и пользоваться приведенными в ней ссылками. Это поможет вам лучше понять содержание.
![Алгорим оптимизации химическими реакциями — Chemical reaction optimisation, CRO (Часть II): Сборка и результаты](https://c.mql5.com/2/81/Algorithm_for_optimization_by_chemical_reactions__Part_2_600x314.jpg)
Алгорим оптимизации химическими реакциями — Chemical reaction optimisation, CRO (Часть II): Сборка и результаты
Во второй части статьи мы соберем химические операторы в единый алгоритм и представим подробный анализ результатов его работы. Узнаем, как метод оптимизации химическими реакциями (CRO) справился с вызовом в решении сложных задач на тестовых функциях.
![Разработка системы репликации (Часть 39): Прокладываем путь (III)](https://c.mql5.com/2/64/Desenvolvendo_um_sistema_de_Replay_iParte_39x_Pavimentando_o_Terreno_sIIIs_600x314.jpg)
Разработка системы репликации (Часть 39): Прокладываем путь (III)
Прежде, чем приступить ко второму этапу разработки, необходимо закрепить несколько идей. Знаете ли вы, как заставить MQL5 делать то, что вам необходимо? Пытались ли когда-нибудь выйти за рамки того, что содержится в документации? Если нет, то приготовьтесь. Потому что прямо сейчас мы будем делать то, чем большинство людей обычно не занимается.
![Алгорим оптимизации химическими реакциями — Chemical reaction optimisation, CRO (Часть I): Химия процессов в оптимизации](https://c.mql5.com/2/81/Algorithm_for_optimization_by_chemical_reactions__Part_1_600x314__1.jpg)
Алгорим оптимизации химическими реакциями — Chemical reaction optimisation, CRO (Часть I): Химия процессов в оптимизации
В первой части данной статьи мы окунемся в мир химических реакций и откроем новый подход к оптимизации! Метод оптимизации химическими реакциями (CRO) использует для достижения эффективных результатов принципы, определяемые законами термодинамики. Мы раскроем секреты декомпозиции, синтеза и других химических процессов, которые стали основой этого инновационного метода.
![Возможности Мастера MQL5, которые вам нужно знать (Часть 12): Полином Ньютона](https://c.mql5.com/2/70/MQL5_Wizard_Techniques_you_should_know_Part_12_Newton_Polynomial_600x314.jpg)
Возможности Мастера MQL5, которые вам нужно знать (Часть 12): Полином Ньютона
Полином Ньютона, который создает квадратные уравнения из набора нескольких точек, представляет собой архаичный, но интересный подход к рассмотрению временных рядов. В этой статье мы попытаемся изучить, какие аспекты этого подхода могут быть полезны трейдерам, а также устранить его ограничения.
![Как заработать, выполняя заказы трейдеров в сервисе "Фриланс"](https://c.mql5.com/2/80/How-to-MQL5-Freelance_600x314.jpg)
Как заработать, выполняя заказы трейдеров в сервисе "Фриланс"
MQL5 Фриланс - это онлайн-сервис, где разработчики за денежное вознаграждение пишут для трейдеров-заказчиков торговые приложения. Сервис успешно функционирует с 2010 года: на данный момент выполнено более 100 000 работ общей стоимостью в $7 млн. Как видим, деньги здесь крутятся вполне приличные.
![Визуализации сделок на графике (Часть 2): Графическая отрисовка информации](https://c.mql5.com/2/80/Visualization_of_trades_on_a_chart_Part_2___Ver_3_600x314.jpg)
Визуализации сделок на графике (Часть 2): Графическая отрисовка информации
Пишем с нуля скрипт, который сделает удобным выгрузку принт-скринов сделок для анализа торговых входов. На одном графике будет удобно отображаться вся необходимая информация по отдельной сделке, с возможностью прорисовывания разных тайм-фреймов.
![Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы](https://c.mql5.com/2/80/Developing_a_multi-currency_advisor_Part_13_600x314.jpg)
Разрабатываем мультивалютный советник (Часть 13): Автоматизация второго этапа — отбор в группы
Первый этап автоматизированного процесса оптимизации у нас уже реализован. Для разных символов и таймфреймов мы проводим оптимизацию по нескольким критериям и сохраняем информацию о результатах каждого прохода в базе данных. Теперь займёмся отбором лучших групп наборов параметров из найденных на первом этапе.
![Нейросети — это просто (Часть 94): Оптимизация последовательности исходных данных](https://c.mql5.com/2/80/Neural_networks_are_easy_Part_94_600x314.jpg)
Нейросети — это просто (Часть 94): Оптимизация последовательности исходных данных
При работе с временными рядами мы всегда используем исходные данные в их исторической последовательности. Но является ли это оптимальным вариантом? Существует мнение, что изменение последовательности исходных данных позволит повысить эффективность обучаемых моделей. В данной статье я предлагаю вам познакомиться с одним из таких методов.
![Как просматривать сделки прямо на графике и не утонуть в торговой истории](https://c.mql5.com/2/80/How_to_avoid_drowning_in_trading_history_and_easily_glide_right_along_the_chart_600x314.jpg)
Как просматривать сделки прямо на графике и не утонуть в торговой истории
В статье создадим простой инструмент для удобного просмотра позиций и сделок прямо на графике с навигацией клавишами. Это позволит трейдерам визуально изучать отдельные сделки и получать всю информацию о результатах торговли прямо по месту.
![Машинное обучение и Data Science (Часть 19): Совершенствуем AI-модели с помощью AdaBoost](https://c.mql5.com/2/65/Data_Science_and_Machine_Learning_7Part_191_Supercharge_Your_AI_models_with_AdaBoost_600x314.jpg)
Машинное обучение и Data Science (Часть 19): Совершенствуем AI-модели с помощью AdaBoost
Алгоритм AdaBoost используется для повышения производительности моделей искусственного интеллекта. AdaBoost (Adaptive Boosting, адаптивный бустинг) представляет собой сложную методику ансамблевого обучения, которая легко объединяет слабых учащихся, повышая их коллективную способность прогнозирования.
![Элементы корреляционного анализа в MQL5: Критерий независимости хи-квадрат Пирсона и корреляционное отношение](https://c.mql5.com/2/80/Pearson_chi-square_independence_test_and_correlation_ratio_600x314.jpg)
Элементы корреляционного анализа в MQL5: Критерий независимости хи-квадрат Пирсона и корреляционное отношение
В статье рассматриваются классические инструменты корреляционного анализа. Даются краткие теоретические основы, а также практическая реализация критерия независимости хи-квадрат Пирсона и коэффициента корреляционного отношения.
![Наиболее известные модификации алгоритма искусственного кооперативного поиска (Artificial Cooperative Search, ACSm)](https://c.mql5.com/2/80/Popular_Artificial_Cooperative_Search_600x314.jpg)
Наиболее известные модификации алгоритма искусственного кооперативного поиска (Artificial Cooperative Search, ACSm)
В данной статье рассмотрим эволюцию алгоритма ACS: три модификации в направлении улучшения характеристик сходимости и результативности алгоритма. Трансформация одного из ведущих алгоритмов оптимизации. От модификаций матриц до революционных подходов к формированию популяций.
![Введение в MQL5 (Часть 3): Изучаем основные элементы MQL5](https://c.mql5.com/2/65/Introduction_to_MQL5_7Part_36_Mastering_the_Core_Elements_of_MQL5_600x314.jpg)
Введение в MQL5 (Часть 3): Изучаем основные элементы MQL5
В этой статье мы продолжаем изучать основы программирования на MQL5. Мы рассмотрим массивы, пользовательские функции, препроцессоры и обработку событий. Для наглядности каждый шаг всех объяснений будет сопровождаться кодом. Эта серия статей закладывает основу для изучения MQL5, уделяя особое внимание объяснению каждой строки кода.
![Разработка и тестирование торговых систем на основе Канала Кельтнера](https://c.mql5.com/2/69/Building_and_testing_Keltner_Channel_trading_systems_600x314.jpg)
Разработка и тестирование торговых систем на основе Канала Кельтнера
В этой статье мы рассмотрим торговые системы, использующие очень важную концепцию финансового рынка — волатильность. Мы изучим торговую систему, основанную на канала Кельтнера (Keltner Channel), включая ее реализацию в коде и тестирование на различных активах.
![Нейросети — это просто (Часть 93): Адаптивное прогнозирование в частотной и временной областях (Окончание)](https://c.mql5.com/2/79/Neural_networks_are_easy_Part_93_600x314.jpg)
Нейросети — это просто (Часть 93): Адаптивное прогнозирование в частотной и временной областях (Окончание)
В данной статье мы продолжаем реализацию подходов ATFNet — модели, которая адаптивно объединяет результаты 2 блоков (частотного и временного) прогнозирования временных рядов
![Алгоритм искусственного кооперативного поиска (Artificial Cooperative Search, ACS)](https://c.mql5.com/2/79/Artificial_Cooperative_Search_600x314.jpg)
Алгоритм искусственного кооперативного поиска (Artificial Cooperative Search, ACS)
Представляем вам алгоритм Artificial Cooperative Search (ACS). Этот инновационный метод использует бинарную матрицу и несколько динамичных популяций, основанных на мутуалистических отношениях и кооперации, для быстрого и точного нахождения оптимальных решений. Уникальный подход ACS к "хищникам" и "жертвам" позволяет добиваться отличных результатов в задачах численной оптимизации.