# Chapter 5: Configuration Guide ## Complete Parameter Reference This chapter documents every input parameter in ERMT PME v1.2. --- ## Management Control ### InpManageAllPositions - **Type**: bool - **Default**: true - **Description**: Whether PME should manage all positions or only specific ones - **Recommendation**: Keep true unless using Magic Filter ### InpMagicFilter - **Type**: int - **Default**: 0 - **Range**: 0-999999 - **Description**: Filter positions by Magic Number. 0 = manage all positions - **Use Case**: If you run multiple EAs and want PME to manage only specific ones - **Example**: Set to 12345 to manage only positions with magic 12345 ### InpDefaultMode - **Type**: ENUM_MANAGEMENT_MODE - **Default**: MODE_BREAKEVEN_TRAIL - **Options**: - MODE_NONE: No active management (monitoring only) - MODE_BREAKEVEN_ONLY: Only apply breakeven - MODE_BREAKEVEN_TRAIL: Breakeven + trailing (recommended) - MODE_FULL: All features enabled ### InpStartLevel - **Type**: ENUM_MANAGEMENT_LEVEL - **Default**: LEVEL_STANDARD - **Options**: - LEVEL_CONSERVATIVE: Wider stops, less frequent partials - LEVEL_STANDARD: Balanced approach (recommended) - LEVEL_AGGRESSIVE: Tighter stops, frequent partials --- ## Phase Management Settings ### InpUsePhaseManagement - **Type**: bool - **Default**: true - **Description**: Enable/disable the phase-based profit protection system - **Recommendation**: Keep enabled for optimal performance ### Phase Triggers #### InpPhase1Trigger (PROTECTION) - **Type**: double - **Default**: 40.0 - **Range**: 20-100 points - **Description**: Profit threshold to enter PROTECTION phase - **Tuning**: - **Lower (30)**: Earlier protection, may cut some winners short - **Higher (50)**: More breathing room, but less protection - **Scalping**: 20-30 points - **Swing Trading**: 40-60 points - **Position Trading**: 80-100 points #### InpPhase2Trigger (ACCUMULATION) - **Type**: double - **Default**: 60.0 - **Range**: 40-150 points - **Must be**: > Phase1Trigger - **Recommendation**: 1.5× Phase1Trigger #### InpPhase3Trigger (MAXIMIZATION) - **Type**: double - **Default**: 100.0 - **Range**: 60-250 points - **Must be**: > Phase2Trigger - **Recommendation**: 1.67× Phase2Trigger #### InpPhase4Trigger (RUNNER) - **Type**: double - **Default**: 200.0 - **Range**: 100-500 points - **Must be**: > Phase3Trigger - **Recommendation**: 2× Phase3Trigger #### InpPhase5Trigger (EXTREME) - **Type**: double - **Default**: 400.0 - **Range**: 200-1000 points - **Must be**: > Phase4Trigger - **Recommendation**: 2× Phase4Trigger --- ## Risk Protection ### InpMaxLossPerTrade - **Type**: double - **Default**: 3.0 - **Range**: 0.1-20.0 (percentage) - **Description**: Maximum loss allowed on any single position - **Calculation**: Balance × (MaxLoss / 100) - **Example**: $10,000 × 0.03 = $300 max loss per trade - **Recommendations**: - Conservative: 1-2% - Standard: 3-5% - Aggressive: 5-10% - ⚠️ Never exceed 10% unless you're very experienced ### InpMaxDailyLoss - **Type**: double - **Default**: 10.0 - **Range**: 0.1-50.0 (percentage) - **Description**: Maximum cumulative loss allowed in one day - **Action**: Closes all positions if breached - **Recommendations**: - Conservative: 5-10% - Standard: 10-20% - Aggressive: 20-30% - ⚠️ Essential for preventing "revenge trading" spirals ### InpMaxDrawdown - **Type**: double - **Default**: 25.0 - **Range**: 0.1-100.0 (percentage) - **Description**: Maximum peak-to-valley decline before emergency shutdown - **Action**: Closes all positions and stops trading - **Recommendations**: - Conservative: 15-20% - Standard: 20-30% - Aggressive: 30-40% - ⚠️ This is your "circuit breaker" ### InpMaxCorrelation - **Type**: double - **Default**: 0.80 - **Range**: 0.0-1.0 - **Description**: Maximum correlation allowed between positions - **Purpose**: Prevent over-concentration in related instruments - **Example**: 0.80 means max 80% correlation (e.g., EURUSD and GBPUSD) --- ## Emergency Protection ### InpApplyEmergencyStops - **Type**: bool - **Default**: true - **Description**: Automatically add stops to positions without SL - **Recommendation**: Always keep enabled ### InpEmergencySLMultiplier - **Type**: double - **Default**: 7.0 - **Range**: 1.0-20.0 - **Description**: ATR multiplier for emergency stop-loss distance - **Calculation**: SL Distance = ATR × Multiplier - **Example**: ATR = 20 pips, Multiplier = 7 → SL at 140 pips - **Tuning**: - **Tight (3-5)**: For scalping or high-confidence entries - **Standard (7-10)**: General purpose - **Wide (10-20)**: Swing/position trading or volatile instruments ### InpEmergencyTPMultiplier - **Type**: double - **Default**: 4.0 - **Range**: 1.0-20.0 - **Description**: ATR multiplier for emergency take-profit - **Purpose**: Set a reasonable TP if position has none - **Recommendation**: 0.5× to 0.75× of SL multiplier --- ## Dynamic Stop Management ### InpDynamicStops - **Type**: bool - **Default**: true - **Description**: Enable dynamic adjustment of stops based on profit - **Features**: - Tightens stops as profit grows - Widens stops in strong momentum - Adapts to volatility changes ### InpTightenOnProfit - **Type**: bool - **Default**: true - **Description**: Automatically tighten stops when profit threshold reached - **Works with**: InpTightenThreshold ### InpTightenThreshold - **Type**: double - **Default**: 75.0 - **Range**: 30-200 points - **Description**: Profit level at which to begin tightening stops - **Recommendation**: Between Phase2 and Phase3 triggers ### InpProtectProfits - **Type**: bool - **Default**: true - **Description**: Enable profit protection mechanisms - **Features**: - Prevents SL from moving backward - Maintains minimum locked profit - Enforces progressive locking ### InpProtectionThreshold - **Type**: double - **Default**: 100.0 - **Range**: 50-300 points - **Description**: Profit level where maximum protection activates - **Recommendation**: Same as Phase3Trigger --- ## Breakeven Settings ### InpBreakevenEnabled - **Type**: bool - **Default**: false (DISABLED in v1.2) - **Description**: Enable traditional breakeven system - **⚠️ Note**: Disabled by default because phase locks provide superior protection - **Conflict**: If both breakeven and phase management are enabled, phase management takes precedence ### InpBreakevenTrigger - **Type**: double - **Default**: 40.0 - **Range**: 10-100 points - **Description**: Profit at which to move SL to breakeven - **Ignored if**: InpUsePhaseManagement = true ### InpBreakevenOffset - **Type**: double - **Default**: 8.0 - **Range**: 0-50 points - **Description**: Points above entry to set SL (spread + small profit) - **Example**: Entry 1.0850, Offset 8pts → SL at 1.0858 ### InpMultiLevelBE - **Type**: bool - **Default**: false - **Description**: Enable multiple breakeven levels - **Purpose**: Progressive breakeven at different profit milestones --- ## Trailing Stop Settings ### InpTrailingMethod - **Type**: ENUM_TRAILING_METHOD - **Default**: TRAIL_ATR - **Options**: - TRAIL_NONE: No trailing - TRAIL_FIXED: Fixed point distance - TRAIL_ATR: ATR-based (recommended) - TRAIL_PARABOLIC: Parabolic SAR-based - TRAIL_ADAPTIVE: Combines multiple methods ### InpTrailStart - **Type**: double - **Default**: 60.0 - **Range**: 20-200 points - **Description**: Profit at which trailing starts - **Recommendation**: Same as Phase2Trigger ### InpTrailDistance - **Type**: double - **Default**: 40.0 - **Range**: 5-200 points - **Description**: Distance from current price to trail (if TRAIL_FIXED) - **Recommendation**: Use TRAIL_ATR instead for dynamic distance ### InpTrailStep - **Type**: double - **Default**: 15.0 - **Range**: 1-100 points - **Description**: Minimum price movement before adjusting trailing stop - **Purpose**: Reduce broker requests and avoid whipsaws - **Tuning**: - **Small (5-10)**: Tight tracking, more updates - **Medium (15-20)**: Balanced - **Large (30-50)**: Loose tracking, fewer updates ### InpAdaptiveTrailing - **Type**: bool - **Default**: true - **Description**: Adjust trailing distance based on volatility and momentum - **Recommendation**: Keep enabled ### Volatility Multipliers #### InpLowVolatilityMultiplier - **Type**: double - **Default**: 0.8 - **Description**: Trail distance multiplier in low volatility - **Effect**: Tighter trails when market is calm #### InpHighVolatilityMultiplier - **Type**: double - **Default**: 1.5 - **Description**: Trail distance multiplier in high volatility - **Effect**: Wider trails to avoid whipsaws #### InpVolatilityThreshold - **Type**: double - **Default**: 1.2 - **Description**: ATR threshold to classify as "high volatility" - **Calculation**: Current ATR / Average ATR > Threshold = High Volatility --- ## Partial Close Strategy ### InpPartialEnabled - **Type**: bool - **Default**: true - **Description**: Enable multi-level partial closures - **Recommendation**: Keep enabled for profit banking ### InpPartialLevels - **Type**: int - **Default**: 4 - **Range**: 1-10 - **Description**: Number of partial closure levels - **Standard**: 4 levels (50/100/200/400 points) ### Partial Level Configuration Each level has two parameters: Trigger (profit points) and Percent (close %). #### Level 1 - **InpPartialTrigger1**: 50.0 points - **InpPartialPercent1**: 20.0% - **Purpose**: Bank first profits, reduce risk #### Level 2 - **InpPartialTrigger2**: 100.0 points - **InpPartialPercent2**: 20.0% - **Purpose**: Continue profit banking #### Level 3 - **InpPartialTrigger3**: 200.0 points - **InpPartialPercent3**: 25.0% - **Purpose**: Secure majority of profit #### Level 4 - **InpPartialTrigger4**: 400.0 points - **InpPartialPercent4**: 20.0% - **Purpose**: Final banking, keep small runner ### InpRunnerPercentage - **Type**: double - **Default**: 15.0 - **Range**: 5-50 (percentage) - **Description**: Minimum position size to keep as final runner - **Example**: 15% means at least 15% of original size remains ### InpRunnerTrailMultiplier - **Type**: double - **Default**: 2.0 - **Range**: 1.0-5.0 - **Description**: Wider trail multiplier for runner portion - **Purpose**: Give runner more room to capture extended moves ### InpRunnerExitThreshold - **Type**: double - **Default**: 500.0 - **Range**: 200-2000 points - **Description**: Extreme profit level to consider closing runner - **Purpose**: Exit on exhaustion signals at extreme profits --- ## Exit Management ### InpUseTechnicalExits - **Type**: bool - **Default**: false - **Description**: Close positions on technical reversal signals - **Signals**: RSI extremes, MACD crossovers, trend breaks ### InpTimeBasedExits - **Type**: bool - **Default**: false - **Description**: Close positions after maximum time in trade - **Purpose**: Exit stale positions ### InpMaxBarsInTrade - **Type**: int - **Default**: 1000 - **Range**: 50-10000 bars - **Description**: Maximum bars a position can remain open - **Calculation**: Based on chart timeframe ### InpReduceRiskOverTime - **Type**: bool - **Default**: false - **Description**: Gradually tighten stops as time passes - **Purpose**: Encourage quicker profit-taking --- ## Phase Lock Settings ### InpUsePhaseProfitLocks - **Type**: bool - **Default**: true - **Description**: Enable phase-based progressive profit locking - **Recommendation**: Always keep enabled ### InpPhaseLockBreathingRoom - **Type**: double - **Default**: 50.0 - **Range**: 0-100 (percentage) - **Description**: Retracement allowed from peak before SL hits - **Example**: 50% means position can lose half of unrealized profit ### InpMaintainLockOnRetreat - **Type**: bool - **Default**: true - **Description**: Keep highest phase lock when retreating to lower phase - **Recommendation**: Always keep enabled (retreat protection) ### InpRetreatLockMultiplier - **Type**: double - **Default**: 1.2 - **Range**: 1.0-2.0 - **Description**: Tighten lock by this factor when retreating - **Example**: 1.2 = 20% tighter lock on retreat ### Phase Minimum Locks #### InpPhase1MinLock - **Default**: 10.0 points (PROTECTION phase) #### InpPhase2MinLock - **Default**: 25.0 points (ACCUMULATION phase) #### InpPhase3MinLock - **Default**: 50.0 points (MAXIMIZATION phase) #### InpPhase4MinLock - **Default**: 100.0 points (RUNNER phase) #### InpPhase5MinLock - **Default**: 200.0 points (EXTREME phase) **Purpose**: Safety floor - SL never goes below these levels for each phase --- ## Time Filters ### InpUseTimeFilter - **Type**: bool - **Default**: false - **Description**: Only manage positions during specific hours ### InpStartHour - **Type**: int - **Default**: 0 - **Range**: 0-23 - **Description**: Hour to start management (broker time) ### InpEndHour - **Type**: int - **Default**: 24 - **Range**: 0-24 - **Description**: Hour to stop management (broker time) ### InpFridayClose - **Type**: bool - **Default**: false - **Description**: Close all positions on Friday before weekend ### InpFridayCloseHour - **Type**: int - **Default**: 23 - **Range**: 0-23 - **Description**: Hour on Friday to close positions --- ## Session Management ### InpSessionBasedManagement - **Type**: bool - **Default**: true - **Description**: Adjust management based on trading session - **Sessions**: Asian, London, New York ### Asian Session #### InpAsianTrailMultiplier - **Default**: 1.2 (wider) - **Rationale**: Lower volatility, avoid whipsaws #### InpAsianPartialMultiplier - **Default**: 1.5 (less frequent) - **Rationale**: Slower profit-taking in ranging markets ### London Session #### InpLondonTrailMultiplier - **Default**: 1.0 (standard) #### InpLondonPartialMultiplier - **Default**: 1.0 (standard) ### New York Session #### InpNewYorkTrailMultiplier - **Default**: 0.9 (tighter) - **Rationale**: High volatility, capture momentum #### InpNewYorkPartialMultiplier - **Default**: 0.8 (more frequent) - **Rationale**: Bank profits quickly during volatile moves --- ## Advanced Settings ### InpUseVolumeAnalysis - **Type**: bool - **Default**: true - **Description**: Consider volume when making exit decisions ### InpHighVolumeThreshold - **Type**: double - **Default**: 1.5 - **Description**: Relative volume threshold for "high volume" ### InpExtendTargetsOnMomentum - **Type**: bool - **Default**: true - **Description**: Keep positions longer in strong momentum ### InpMomentumThreshold - **Type**: double - **Default**: 2.0 - **Description**: ATR-based momentum threshold ### InpUseSmartExits - **Type**: bool - **Default**: true - **Description**: Avoid closing at support/resistance ### InpMinProfitForExit - **Type**: double - **Default**: 30.0 - **Description**: Minimum profit before technical exit signals apply ### InpCheckSupportResistance - **Type**: bool - **Default**: true - **Description**: Check S/R levels before exiting ### InpSRBuffer - **Type**: double - **Default**: 10.0 - **Description**: Points around S/R to avoid closing --- ## Display Settings ### InpShowDashboard - **Type**: bool - **Default**: true - **Description**: Display on-chart dashboard ### InpDashboardX - **Type**: int - **Default**: 20 - **Description**: Dashboard X position (pixels from left) ### InpDashboardY - **Type**: int - **Default**: 50 - **Description**: Dashboard Y position (pixels from top) ### InpUpdateFrequency - **Type**: int - **Default**: 2 - **Range**: 1-60 seconds - **Description**: Dashboard update interval --- ## System Settings ### InpLogLevel - **Type**: ENUM_LOG_LEVEL - **Default**: LOG_INFO - **Options**: - LOG_NONE: No logging - LOG_ERROR: Errors only - LOG_WARNING: Errors + warnings - LOG_INFO: Normal operation (recommended) - LOG_DEBUG: Detailed debugging ### InpSaveReports - **Type**: bool - **Default**: true - **Description**: Save periodic snapshots and final reports ### InpEmailAlerts - **Type**: bool - **Default**: false - **Description**: Send email alerts on critical events - **Requires**: MT5 email configuration ### InpPushAlerts - **Type**: bool - **Default**: false - **Description**: Send push notifications to mobile - **Requires**: MT5 push notification setup ### InpSoundAlerts - **Type**: bool - **Default**: true - **Description**: Play sound alerts --- ## Preset Configurations ### Conservative ``` Max Loss Per Trade: 2% Max Daily Loss: 10% Phase 1 Trigger: 50 pts Breakeven: Enabled at 40 pts Trailing: Wide (50 pts) Partial Close: Aggressive (more frequent) ``` ### Balanced (Recommended) ``` Max Loss Per Trade: 5% Max Daily Loss: 20% Phase 1 Trigger: 40 pts Breakeven: Disabled (use phase locks) Trailing: ATR-based adaptive Partial Close: Standard 4 levels ``` ### Aggressive ``` Max Loss Per Trade: 8% Max Daily Loss: 30% Phase 1 Trigger: 30 pts Breakeven: Disabled Trailing: Tight (25 pts) Partial Close: Less frequent (larger partials) ``` --- **Return to**: [Main README](README.md)