Detectar el filling mode soportado (FOK/IOC)
Lee la máscara SYMBOL_FILLING_MODE para elegir un tipo de relleno aceptado por el servidor — enviar un modo no soportado es una de las causas más frecuentes de «Unsupported filling mode».
Requisitos
MetaTrader 5, MQL5
MQL5
ENUM_ORDER_TYPE_FILLING PickFillingMode(string symbol)
{
long mask = SymbolInfoInteger(symbol, SYMBOL_FILLING_MODE);
if((mask & SYMBOL_FILLING_FOK) != 0)
return ORDER_FILLING_FOK; // tout ou rien
if((mask & SYMBOL_FILLING_IOC) != 0)
return ORDER_FILLING_IOC; // exécution partielle possible
return ORDER_FILLING_RETURN; // mode marché/échange par défaut
}
// Utilisation avec une MqlTradeRequest manuelle
MqlTradeRequest req = {};
req.action = TRADE_ACTION_DEAL;
req.symbol = _Symbol;
req.type_filling = PickFillingMode(_Symbol);Resultado
2026.06.10 08:00:01.205 FillProbe (EURUSD,M15) SYMBOL_FILLING_MODE = 3 (FOK|IOC) 2026.06.10 08:00:01.206 FillProbe (EURUSD,M15) Mode retenu : ORDER_FILLING_FOK (tout ou rien) 2026.06.10 08:00:01.310 FillProbe (US500,M15) SYMBOL_FILLING_MODE = 2 (IOC) -> ORDER_FILLING_IOC 2026.06.10 08:00:01.412 FillProbe (BTCUSD,M15) Aucun flag -> repli ORDER_FILLING_RETURN (mode échange) 2026.06.10 08:00:01.413 FillProbe (EURUSD,M15) « Unsupported filling mode » impossible chez ce broker
Filling ModeFOKIOCCompatibilité Broker