MT4 error 3: Invalid trade parameters
Check every OrderSend() argument.
Updated 24 October 2026. Runs in your browser; nothing you type is uploaded.
The number after "error" in MT4's Experts or Journal tab. 161 codes, as MQL4's reference words them.
Share this fix
What MQL4 says
3ERR_INVALID_TRADE_PARAMETERS- Invalid trade parameters
From MQL4's table of error codes, read 24 October 2026. An Expert Advisor reads it with GetLastError() after a call fails; the Experts and Journal tabs print what the EA logs.
What causes it
The request's parameters were invalid. MQL4's table gives no more detail than "Invalid trade parameters", so the parameters themselves are where to look.
How to fix it
Check each argument you pass to OrderSend(). Print them just before the call (symbol, cmd: OP_BUY, OP_SELL, OP_BUYLIMIT, OP_SELLLIMIT, OP_BUYSTOP or OP_SELLSTOP, volume, price, slippage, stop loss, take profit and expiration) and compare each with OrderSend's parameter list.
Source: MQL4 Reference: OrderSend. No MQL4 code is shown because none here was compiled; adapt the steps to your EA.
Other MT4 errors
- MT4 error 0: No error returned
- MT4 error 1: No error returned, but the result is unknown
- MT4 error 2: Common error
- MT4 error 130: Invalid stops
- MT4 error 131: Invalid trade volume
- MT4 error 132: Market is closed
- MT4 error 133: Trade is disabled
- MT4 error 134: Not enough money
- MT4 error 136: Off quotes
- MT4 error 4051: Invalid function parameter value
- MT4 error 4107: Invalid price
- MT4 error 4111: Shorts are not allowed
- MT4 error 4112: Automated trading by Expert Advisors/Scripts disabled by trade server
- MT4 error 4200: Object already exists
- MT4 error 5004: Cannot open file
Moving to MT5? Read a whole EA's source
- MTR FullSystemEA (MQL5 source) The full MQL5 source of a production MT5 EA for XAUUSD M5 (hedge-grid and recovery): 21 files, 16,923 lines. $49 once.