Auftrag beendet
Spezifikation
IMPORTANT:
Upon agreeing on a Project, I will be able to share as well:
1) Screenshot of the logics explained above for better understanding;
2) PineCode Script of the Indicator I use for Fractal Market Structure (so you can turn it into MQL5).
Summary
This Expert Advisor automates a hedging strategy based on market structure analysis using fractals. It identifies Break of Structure (BoS) for trend continuation and Change of Character (ChoCH) for potential reversals, and executes trades accordingly.
The EA is designed to work across all currency pairs and timeframes, including high-frequency 1-minute scalping. It opens a trend-aligned trade after a BoS and adds a hedged trade in the opposite direction upon ChoCH, managing drawdowns without stop losses.
Trades are closed based on a fixed take profit, and when profits are realized, they are used to trim opposing trades. The EA supports dynamic lot sizing based on equity growth and offers full visualization (arrows, labels, and on-screen dashboard) for transparency.
It includes robust error handling, retry logic and optional alerts. The strategy supports all major backtesting modes and is optimized for low-latency execution.
Key inputs are configurable, including fractal sensitivity, TP level, retracement filter, and lot scaling. The system is optimized for scalability, clarity, and performance in both manual and automated trading environments.
REQUIREMENTS SPECIFICATION FOR MQL5 EXPERT ADVISOR
Title: Fractal-Based CHoCH/BOS Hedging Strategy EA (Multi-Pair, Multi-Timeframe)
1. Trading Idea
The EA will detect market structure using fractal-based logic to identify:
- Break of Structure (BoS): trend continuation
- Change of Character (ChoCH): potential trend reversal
The EA trades using a hedging approach:
- It opens a position in the direction of the current trend (as determined by the last BoS).
- When a ChoCH occurs, it opens a hedged trade in the opposite direction.
- Trades are not closed when new ones are opened; they are trimmed based on take profit logic.
The strategy runs on all currency pairs and all timeframes, including 1-minute scalping charts.
2. Fractal Detection
- Uses fractal detection with a default lookback of 5 bars, configurable via input.
- A fractal is detected when a candle’s high is higher/lower than the two candles before and after.
- Recalculation frequency (on tick vs on bar close) is controlled by a boolean input.
- Fractal points and BoS/ChoCH events must be visualized on the chart with labels or arrows.
3. Signal Logic
Buy Signal:
- If no trade is open and the indicator confirms bullish market structure → open a Buy trade.
- If previous trade direction was bearish and a ChoCH to bullish occurs → open a Buy hedged trade.
- ChoCH is confirmed only on candle close above previous bearish fractal high.
- Optional retracement filter: configurable (0–3 opposite candles must form before breakout).
Sell Signal:
- If no trade is open and structure is bearish → open Sell trade.
- If a ChoCH to bearish occurs → open a Sell hedged trade.
- ChoCH is confirmed only on candle close below previous bullish fractal low.
- Retracement rule same as Buy.
4. Signal Lifetime
- A BoS or ChoCH signal is valid until it is invalidated by an opposite signal or replaced by a newer fractal structure.
5. Trade Entry Conditions
- All trades are placed at market after signal confirmation at bar close.
- No filters (RSI, time, volume) are used.
- The EA must support hedging and allow multiple trades in both directions.
6. Position Management
- Each trade has a fixed Take Profit (TP) of 10 pips, adjustable via input.
- No Stop Loss is used (hedging logic manages drawdown).
- If TP is hit and there’s no hedged trade, a new trade is placed in the same direction at that price level.
- If TP is hit and there is a hedged trade:
- 50% of profit is used to reduce the volume of the opposite trade (trim loss).
- When a new ChoCH occurs, a new hedged trade is opened.
- The new trade's lot size = 1 lot minus the already trimmed open hedge.
7. Lot Size Calculation
- Default: 1 lot, adjustable via input.
- Dynamic adjustment: if equity increases by 10%, increase lot size proportionally to maintain TP value growth.
- Initial capital input should define base profit expectation per 10 pips.
8. Error Handling
- Best practice handling:
- Retry failed orders after 500ms (up to 3 times).
- Log all order failures, price info, signal type, lot size.
- Display error codes in Experts tab.
- No spam alerts, but a log file with timestamped messages is required.
- Optionally: add terminal notification on failed order (optional toggle).
9. Other Features
- On-screen dashboard showing:
- Total BOS and ChoCH events
- Current trend (Bullish/Bearish)
- Active Buy/Sell trade counts and directions
- Arrows and/or labels must appear for:
- Bullish/Bearish fractals
- BoS (green/red label)
- ChoCH (labeled clearly)
- No need to separately enable/disable Buy or Sell since it’s a hedging EA.
10. Testing and Optimization
- Must support visual backtesting mode with all plotted elements.
- Must be testable in:
- “Open price only”
- “Every tick”
- “Every tick based on real ticks”
- Should run on low timeframes (1M, 5M) without lag.
- Compatible with high-frequency use cases (scalping).
Example of the iput Parameters Overview
| Parameter | Type | Description |
|---------------------------|------------|-------------------------------------------------|
| FractalLength | Integer | Bars to look back for fractal detection |
| UseTickRecalculation | Boolean | Use tick-by-tick vs bar-close for detection |
| InitialLotSize | Float | Starting lot size |
| TP_Pips | Integer | Take profit in pips |
| RetracementCandles | Integer | 0–3 required opposite candles before BoS/ChoCH |
| DynamicLotAdjustment | Boolean | Enable/disable 10% equity-based lot scaling |
| EnableNotifications | Boolean | Alert user on trade error |
| EnableDashboard | Boolean | Show dashboard with structure and trend info |