DaneTrades Liquid Reflex User Guide
DaneTrades Liquid Reflex is a mean-reversion Expert Advisor designed mainly for EURGBP on the M15 timeframe. It looks for reversal-style opportunities and can manage trades as a basket with controlled recovery entries and a weighted basket exit.
The EA is built with EURGBP M15 in mind, but it can also be tested on other mean-reverting pairs if settings are adjusted carefully.
The default inputs are the recommended starting point.
Quick Start
- Open an EURGBP chart on the M15 timeframe.
- Attach DaneTrades Liquid Reflex to the chart.
- Keep the default settings for your first tests.
- Make sure AutoTrading is enabled.
- Test on demo or in the Strategy Tester before using a live account.
- Only optimize a few settings at a time.
How the EA Works
The EA looks for mean-reversion conditions and opens an initial trade when its entry rules are met. If grid recovery is enabled and price moves against the position, the EA can open additional recovery levels according to the grid settings.
Rather than managing each position separately with an individual take profit, the EA manages the basket as a whole. It uses the weighted average entry price of the basket and closes the full basket when the basket target is reached.
This means the EA is designed around basket management rather than single-trade management.
Input Guide
General Settings
MagicNumber
A unique ID for the EA’s trades.
If you run multiple EAs or multiple copies of this EA, use a different magic number for each one.
TimeStartHour
The hour the EA starts looking for new initial entries.
InpTimeWindow
The number of hours after the start time during which the EA is allowed to open new initial trades.
UseRSIFilter
If true, the EA uses the RSI filter for the initial entry.
If false, RSI is ignored.
UseBBandsFilter
If true, the EA uses Bollinger Bands as part of the initial entry conditions.
If false, Bollinger Bands are ignored.
UseHTFHighLowFilter
If true, the EA uses a higher-timeframe high/low location filter for the initial entry.
In simple terms, this helps check whether price is near a higher-timeframe extreme before allowing the trade.
If false, that extra location filter is ignored.
Grid Recovery - Core
EnableGridRecovery
Turns the basket recovery logic on or off.
If disabled, the EA behaves more like a single-entry strategy.
InitialLot
The lot size used for the first trade in a basket.
MaxLevels
The maximum number of positions allowed in a basket, including the first trade.
InitialGridDistancePoints
The base distance between basket entries.
If set to 0, the EA uses the setup’s own measured distance automatically.
GridExpansionFactor
Controls how spacing changes as the basket deepens.
Higher values mean wider spacing for later recovery levels.
LotScalingMode
- MultiplierFromInitial - Each recovery level is based on the original initial lot.
- MultiplierFromPrevious - Each recovery level is based on the previous level’s lot size.
LotMultiplier
Controls how much lot size increases from one level to the next.
1.0 means no increase.
Higher values make recovery more aggressive.
Grid Recovery - Basket TP
BasketCloseMode
Controls how the whole basket is closed.
- PointsFromWeightedAverage - Closes the basket when price reaches a target measured from the basket’s weighted average entry.
- CurrencyTarget - Closes the basket when floating profit reaches a cash value.
- PercentOfBalance - Closes the basket when floating profit reaches a percentage of account balance.
BasketTakeProfitPoints
Used when BasketCloseMode = PointsFromWeightedAverage.
BasketTakeProfitCurrency
Used when BasketCloseMode = CurrencyTarget.
BasketTakeProfitPercent
Used when BasketCloseMode = PercentOfBalance.
Grid Recovery - Safety
MaxBasketLossMode
Sets how maximum basket loss is measured.
- BasketLossCurrency
- BasketLossPercentBalance
- BasketLossPercentEquity
MaxBasketDurationMinutes
Maximum time a basket is allowed to remain open.
0 means no time limit.
MaxBasketLossCurrency
Used when the max basket loss mode is set to currency.
MaxBasketLossPercent
Used when the max basket loss mode is based on balance or equity percentage.
UseEmergencyStopLoss
If true, the EA places an emergency basket stop loss.
This is mainly intended for broker or prop-firm rules and should normally be treated as a last-resort stop rather than a normal exit.
EmergencyStopLossPoints
The emergency basket stop distance in points.
MaxAllowedSpreadPoints
Blocks new recovery entries if spread is above this level.
0 means no spread filter.
MaxEquityDrawdownPercentForNewEntries
Stops new recovery levels from opening if account drawdown becomes too large.
CloseBasketOnMaxLoss
If true, the EA will force-close the basket when the maximum basket loss threshold is reached.
BlockNewLevelsOnHighDD
If true, the EA stops adding new levels when drawdown is already too high.
Grid Recovery - Execution
AllowNewInitialEntryIfBasketExists
If false, the EA will not open a new initial trade while a basket is already active.
This should usually remain false.
Tester Settings
TesterMinTrades
A Strategy Tester filter.
If a backtest produces fewer trades than this number, the custom optimization result may be reduced or rejected.
Inputs Worth Optimizing
The settings most worth optimizing are:
- UseRSIFilter
- UseBBandsFilter
- UseHTFHighLowFilter
- InitialGridDistancePoints
- GridExpansionFactor
- LotMultiplier
These are the most useful places to start because they control:
- entry selection
- basket spacing
- recovery aggression
Recommended Optimization Order
1. Entry Filters
Start with the three filter toggles:
- UseRSIFilter
- UseBBandsFilter
- UseHTFHighLowFilter
Try different combinations such as:
- all off
- BBands only
- HTF High/Low only
- BBands + HTF
- RSI + BBands
- RSI + HTF
- all on
Do not assume more filters are automatically better. In many cases, fewer filters can give more robust long-term behavior.
2. Initial Grid Distance
Then optimize:
- InitialGridDistancePoints
Suggested values to test on EURGBP M15:
- 0
- 40
- 60
- 80
- 100
- 120
- 140
Notes:
- 0 means the EA will use the setup’s own measured distance.
- Lower values make recovery start sooner.
- Higher values make baskets wider and slower.
3. Grid Expansion Factor
Then optimize:
- GridExpansionFactor
Suggested range:
- 1.0
- 1.2
- 1.4
- 1.6
- 1.8
Simple guide:
- 1.0 = equal spacing
- above 1.0 = wider spacing as levels deepen
4. Lot Multiplier
Then optimize:
- LotMultiplier
Suggested range:
- 1.0
- 1.2
- 1.3
- 1.4
- 1.5
- 1.6
Simple guide:
- 1.0 = no lot increase
- 1.3 to 1.5 = moderate recovery
- higher values = more aggressive basket growth
Practical Optimization Tips
- Only optimize a few settings at once.
- Keep the rest of the inputs fixed while testing the important ones.
- Start with EURGBP M15 before trying other symbols.
- Use long enough test periods to include:
- quiet periods
- trending periods
- volatile periods
- Compare more than just net profit. Look at:
- drawdown
- average basket depth
- stability over time
- number of forced exits
- smoothness of the equity curve
Conservative, Balanced, and Aggressive Styles
More Conservative
A more conservative version usually uses:
- wider initial grid distance
- higher expansion factor
- lower lot multiplier
- at least one entry filter enabled
Balanced
A balanced version usually uses:
- moderate grid spacing
- moderate lot multiplier
- one or two filters depending on test results
More Aggressive
A more aggressive version usually uses:
- tighter grid spacing
- lower spacing expansion
- higher lot multiplier
- fewer entry filters
Aggressive settings may improve backtest profit, but they will usually increase basket depth and drawdown.
Safety Notes
- Keep AllowNewInitialEntryIfBasketExists = false unless you have a very specific reason not to.
- Only enable UseEmergencyStopLoss if you need a broker-visible emergency stop.
- If emergency stop is enabled, it should usually be set wide enough that it acts as a true last resort.
- Be cautious with very high MaxLevels combined with a high LotMultiplier.
- Avoid optimizing too many safety settings at the same time as the main strategy settings.
Best Use Case
DaneTrades Liquid Reflex is best suited to:
- EURGBP
- M15
- mean-reverting market conditions
- traders who are comfortable with basket-based recovery systems
It can also be tested on other mean-reverting pairs, but each symbol should be validated separately.
Final Advice
Start with the default settings. They are the recommended starting point.
Then optimize in this order:
- UseRSIFilter
- UseBBandsFilter
- UseHTFHighLowFilter
- InitialGridDistancePoints
- GridExpansionFactor
- LotMultiplier
The goal is not just to find the highest backtest profit. The goal is to find a version that stays stable across different periods and keeps basket behavior under control.


