LT ADX EA
Complete walkthrough of all inputs for the LT ADX EA: ADX DI crossover strategy, trend strength filtering, trade execution, account protection, and all available filters.

These inputs define the trading logic based on the Average Directional Movement Index (ADX). The ADX family of indicators measures both trend direction (via the +DI and -DI lines) and trend strength (via the ADX line itself).
EA Trading Strategy
enumADX_DI_CrossSelects the ADX-based entry strategy. Currently ADX_DI_Cross is the available mode: the EA buys when the +DI line crosses above the -DI line and sells when -DI crosses above +DI.
| Strategy | Signal logic |
|---|---|
| ADX_DI_Cross | Buy when +DI crosses above -DI; Sell when -DI crosses above +DI. The ADX Level filter optionally requires minimum trend strength. |
The ADX Level input (default 25) acts as a trend strength gate. Only crossovers that occur when ADX is above this level are taken, filtering out weak, ranging market signals.
Close Trades on Opposite Direction Signal
boolfalseWhen true, a DI crossover in the opposite direction closes the existing position before opening the new one.
Reverse Trade Signal
boolfalseInverts ADX strategy signals. +DI crossing above -DI generates a Sell instead of a Buy.
Choose the ADX Indicator
enumADX_StandardSelects which MetaTrader 5 ADX indicator to use for the calculation.
| Option | Indicator |
|---|---|
| ADX_Standard | iADX - standard Average Directional Movement Index |
| ADX_Wilder | iADXWilder - ADX calculated using Welles Wilder smoothing (slightly slower, less noisy) |
ADX Time Frame
enumPERIOD_CURRENTThe timeframe used to read the ADX indicator values.
ADX Period
int14The number of bars used in the ADX calculation. 14 is the classic Welles Wilder default. Lower values (7-10) react faster but produce more false signals. Higher values (20-30) are smoother and more reliable in trending markets.
ADX Level
int25Minimum ADX value required for a DI crossover signal to be accepted. When ADX is below this level the market is considered non-trending and signals are ignored. Set to 0 to disable the filter and take all crossovers.
These inputs define which instrument the EA trades and whether it uses a real or virtual account balance for lot-size calculations.
EA Name
stringLT EAThe internal name displayed on the chart and in log messages. Changing this lets you run two instances of the same EA on the same chart with different settings without naming conflicts.
Type of Symbol
enumNChartSelects whether the EA trades the chart symbol (NChart) or a custom symbol entered in the Trading Symbol field (CChart). Use CChart to trade a different instrument from the one the EA is attached to.
| Option | Behaviour |
|---|---|
| NChart | Trades the chart symbol automatically |
| CChart | Trades the symbol entered in Trading Symbol |
Trading Symbol
stringEURUSDThe symbol the EA will trade when Type of Symbol is set to CChart. Enter the exact symbol name as it appears in your broker's Market Watch (e.g EURUSD, XAUUSD, US30).
Use a Virtual Balance
boolfalseWhen enabled the EA uses the value in EA Virtual Balance for lot-size risk calculations instead of the real account equity. Useful for testing fixed-lot scenarios on a live account without changing real risk.
EA Virtual Balance
int1000The virtual account balance (in account currency) used when Use a Virtual Balance is enabled. Has no effect when Use a Virtual Balance is false.
Core execution parameters: which timeframe the EA reads signals on, trade direction, lot sizing, stop loss and take profit modes, and position management options.
Working timeframe
enumPERIOD_CURRENTThe timeframe the EA uses to read indicator values and generate signals. PERIOD_CURRENT means the EA reads the chart timeframe. Changing this lets you run a higher-timeframe strategy on a lower-timeframe chart.
Trade direction
enumbuy_sellRestricts which side the EA can open. Set to buy to only go long, sell to only go short, or buy_sell to trade both directions.
| Option | Behaviour |
|---|---|
| buy | Opens Buy positions only |
| sell | Opens Sell positions only |
| buy_sell | Opens both Buy and Sell positions |
Search signals on ...
enumbar_1Determines which bar the EA reads for entry signals. bar_1 uses the last fully closed bar (no repainting). bar_0 reads the live forming bar for faster signals at the cost of potential repainting.
bar_1 is the safer default for live trading. bar_0 is useful for scalping strategies where speed matters more than repainting protection.
Money management
enumriskSelects how the EA calculates the lot size for each trade.
| Option | Lot calculation |
|---|---|
| lots_min | Always trades the broker minimum lot |
| lot | Uses the fixed lot size set in Lot Size or Risk in Percentage |
| risk | Calculates lot size so the risk equals the percentage set in Lot Size or Risk in Percentage |
Lot Size or Risk in Percentage
double3.0Interpreted based on the Money management setting. When money management is lot, this is the fixed lot size. When it is risk, this is the percentage of account balance to risk per trade (requires a valid Stop Loss to be set).
Stop Loss Mode
enumSL_FIXEDSelects how the stop loss distance is calculated.
| Mode | Calculation |
|---|---|
| SL_FIXED | Uses the fixed number of points set in Fixed Stop Loss (points) |
| SL_RISK | Calculates a stop distance based on the Risk-Based Stop Loss (% of balance) |
Fixed Stop Loss (points)
uint0The stop loss distance in points when Stop Loss Mode is SL_FIXED. Set to 0 to disable the stop loss entirely. A point is the smallest price increment (e.g. 1 point on EURUSD = 0.00001).
Trading without a stop loss (value 0) exposes the account to unlimited drawdown if the market moves against the position.
Risk-Based Stop Loss (% of balance)
double1.0Active when Stop Loss Mode is SL_RISK. The EA calculates a stop distance such that losing the trade would cost this percentage of the account balance.
Take Profit Mode
enumTP_FIXEDSelects how the take profit distance is calculated.
| Mode | Calculation |
|---|---|
| TP_FIXED | Uses the fixed number of points set in Fixed Take Profit (points) |
| TP_RR | Sets the take profit as a multiple of the stop loss distance |
Fixed Take Profit (points)
uint0The take profit distance in points when Take Profit Mode is TP_FIXED. Set to 0 to disable the take profit.
Risk-Reward Ratio (TP = SL x RR)
double2.0Active when Take Profit Mode is TP_RR. The take profit is set at Stop Loss distance multiplied by this value. A value of 2.0 means the take profit is twice the stop loss distance.
Virtual Levels (hide SL/TP from broker)
boolfalseWhen enabled the EA manages stop loss and take profit internally without sending them to the broker. The broker sees positions with no SL/TP, which can prevent stop hunting on some brokers.
Draw Levels on Chart (requires Virtual Levels)
boolfalseWhen Virtual Levels is enabled and this is true, the EA draws horizontal lines on the chart at the virtual SL and TP levels so you can see them visually.
Only one Position
boolfalseWhen true the EA will not open a new position if one is already open on the symbol. Prevents pyramiding or stacking multiple positions from repeated signals.
Reverse All Trade Signal Combined
boolfalseInverts the final combined signal after all filters are applied. A Buy signal becomes a Sell and vice versa. Useful for testing counter-trend approaches without modifying the strategy logic.
Close opposite of All Trade Signal Combined
booltrueWhen true, receiving a Buy signal will close any open Sell positions (and vice versa) before opening the new position. Keeps the EA from holding conflicting positions simultaneously.
Two-level risk management system. Account Level monitors the overall account and closes positions when drawdown or profit thresholds are reached. Symbol Level does the same but scoped to the current trading symbol only.
Protection based on the account trades
boolfalseMaster switch for Account Level protection. When enabled the EA monitors overall account equity and closes positions automatically when the risk or profit percentage thresholds below are breached.
Total risk % on overall account
double1.0Account Level drawdown threshold. If total open positions are losing more than this percentage of the account balance, the EA triggers the close actions selected below.
Close all Trades (loss)
boolfalseWhen the account loss threshold is hit, close ALL open positions regardless of direction or profit.