Skip to main content
LiveForexPowerLiveForexPower

MT5 contract specification EA: LFP Lot Checks

· Updated

Abstract trading robot checking broker symbols and contract terms before allowing trades.

An MT5 contract specification EA like LFP checks that a buyer’s broker offers the symbol, allows trading, has acceptable costs and reports a consistent one-lot value before the symbol is allowed to trade. If the symbol name, contract terms or lot-value calculation do not match the system’s expectations, LFP opens nothing on that symbol or disables it in the broker-specific build. This broker adaptation is not a profit promise; it is a risk-control layer for reducing differences caused by symbol names, spread, commission, swaps and contract size.

MT5 contract specification EA and lot-value risk

An MT5 contract specification EA such as LFP does not begin with the assumption that “one lot” means the same thing at every broker. Before a symbol is allowed into the buyer’s build, the robot must read the symbol name, tradability, visible costs and lot-value consistency from that exact account and broker.

In MetaTrader 5, a symbol specification is not a universal constant; the expert advisor has to read the properties of the broker’s own symbol. The MQL5 reference explains that SymbolInfoDouble returns a numeric property for a specified symbol, and it separately reports conditions such as an unknown symbol or a symbol that is not selected in Market Watch.

For LFP, this is not a cosmetic programming detail. When position size is linked to a percentage of balance, a wrong one-lot value can make the real cash risk differ from the risk seen in the backtest. Broker adaptation is therefore a risk-control layer: data is read and checked first, and only then is trading on that symbol allowed.

Symbol suffix EA checks and broker compatibility

Many differences between two accounts do not come from the trading logic itself. Sometimes a robot sees GBPUSD at one broker but the same market is called GBPUSDm or GBPUSD.pro elsewhere; sometimes XAUUSD exists but the contract size or minimum volume differs; and sometimes a symbol is visible but trading is restricted.

LFP is licensed to one real MT5 account and adapts itself to the buyer’s broker symbol names and specifications. In the compatibility test, each market is reported with a practical status: available, available with limits, or unavailable. If a market is not offered by the buyer’s broker, it is disabled in that broker-specific build, and the cost estimate covers only the available markets.

This matters for a robot whose current backtest traded 7 markets with 6 strategies. If one or more markets are unusable because of naming, volume or cost constraints, the live account is no longer the full backtested portfolio. Transparency means showing that difference before payment and before live execution.

  • Market availability: does the buyer’s account really offer XAUUSD, ETHUSD or the required currency pair?
  • Symbol name: does the broker use a suffix or prefix, such as a modified version of GBPUSD or USDJPY?
  • Trading permission: is the symbol only visible, or can the account actually open trades on it?
  • Balance and volume fit: do minimum volume, volume step and symbol terms fit the balance and selected risk style?
  • Trading sessions: is the market tradable during the hours in which the robot may need to operate?
Three independent validation paths converging on a lot-size check behind a safety gate.

Lot value in MetaTrader: why three checks are needed

Lot value in MetaTrader is not a number that should be guessed from outside the account. On one symbol, the profit currency may match the account currency; on another, profit must be converted; and on CFDs or crypto instruments, contract size can differ from what the trader expects. For that reason, LFP checks the cash value of one lot through three independent routes before trading a symbol.

The MQL5 documentation for OrderCalcProfit says the function calculates profit for the current account and current market conditions and returns the value in the account currency; that illustrates why the calculation belongs inside the actual broker environment, not in a generic assumption about the symbol. For an MT5 contract specification EA, these checks are part of position sizing, not a decorative feature.

If the three routes agree, the robot can translate the selected risk into volume with more confidence. If they do not agree, LFP takes the conservative path: it opens no trade on that symbol. That may reduce apparent opportunity, but it avoids opening a position whose cash risk is different from what the system expected.

  • Broker-side calculation: the robot checks what the platform itself reports for a given volume.
  • Tick-value route: the cash value of price movement is checked through tick-value information.
  • Contract-size route: the cash effect of volume is compared with the symbol’s contract terms.
  • Final decision: if the three views are inconsistent, LFP opens no trade on that symbol.

Broker spread commission, swap and execution in compatibility testing

Even when lot value is read correctly, trading cost can still change the result. Wider spread, different commission, overnight swap and order execution quality can affect profit factor, drawdown behavior and which trades remain worthwhile. In MetaTrader 5, robots can automate analysis and trade operations, but their inputs still come from the account and broker; MetaTrader’s own page describes algorithmic trading as using robots that analyze prices and perform trading operations.

The LFP compatibility test is not a prediction engine. It looks at past trades from the LFP live account and estimates how costs would have changed if those trades had been executed with the buyer’s broker spread and commission. The estimate is historical, but it is useful before purchase because it shows whether the selected broker is close to, or far from, the tested and executed cost environment.

This is especially relevant for markets such as XAUUSD, GBPJPY and ETHUSD, where brokers may differ in contract terms and cost structure. LFP does not use this discussion to predict market direction. The point is narrower and more practical: before trading is allowed, the technical and cost environment must be acceptable.

