No description
  • MQL5 57.7%
  • Python 41.8%
  • Jupyter Notebook 0.5%
Find a file
2026-06-02 15:05:50 +02:00
Article-22220-Real-Time-Entropy-Trading-System.mqproj Generated by MQL5 Wizard 2026-06-02 13:52:41 +02:00
Entropy.ipynb Main files of the article 2026-06-02 15:05:50 +02:00
Features.py Main files of the article 2026-06-02 15:05:50 +02:00
GettingHistData.py Main files of the article 2026-06-02 15:05:50 +02:00
Model.py Main files of the article 2026-06-02 15:05:50 +02:00
README.md Update README.md 2026-06-02 12:05:27 +00:00
Real-Time Entropy.mq5 Main files of the article 2026-06-02 15:05:50 +02:00
Server.py Main files of the article 2026-06-02 15:05:50 +02:00
Train.py Main files of the article 2026-06-02 15:05:50 +02:00

Article-22220-Real-Time-Entropy-Trading-System

This repository is an article-derived reference project based on the original MQL5 article. It does not claim to reproduce the full original source code unless files are explicitly attached.

Overview

This project documents a hybrid MQL5 + Python trading system centered on real-time market entropy analysis. The architecture combines:

  • an MQL5 Expert Advisor for tick collection, HTTP communication, and trade execution
  • a Python feature-engineering and model-training pipeline
  • a Flask inference server for live signal generation

The article describes how Shannon entropy, volatility metrics, RSI, and trend features are transformed into an 8-feature input vector for a neural network that outputs directional probability. A volatility regime detector then adjusts confidence thresholds and trading risk parameters.

Original Article

Repository Purpose

This repository should be treated as a reference or reconstruction project derived from the article content. Its purpose is to preserve the article’s technical structure and described file layout for:

  • studying entropy-based tick-level trading workflows
  • understanding MQL5-to-Python inference integration via HTTP
  • reconstructing the Python training/inference stack and the MQL5 EA
  • serving as a base for further experimentation with adaptive risk logic

Key Concepts

  • Shannon entropy on rolling return windows
  • volatility entropy from squared returns
  • adaptive volatility regime detection
  • neural-network directional classification
  • feature scaling with StandardScaler
  • Flask-based local inference API
  • MQL5 WebRequest communication
  • adaptive lot sizing, SL, and TP management
  • tick-level execution rather than candle-close logic

Algorithm / Architecture Summary

  1. Historical data collection
  • Python connects to MetaTrader 5 and downloads historical XAUUSD H1 data.
  • Data is saved to CSV for offline training.
  1. Feature engineering
  • Compute log returns from recent prices.
  • Derive normalized entropy and volatility entropy using percentile-based bins.
  • Compute volatility statistics such as standard deviation, MAD, range, skewness, and kurtosis.
  • Estimate trend slope and regression .
  • Build an 8-element feature vector including entropy, return statistics, trend metrics, skewness, and normalized RSI.
  1. Regime detection
  • Maintain entropy history in rolling buffers.
  • Classify market state as LOW_VOLATILITY, NORMAL, HIGH_VOLATILITY, or EXTREME_VOLATILITY.
  • Produce risk multipliers for stop-loss, take-profit, and position sizing.
  1. Model training
  • Use a PyTorch feed-forward network with batch normalization, ReLU, dropout, and sigmoid output.
  • Train on rolling-window samples labeled by future return direction over a fixed horizon.
  • Save the fitted scaler and best model weights.
  1. Live inference
  • MQL5 EA collects recent tick bid prices and computes RSI.
  • EA sends JSON to a local Flask /predict endpoint.
  • Flask rebuilds features, detects regime, runs model inference, and returns:
  • probability
  • entropy metrics
  • signal
  • regime
  • volatility multiplier
  • confidence
  1. Execution
  • EA validates confidence, cooldown, current exposure, and reversal rules.
  • Orders are placed through CTrade.
  • Open positions may have SL/TP adjusted when the regime changes.

Mentioned or Attached Files

Explicitly attached files

The article states that the following files are contained in the archive:

  • GettingHistData.py — downloads historical XAUUSD H1 data from MetaTrader 5
  • Features.py — feature engineering and volatility regime detection
  • Model.py — PyTorch neural network definition
  • Train.py — training pipeline and scaler/model persistence
  • Server.py — Flask inference server
  • Entropy.ipynb — notebook for step-by-step execution
  • Real-Time Entropy.mq5 — MQL5 Expert Advisor

Files mentioned in the text

  • XAUUSD_H1.csv — generated dataset used by the training script
  • entropy_model.pth — saved PyTorch model weights
  • scaler.pkl — saved feature scaler

Statistics

  • Article sections described: 6 main sections
  • Python components described: 5
  • MQL5 components described: 1 EA
  • Model input features: 8
  • Primary rolling window size: 50
  • Training horizon: 5
  • Flask endpoint: /predict
  • Health endpoint: /health

Tags

MQL5, MetaTrader5, Python, Flask, PyTorch, Machine-Learning, Entropy, Volatility-Regime, Algorithmic-Trading, Expert-Advisor

Difficulty

Advanced

Requires familiarity with:

  • MQL5 EA development
  • Python data processing
  • PyTorch model training
  • REST communication between MetaTrader and local services
  • trading/risk-management logic

Limitations

  • The repository is derived from article content and should be treated as a reference reconstruction unless the archive files are actually present.
  • Publication date and article category were not available in the processed input.
  • No performance claims beyond the article description should be assumed.
  • The system depends on a local Flask server and MetaTrader 5 environment; deployment details may vary.
  • The article describes code and file roles, but full verification of attached source completeness is not possible from the processed input alone.

Reference

Original MQL5 article: https://www.mql5.com/en/articles/22220