Version 1.28 2025.11.10
Version Core Stability and Order Management Enhancement

This update is primarily focused on resolving critical UI interaction issues and ensuring robust, timely application of risk parameters on all trades.

Key Developments:

Critical UI Layering Fix (Click/Overlap Issue):

Development: The chart layer is now explicitly forced to the background using ChartSetInteger(0, CHART_FOREGROUND, false).

Benefit: Resolves previous issues where chart elements (such as price labels or indicators) would interfere with dashboard object clicks, guaranteeing 100% reliable click interaction across the entire UI.

Reworked Cell Drawing Logic for Maximum Stability:

Development: All interactive dashboard elements (including "TF", "ON/OFF", and status displays) have been refactored to utilize the robust OBJ_BUTTON object type.

Benefit: Ensures stable and immediate click detection, making the dashboard highly responsive.

Robust Post-Fill SL/TP Application:

Development: Improved the stop modification function to use a multi-attempt logic with brief retries after an order is filled.

Benefit: Guarantees that the Stop Loss (SL) and Take Profit (TP) parameters are successfully applied immediately after a position is opened, even if the server initially delays or rejects the modification request, thereby increasing trade safety.

Global P/L Target Trigger Reset:

Development: After a Global Profit Target (g_ProfitTarget) or Loss Target (g_LossTarget) is hit and positions are closed, the respective target variable is now automatically reset to zero.

Benefit: Prevents accidental immediate re-triggering of the closure logic, requiring the user to set a new, deliberate target for the next trading cycle.
Version 1.23 2025.10.07
1) Trading logic & profit management

Removed the “Stop System” → EA runs continuously (no master stop mode).

Added “Lock-first, Let-run” Profit Plan:

On reaching TP1 (e.g., 250 pips): partial close (50%) + move SL to breakeven + spread.

Remove original TP on the remaining portion and enable ATR Trailing to let profits run.

One-time gating: a ticket can enter Profit Run only once.

Added ATR-based Breakeven/Trailing option (can co-exist with pip-based mode).

2) Symbol resolution & broker compatibility

New ResolveSymbolName():

Handles broker suffixes automatically.

Auto-reverses FX pairs (e.g., JPYUSD → USDJPY).

Fuzzy match for near-name symbols if exact isn’t found.

3) Dashboard UI/UX

Removed TH/EN toggle button (language still controllable via Language input).

Removed [ Auto OFF all ] and [ Auto ON all ] buttons.

Refined font sizes / column widths / row heights for better legibility.

Softer header color theme.

Top summary bar keeps [Profit] / [Loss] / [Close All] and a Net Targets panel with + / - controls.

4) Order control & account compatibility

Added trade-permission guards: no orders if terminal/account trading is disabled.

Added PartialCloseSmart: partial close works on both netting and hedging accounts (fallback via offset order).

Added SafePositionModify: SL/TP changes honor freeze/stops levels to reduce modification failures.

5) Stability & resource handling

Removed blocking waits (e.g., Sleep) from indicator warm-up path.

Added ReleaseAllIndicatorHandles() on OnDeinit() to prevent handle leaks.

Re-sequenced OnTimer() so UpdateRows / ProfitPlan / NetTargets / AutoTrade / BE / TS run in a coherent pipeline.

6) Account-wide Net Targets

Preserved & enhanced Global Net TP/SL with runtime adjustment from the UI (+ / -).

On hit → close all and notify.
Version 1.9 2025.09.20
Global Net Targets (dashboard-adjustable)

New runtime variables: g_NetTP (global net take-profit) and g_NetSL (global net stop-loss).

New inputs for initial values: GlobalNetTakeProfitInit, GlobalNetStopLossInit, and step size NetTargetStep.

New UI row on the dashboard showing Net TP and Net SL with [–] / [+] buttons to adjust live (no re-attach, no recompile).

New logic CheckNetTargets() closes all open positions once:

total floating P/L ≥ g_NetTP, or

total floating P/L ≤ –g_NetSL
…and sends a notification.

UI & object safety fixes

Correct usage of ObjectSetInteger() (proper signature and parameters).

Added OBJ_PREFIX to namespace all chart objects and a safe cleanup DeleteAllMine().

Pips/points handling

PipsToPoints() helper plus an InputsArePips toggle to interpret distance inputs as pips (handles 3/5-digit symbols).

Indicator warm-up & stability

Series warm-up and handle readiness checks to reduce empty buffers at startup, improving backtest/visual stability.

Trailing & breakeven robustness

Respect stop/freeze levels, spread, and buffer when modifying SL (uses ClampSLvsTP() and CanModifySLNow()).

Auto-profit compatibility

Legacy AutoProfitTarget kept (closes all when net ≥ target) and works alongside the new global net targets.

Netting/Hedging awareness

Volume/limit checks account for SYMBOL_VOLUME_LIMIT and existing net positions to behave safely on netting accounts.