How broker costs can separate two account results
FactorPractical effectHow LFP handles it
SpreadEntry and exit become more expensive, and shorter trades are usually more sensitive.In Brave style, the built-in watchdog stands a market down when spread exceeds 2x its tested level.
CommissionEven with similar spread, the cost per trade can differ.The compatibility test estimates how the broker’s past spread and commission would have affected LFP live-account trades.
Overnight swapMulti-day positions may pay or receive different financing.The LFP backtest was run with the broker’s real spread and overnight swaps.
Slippage and execution qualityThe actual fill can differ from the expected price.LFP does not state that a buyer’s result will match the backtest or live account exactly.

What happens if contract terms change after installation?

Broker compatibility is not a one-time event. A broker may widen spread around news, change contract terms, or restrict trading on a symbol. That is why, in Brave style, LFP has a built-in watchdog that stands a market down when its spread exceeds 2x the tested level or when its contract terms change.

This behavior fits LFP’s capital-first design. The robot uses no martingale or grid, every trade has its own stop loss at the broker, and in Brave style the drawdown brake closes every position at 30% drawdown and resumes once the account is back under 20%. Standing down a market with questionable data is part of the same principle: if the risk cannot be measured clearly, not trading is better than trading.

These controls do not make losses impossible. In real trading, the future can be worse than the backtest and broker execution quality still matters. But rejecting a symbol whose specification or lot value is inconsistent removes one unnecessary category of risk: contract misunderstanding rather than market movement.

LFP’s symbol and contract control layers
Control momentWhat is checkedAccount-level result
Before purchaseCompatibility testing checks markets, sessions, account type, tradable volume, spread and commission.The buyer sees which markets are usable, limited or disabled.
Broker-specific buildLFP reads the broker’s symbol names and contract specifications.The robot does not depend on a raw symbol name and can adapt to broker suffixes.
Before trading a symbolOne-lot value is checked through three independent methods.If the calculations disagree, no trade is opened on that symbol.
During operationThe built-in watchdog monitors spread and contract-term changes.If spread exceeds 2x the tested level or contract terms change, the market is stood down.

How to read broker-adapted backtests without overclaiming

The LFP backtest runs from 2020 onward across more than 6 years years, and the default Brave style shows a backtest profit factor of 1.21 and a backtest maximum drawdown of 33.9%. The same backtest also shows that the path was not smooth: the longest period below a previous high was 271 days, and the share of losing months was 40%. These figures should be read alongside symbol and contract controls, not separately from them.

The six original strategies were selected using 2020–2023 data only; the three strategies added in September and October 2026 were accepted with the whole backtest in view, so part of the result is in-sample. That matters for fair interpretation: broker compatibility and contract checking improve operational control, but they do not remove overfitting risk, regime change or the possibility that the future is worse than the past.

The practical conclusion for a buyer is simple. Before focusing on return, confirm that the account offers the same markets with acceptable cost and contract terms. LFP’s MT5 contract specification EA behavior is built around that rule: the broker-specific build allows a symbol to trade only when symbol data, cost and lot value are defensible.

  • Ask whether all markets used by the robot are available and tradable at your broker.
  • Do not look only at the symbol name; contract size, tick value, minimum volume and profit currency matter too.
  • Separate trading cost from strategy logic; spread and commission can make the same system look different on two accounts.
  • Read a backtest with drawdown and underwater time, not only with return or profit factor.
  • If a market is disabled at your broker, do not treat your account as identical to the full backtested portfolio.

Frequently asked

Why can lot value differ between MetaTrader brokers?
Because each broker defines the symbol name, contract size, profit currency, minimum volume, volume step, spread and commission for each instrument. One lot of XAUUSD or ETHUSD can therefore have a different cash effect on two accounts, even when the visible market name looks similar.
What does LFP’s broker compatibility test check?
Before purchase, it checks whether the required markets exist, whether trading is allowed, whether the account type and trading hours are suitable, and whether the symbols can be traded at the chosen balance and risk style. It then estimates how the broker’s spread and commission would have affected the LFP live account’s past trades; that estimate is about the past, not a forecast.
What if my broker uses a symbol suffix such as GBPUSDm?
LFP searches for the broker’s actual symbol names instead of depending on a fixed raw name such as GBPUSD. If a market is unavailable or its trading terms are not compatible with the robot’s requirements, that market is disabled in the buyer’s broker-specific build.
Why does LFP measure one-lot value three independent ways?
The purpose is to size trades only when the broker’s own calculation, tick value and contract size tell a consistent story about the cash movement of one lot. If those three views disagree, LFP opens nothing on that symbol.
Does contract specification checking make my result match the backtest exactly?
No. It is a risk-control and compatibility layer, not a performance guarantee. Spread, commission, slippage, execution quality, start date and the selected risk style can all make a buyer’s result differ from the backtest and from the LFP live account.

This is educational material, not investment advice. All performance figures are backtest results, not live trading, and are no guarantee of future results.