Integración con Python

Puente entre MQL5 y el ecosistema Python

Python Código Dual WebRequest
Módulo 2 de 12
Piensa así: MQL5 y Python son como dos cocineros en distintas cocinas. El bridge es el mensajero que lleva ingredientes (datos) de una cocina a otra. WebRequest es el teléfono, FILE_COMMON es la bandeja de documentos compartidos, y PythonNET es tener al segundo chef trabajando dentro de tu propia cocina.
Código lado a lado: EA escribe, Python lee
EA MQL5 (escritura)Files/
//+------------------------------------------------------------------+
//| ExportTradeData.mq5                       |
//+------------------------------------------------------------------+
#property copyright "AlgoForge"
#property version  "1.00"
input string FILE_NAME = "trade_data.csv";
void OnTick() {
  int handle = FileOpen(
   FILE_NAME, FILE_WRITE|FILE_CSV|FILE_COMMON, ','
  );
  if(handle != INVALID_HANDLE) {
   FileWrite(handle, Symbol(), TimeCurrent(),
        Bid, Ask, PositionSelect(Symbol()));
   FileClose(handle);
  }
  WebRequest("POST", "http://127.0.0.1:5000/signal",
       "", NULL, 5000, data, 0, result, headers);
}
Python (lectura + API)Python 3.10+
import pandas as pd
from flask import Flask, request, jsonify

app = Flask(__name__)

# Leer datos compartidos
df = pd.read_csv(
  "Common/trade_data.csv"
)
# Calcular señal con ML
signal = predict_signal(df)

@app.route("/signal", methods=["POST"])
def receive_signal():
  data = request.json
  decision = model.predict(data)
  return jsonify({"action": decision})
WebRequest Config Panel
Listo para conectar. Simula una petición.
FILE_COMMON Path Explorer
📁 Terminal Common
📁 Files/
📄 trade_data.csv
📄 config.json
📄 signals_log.txt
📁 Market/
📄 prices_cache.bin
📁 Logs/
📄 ea-2026-06.log
Haz clic en un archivo para ver detalles
Tu Progreso
Prueba la conexión WebRequest y explora los archivos compartidos para completar el módulo.