πŸš€ DCA BOT - UPDATE HISTORY

πŸ”₯ VERSION 9.0 (27/02/2026)

Launch Smart DCA and add Filter Action Mode new!

  • βœ… Auto Calc smart: Only Enable/Disable β€” when enabled, EA automatically calculates both Step + Multiplier from price channel
  • βœ… Config Source: Copy configuration from different Range β€” reduce setup time when setting multiple similar timeframes
  • βœ… Add 2 new Filter Action Modes: Mode 2 β€” Continue+Block 2C and Mode 7 β€” Leo Thang (Escalation)
  • βœ… Smart DCA Panel toggle: Enable/disable Smart DCA panel display from button on Main Panel

πŸ†• Smart DCA β€” Auto Calculate Step + Multiplier

β€’ Disable β€” use fixed Step/Multi
β€’ Enable β€” EA automatically calculates Step + Multiplier from price channel

Khi Enable, EA will automatically calculate Step (distance between levels) and Multiplier (lot multiplier) based on current price channel amplitude, helping DCA adapt to market without manual adjustment.

πŸ’‘ Support 4 price channels: Bollinger Bands, Keltner Channel, Donchian Channel, Pivot Breakout

πŸ†• Filter Action Mode β€” Full 8 Modes (0-7)

Add 2 new action modes when filter detects Trending:

ModeNameChange
0Close 2C + Block 2Cβ€”
1Block 1 Way Defaultβ€”
2Continue + Block 2CπŸ†• New addition
3Close 2C + Block 1CPrevious = Mode 2
4Smart ResetPrevious = Mode 3
5Bridge + Block 1CPrevious = Mode 4
6Switch Market StopPrevious = Mode 5
7Leo Thang (Escalation)πŸ†• New addition
πŸ’‘ Mode 7 β€” Leo Thang (Escalation):
React by level based on number of filters reporting Trending:
β€’ Below N filters reporting Trending β†’ only Block 2 ways (light)
β€’ From N filters onwards β†’ Close 2 chains + Block (strong)
N = Escalation threshold (default 2). More filters agree on Trending β†’ action more decisive.

πŸ”₯ VERSION 8.7 (22/02/2026)

Add 11 new filters comprehensive β€” Increase total to 29 filters!

  • βœ… DMI Filter: Directional Movement Index (+DI / βˆ’DI) β€” Detect strong trend in specific direction
  • βœ… VIDYA Filter: Variable Index Dynamic Average β€” Adaptive MA line, measure slope to identify trending
  • βœ… RVI Filter: Relative Vigor Index β€” Measure closing strength, filter Overbought/Oversold
  • βœ… Elder Power Filter: Bulls Power + Bears Power β€” Measure buying/selling power by Dr. Elder
  • βœ… MACD Histogram Filter: Measure trend momentum using MACD histogram
  • βœ… Parabolic SAR Filter: Stop And Reverse β€” Identify trend by SAR-Close distance
  • βœ… Supertrend Filter: Identify trend based on volatility and price line
  • βœ… Ichimoku Cloud Filter: Comprehensive trend and resistance filter from Japan
  • βœ… ATR Filter: Alert extreme volatility zones, block orders when market too risky
  • βœ… Squeeze Momentum Filter: Detect price squeeze zones ready to burst (BB inside KC)
  • βœ… OBV Filter: On Balance Volume β€” Confirm trend breakout through volume flow
  • βœ… Total 29 filters: Increase from 18 to 29 filters, divided into 5 clear strategy groups

πŸ†• Filter 19: DMI β€” Directional Movement Index (+DI / βˆ’DI)

DMI consists of 2 lines: +DI (uptrend strength) and βˆ’DI (downtrend strength). When difference |+DI βˆ’ βˆ’DI| is large β†’ market trending strong. Unlike ADX: DMI clearly distinguishes direction up or down.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable DMI filter
Trending Level10Block when |+DI βˆ’ βˆ’DI| β‰₯ value (strong trend)
Period14DMI period
TimeframeCurrentDMI timeframe
πŸ’‘ Example:
+DI = 25, βˆ’DI = 12 β†’ Gap = 13 β‰₯ 10 β†’ Trending ↑ ❌ (block BUY theo Action Mode)
+DI = 18, βˆ’DI = 16 β†’ Gap = 2 < 10 β†’ Sideway βœ… (normal DCA)

πŸ†• Filter 20: VIDYA β€” Variable Index Dynamic Average

VIDYA is adaptive moving average (adaptive MA) using Chande Momentum Oscillator (CMO) to self-adjust speed. EA measures slope of VIDYA β†’ large slope = strong trending.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable VIDYA filter
MA Period14VIDYA line period
CMO Period9Chande Momentum period (self-adjust speed)
Slope Threshold50Slope threshold (points/bar). Trending when slope β‰₯ value
TimeframeCurrentVIDYA timeframe
πŸ’‘ Example:
Slope = 80 β‰₯ 50 β†’ VIDYA rises steeply β†’ Trending ↑ ❌
Slope = 15 < 50 β†’ VIDYA is flat β†’ Sideway βœ…

πŸ†• Filter 21: RVI β€” Relative Vigor Index

RVI measures closing strength vs candle range. Rising market β†’ close near high β†’ RVI positive. Falling β†’ RVI negative. Acts like Overbought/Oversold filter.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable RVI filter
Overbought0.3Block BUY when RVI β‰₯ 0.3
Oversold-0.3Block SELL when RVI ≀ -0.3
Period14RVI period
TimeframeCurrentRVI timeframe

πŸ†• Filter 22: Elder Power β€” Bulls Power + Bears Power

Bulls Power = High βˆ’ EMA, Bears Power = Low βˆ’ EMA. When Power large β†’ that side dominates β†’ Trending. When both small β†’ force balanced β†’ Sideway.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Elder Power filter
Trending Level50Block when |Bulls/Bears Power| β‰₯ 50 points
EMA Period13EMA period for Power calculation
TimeframeCurrentElder timeframe
πŸ’‘ Example:
Bulls Power = 80 β‰₯ 50 β†’ Buying side dominates β†’ Trending ↑ ❌
Bulls = 20, Bears = -15 β†’ Both < 50 β†’ Sideway βœ…

πŸ†• Filter 23: MACD Histogram β€” Measure Trend Momentum

MACD = EMA(Fast) βˆ’ EMA(Slow). Histogram = MACD βˆ’ Signal. Large positive histogram = strong momentum increase β†’ Trending. Small = Sideway.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable MACD Histogram filter
Fast EMA12Fast EMA period
Slow EMA26Slow EMA period
Signal9Signal line period
Trending Level5Block when |Histogram| β‰₯ value (original price units)
TimeframeCurrentMACD timeframe
πŸ’‘ Example (XAUUSD):
Histogram = +7 β‰₯ 5 β†’ Strong momentum increase β†’ Trending ↑ ❌
Histogram = +2 < 5 β†’ Momentum is weak β†’ Sideway βœ…

πŸ†• Filter 24: Parabolic SAR β€” Stop And Reverse

Parabolic SAR places dots above/below price. Larger |SAR βˆ’ Close| distance β†’ stronger trend. Small β†’ near reversal β†’ Sideway.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Parabolic SAR filter
SAR Step0.02SAR step size. Increase β†’ SAR chases price faster
SAR Maximum0.2Maximum Step value
Trending Level10Block when |SAR βˆ’ Close| β‰₯ value (original price units)
TimeframeCurrentSAR timeframe
πŸ’‘ Example (XAUUSD):
SAR = 2920, Close = 2935 β†’ Gap = 15 β‰₯ 10 β†’ Trending ↑ ❌ (SAR far below)
SAR = 2932, Close = 2935 β†’ Gap = 3 < 10 β†’ Sideway βœ… (SAR about to reverse)

πŸ†• Filter 25: Supertrend

Supertrend combines Median price and ATR to identify trend. Larger distance between price and Supertrend line β†’ stronger trend.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Supertrend filter
ATR Period10ATR calculation period
Multiplier3.0ATR multiplier
Trending Level50Block when |Price βˆ’ Supertrend| β‰₯ value (original price units)
TimeframeCurrentSupertrend timeframe

πŸ†• Filter 26: Ichimoku Cloud

Usage Kumo Cloud as resistance zone. If price inside thick cloud β†’ market Sideway (safe for DCA). Price breaks cloud or cloud too thin β†’ Trending.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Ichimoku filter
Tenkan / Kijun / Senkou B9 / 26 / 52Ichimoku system periods
Min Cloud Thick10Minimum cloud thickness (below this is compression/trending)
TimeframeCurrentIchimoku timeframe

πŸ†• Filter 27: ATR β€” Average True Range

ATR measures candle width to identify Extreme volatility. When volatility exceeds safety threshold, bot will block new orders.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable ATR filter
ATR Max0Block DCA when ATR β‰₯ this level (0 = Off)
Period14ATR calculation period
TimeframeCurrentATR timeframe

πŸ†• Filter 28: Squeeze Momentum

Detect price zone "Spring squeeze" when Bollinger Bands inside Keltner Channel. Signal price about to burst from sideway zone.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Squeeze filter
BB / KC Period20Period for calculating Bollinger and Keltner bands
TimeframeCurrentSqueeze timeframe

πŸ†• Filter 29: OBV β€” On Balance Volume

Measure slope of smoothed OBV to identify Money Flow (Inflow/Outflow). Filter out false breakouts without volume support.

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable OBV filter
SMA Period10OBV smoothing period to measure slope
Threshold0Large positive/negative slope threshold (0 = block any slope)
TimeframeCurrentOBV timeframe

πŸ’‘ New Filter Combination Tips

StrategyCombinationPurpose
Synthetic channelBB + Keltner + DonchianIdentify sideway zone from 3 angles, maximum safety
Multi-directional trendingDMI + ADX + MACDDetect trend from many indicators, less misses
Slope + DistanceVIDYA + Parabolic SARVIDYA measures slope, SAR measures distance β†’ complement each other
Power + VigorElder Power + RVIElder measures side power, RVI measures close quality

πŸ”₯ VERSION 8.6 (17/02/2026)

Add 4 new price channel filters - Pivot Fractal, BB Channel, Keltner Channel & Donchian Channel!

  • βœ… Pivot Fractal Filter: Identify Sideway zone by local peaks/troughs (fractal). Price in Pivot zone = Sideway, breaks out = Trending
  • βœ… BB Channel Filter: Identify Sideway zone by Bollinger Bands. Price in BB = Sideway, breaks out = Trending
  • βœ… Keltner Channel Filter: Price channel based on EMA + ATR. Reflects actual volatility, follows price action closely
  • βœ… Donchian Channel Filter: Price channel Highest High / Lowest Low. Simplest of price channels, very effective for identifying breakouts
  • βœ… Buffer % against fake breakouts: All price channel filters have buffer zone to avoid false signals
  • βœ… Separate timeframe: Each filter can choose separate timeframe
  • βœ… Total 18 filters: Increase from 14 to 18 filters, work with Combine Mode and Action Mode systems

πŸ†• Filter 15: Pivot Fractal β€” Identify Sideway by Pivot High/Low

Pivot Fractal uses fractal method to find local peaks (Pivot High) and troughs (Pivot Low), then identify reasonable price range.

How it works

StepDescription
1. Find Pivot Scan candles, find candle with High higher than N candles left + N candles right = Pivot High. Similarly for Pivot Low
2. Identify zone Sideway zone = Pivot Low ↔ Pivot High + Buffer %
3. Compare price Price in zone β†’ Sideway (for DCA). Price breaks out β†’ Trending (block DCA)

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Pivot Fractal filter
Left Bars5Number of candles left to confirm Pivot
Right Bars5Number of candles right to confirm Pivot
Buffer %5Buffer zone 5% of Pivot range. Avoid false signals
TimeframeCurrentTimeframe for calculating Pivot
πŸ’‘ Example (XAUUSD, M5): Left/Right = 5, Buffer = 5%
EA finds: Pivot High = 2935, Pivot Low = 2920 β†’ Range = 15, Buffer = 0.75
β†’ Breakout High = 2935.75, Breakout Low = 2919.25
Price = 2928 β†’ Sideway βœ… | Price = 2936 β†’ Trending ❌

πŸ†• Filter 16: Bollinger Bands Channel β€” Identify Sideway by BB

BB Channel uses Bollinger Bands (Upper/Middle/Lower) to identify auto-scaling price channel based on market volatility.

How it works

StepDescription
1. Calculate BB Upper = SMA + Deviation Γ— Οƒ, Lower = SMA βˆ’ Deviation Γ— Οƒ (from closed candles)
2. Add Buffer Buffer = Bandwidth Γ— Buffer%. Expand breakout zone with 1 buffer layer
3. Compare price Price trong BB + Buffer β†’ Sideway (for DCA). Price breaks out β†’ Trending (block DCA)

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable BB Channel filter
BB Period20SMA calculation period
BB Deviation2.0Standard deviation coefficient (2.0 = 95% of prices inside bands)
Buffer %5Buffer zone 5% of bandwidth. Avoid false signals
TimeframeCurrentTimeframe for calculating BB
πŸ’‘ Example (XAUUSD, M5): Period = 20, Dev = 2.0, Buffer = 5%
BB: Upper = 2938, Middle = 2930, Lower = 2922 β†’ Bandwidth = 16, Buffer = 0.8
β†’ Breakout Upper = 2938.8, Breakout Lower = 2921.2
Price = 2929 β†’ Sideway βœ… | Price = 2939 β†’ Trending ❌

πŸ†• Filter 17: Keltner Channel β€” Price Channel EMA + ATR

Keltner Channel uses EMA + ATR to create price channel. Reflects actual volatility better than BB because uses ATR (Average True Range) instead of standard deviation.

How it works

StepDescription
1. Calculate KC Middle = EMA(Period), Upper = EMA + ATR Γ— Multiplier, Lower = EMA βˆ’ ATR Γ— Multiplier (from closed candles, shift +1)
2. Add Buffer Buffer = (Upper βˆ’ Lower) Γ— Buffer%. Expand breakout zone with 1 buffer layer
3. Compare price Price trong KC + Buffer β†’ Sideway (for DCA). Price breaks out β†’ Trending (block DCA)

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Keltner Channel filter
EMA Period20EMA center calculation period
ATR Period10ATR calculation period (volatility)
ATR Multiplier1.5ATR multiplier. Large = wide channel, fewer breakouts
Buffer %5Buffer zone 5% of bandwidth. Avoid false signals
TimeframeCurrentTimeframe for calculating KC
πŸ’‘ Example (XAUUSD, M5): EMA=20, ATR=10, Mult=1.5, Buffer=5%
KC: Upper = 2940, Middle = 2930, Lower = 2920 β†’ Bandwidth = 20, Buffer = 1.0
β†’ Breakout Upper = 2941, Breakout Lower = 2919
Price = 2932 β†’ Sideway βœ… | Price = 2942 β†’ Trending ❌

πŸ†• Filter 18: Donchian Channel β€” Price Channel Highest High / Lowest Low

Donchian Channel uses Highest High and Lowest Low in last N candles to create price channel. Simplest of price channels, very effective for identifying breakouts.

How it works

StepDescription
1. Calculate DC Upper = Highest High(N), Lower = Lowest Low(N), Middle = (Upper + Lower) / 2 (from closed candles, shift +1)
2. Add Buffer Buffer = (Upper βˆ’ Lower) Γ— Buffer%. Expand breakout zone
3. Compare price Price trong DC + Buffer β†’ Sideway (for DCA). Price breaks out β†’ Trending (block DCA)

Parameter

ParameterDefaultDescription
Enable/DisablefalseEnable Donchian Channel filter
Period20Number of candles to scan for Highest High / Lowest Low
Buffer %5Buffer zone 5% of range. Avoid false signals
TimeframeCurrentTimeframe for calculating DC
πŸ’‘ Example (XAUUSD, M5): Period = 20, Buffer = 5%
DC: Upper (HH) = 2942, Lower (LL) = 2918 β†’ Range = 24, Buffer = 1.2
β†’ Breakout Upper = 2943.2, Breakout Lower = 2916.8
Price = 2930 β†’ Sideway βœ… | Price = 2944 β†’ Trending ❌

βš–οΈ Compare 4 Price Channels

Pivot FractalBB ChannelKeltner ChannelDonchian Channel
Based onFractal peak/troughSMA + Standard deviationEMA + ATRHighest High / Lowest Low
UpdateWhen new fractalEach new candleEach new candleEach new candle
Suitable forClear peaks/troughsEven volatilityClose to price actionClear breakouts
AdvantageStable zoneAuto-scalesSmooth, low noiseSimple, powerful
DisadvantageHas lagCan be too sensitiveDepends on EMA+ATRSensitive to price spikes

πŸ”₯ VERSION 8.5 (12/02/2026)

Add New Filter Action Mode - Auto change entry method when market changes!

  • βœ… Switch Market Stop (Filter Mode 6): When filter detects Trending, EA automatically switches to Market Stop and deletes all Pending orders. When Sideway returns, restore old entry method
  • βœ… No direction block: New mode only changes entry method, does not block BUY/SELL direction
  • βœ… Auto delete Pending: When switching to Market Stop, all current pending orders will be deleted automatically
  • βœ… Signal Config support: Send "filter_action_mode": "switch_mech" from server

πŸ†• Filter Action Mode 6 - Switch Market Stop

New mode for Action when filter changes: automatically switch entry method to Market Stop when market trending, and restore when sideway.

Activity Flow

EventActionDetail
Sideway β†’ Trending Switch to Market Stop Save old mechanism β†’ Switch to ORDER_TRAILING_STOP β†’ Delete all pending orders
Trending β†’ Sideway Restore old mechanism Return to Pending or Market (depends on previous mechanism)
πŸ’‘ Note: This mode does not block direction BUY/SELL, does not close existing market orders . Only changes new entry method + deletes old pending when switching to Market Stop.

How to Select on Panel

Press button Filter Action Mode on Filter panel β†’ Select "Switch Market Stop" (Teal color).

Signal Config

"filter_action_mode": "switch_mech" // or shorthand: "switch"

πŸ”₯ VERSION 8.4 (12/02/2026)

Upgrade Custom Step, Custom Lot, Custom TP - Support powerful multi-mode!

  • βœ… Custom Step multi-mode: Support Fixed, Multiply (x), Add (+) combined in 1 step chain β€” like Custom Lot
  • βœ… Custom Lot multi-mode: Support multi-mode in 1 chain - Fixed, Multiply (x), Add (+) combined by level
  • βœ… Custom TP support negative numbers: TP can be negative (accept loss) using symbol (), Custom TP by level tier
  • βœ… Combined Profit Close: Close both BUY + SELL chains when total profit reaches target (USD). Leave empty=off, enter 0 = close both chains when total = 0
  • βœ… Lot L0=L1: Multiply/Add lot mode now keeps L0 = L1, multiply/add starts from L2 (Custom: keeps per declaration)
  • βœ… Step semantics: step(N) = distance from layer N to layer N+1, ensure correct for all modes
  • βœ… Input Validation: Check Step/Lot string syntax when launching EA. Alert specific error + prevent EA running if wrong

πŸ†• Custom Step - Multi-Mode Distance

Step (distance between levels) now supports 4 modes, of which Custom supports combining Fixed, Multiplier, Addition:

Step ModeDescriptionCalculation Method
Fixed Fixed step for all layers Example 10 = fixed 10 for all layers
Multiplier Step increases by multiplier coefficient from L2 L0=L1=start_step, L2+=start_step Γ— coefficient^(layer-1)
Example: Step=10, Coefficient=1.2 β†’ 10, 10, 12, 14.4...
Addition Step increases evenly each layer from L2 L0=L1=start_step, L2+=start_step + (layer-1) Γ— increment
Example: Step=10, Coefficient=2 β†’ 10, 10, 12, 14...
Custom Custom multi-mode per layer Supports Fixed, Multiplier (x), Add (+) combined in 1 string

Custom Step Symbols

SymbolModeMeaningExample
10 Fixed Fixed step 10 β†’ all layers = 10
x1.5 Multiplier (Multiplier) Step = previous step Γ— coefficient 2:x1.5 β†’ from L2: multiply previous step Γ— 1.5
+5 Addition (Addition) Step = previous step + addition value 4:+5 β†’ from L4: add 5
10x1.3 Base + Multiplier Initial step + multiply from L1 10x1.3 β†’ L0=10, L1=13, L2=16.9...

Custom Step Multi-Mode Example

Format: "0.6-1:1-2:x2-3:x3-4:+1-5:4" step(N) = distance from layer N to layer N+1 Result: BUY entry price (from 2900.00): L0 β†’ L1: step = 0.6 L0: 2900.00 L1 β†’ L2: step = 1.0 L1: 2899.40 (distance from L0: 0.6) L2 β†’ L3: step = 2.0 L2: 2898.40 (distance from L1: 1.0) L3 β†’ L4: step = 6.0 L3: 2896.40 (1.0 Γ— 2 = 2.0) L4 β†’ L5: step = 7.0 L4: 2890.40 (2.0 Γ— 3 = 6.0) L5+: step = 4.0 L5: 2883.40 (6.0 + 1 = 7.0) L6: 2879.40 (fixed 4.0)
πŸ’‘ Note: step(N) = distance from layer N to layer N+1. Step is calculated sequentially β€” when switching mode, the previous step is the basis for the new mode.

πŸ†• Custom Lot - Multi-Mode in 1 String

Custom Lot now supports combining multiple modes (Fixed, Multiplier, Addition) in the same 1 lot string, applied per layer range.

Symbols

SymbolModeMeaningExample
0.01 Fixed Fixed lot 0.01 β†’ all layers = 0.01
x1.5 Multiplier (Multiplier) Lot = previous lot Γ— coefficient 3:x1.5 β†’ from L3: multiply previous lot Γ— 1.5
+0.02 Addition (Addition) Lot = previous lot + addition value 5:+0.02 β†’ from L5: add 0.02
0.01x1.5 Base + Multiplier Initial lot + multiply from L1 0.01x1.5 β†’ L0=0.01, L1=0.015, L2=0.0225...
0.01+0.02 Base + Addition Initial lot + addition from L1 0.01+0.02 β†’ L0=0.01, L1=0.03, L2=0.05...

Multi-Mode Combination Example

Format: "0.01-3:x1.2-5:x1.4-9:+0.02" Sequential calculation result: L0 = 0.01 (fixed 0.01) L1 = 0.01 (fixed 0.01) L2 = 0.01 (fixed 0.01) L3 = 0.01 Γ— 1.2 = 0.012 (start multiply Γ—1.2) L4 = 0.012 Γ— 1.2 = 0.0144 L5 = 0.0144 Γ— 1.4 = 0.02016 (switch to multiply Γ—1.4) L6 = 0.02016 Γ— 1.4 = 0.02822 ... L9 = previous + 0.02 (switch to addition +0.02) L10 = L9 + 0.02
πŸ’‘ Note: Lot is calculated sequentially from L0. When switching mode (e.g., from multiply to addition), the previous lot is the basis for the new mode.

πŸ†• Lot L0 = L1 - Multiply/Addition from L2

In Multiplier and Additionmode, layer 0 and layer 1 lot are now equal. Multiply/addition starts from L2:

LayerMultiplier (Γ—1.5)Addition (+0.01)
L00.010.01
L10.01 (unchanged)0.01 (unchanged)
L20.0150.02
L30.02250.03
⚠️ For Custom Lot only: L0=L1 convention does not apply. Lot is processed entirely per declaration string.

πŸ†• Input Validation - Syntax Check

When starting the EA, the system automatically checks syntax of Step/Lot strings. If errors found:

  • 🚫 EA refuse to start
  • ⚠️ Currently Alert popup only specifies which box is wrong + correct example
Example Alert on wrong input: ⚠️ Syntax Error Input! Range 1 - Step: step = 0! Check again: "abc" Correct example: - Step: "10" or "10-5:15-10:20" - Lot: "0.01" or "0.01x1.2" or "0.01x1.5-5:+0.02"
πŸ’‘ Note: Validation runs only in Local Config mode (no check when using Signal Config because server sends pre-checked values).

πŸ†• Custom TP - Support Negative Values & Per Layer

Take Profit now supports negative values (accept loss to exit quickly) and customize per layer.

TP Per Layer Syntax

Format: "0:100-5:50-10:30-15:0-20:(2)" β†’ Layer 0-4: TP = 100 β†’ Layer 5-9: TP = 50 β†’ Layer 10-14: TP = 30 β†’ Layer 15-19: TP = 0 (breakeven) β†’ Layer 20+: TP = -2 (accept loss of 2 to exit)

Negative Value Symbol

SyntaxTP ValueMeaning
10:100TP = 100Normal positive TP
15:0TP = 0Breakeven (break even)
20:(2)TP = -2Accept loss of 2 to exit quickly
25:(5)TP = -5Accept loss of 5 to exit
⚠️ Important: Use parentheses () to denote negative values (because - is already used as layer separator). Example: (2) = -2, (5.5) = -5.5.
πŸ’‘ Application: When DCA chain goes too deep, gradually reduce TP and finally set negative TP to exit quickly, reducing risk instead of waiting for price reversal.

πŸ“¦ VERSION 8.2 (07/02/2026)

Additional Telegram Bot Control - Control EA remotely!

  • βœ… Telegram Bot Control: Control EA remotely via Telegram
  • βœ… Multi-EA Support: Support controlling multiple EAs from 1 bot, each EA has unique identifier
  • βœ… Inline Keyboard: Intuitive button interface (Start, Stop, Pause, Resume)
  • βœ… Close all orders: Close All button to close all EA's orders
  • βœ… View status: Display EA, Account, Symbol, Profit in real-time

πŸ†• Telegram Bot Control

Feature Telegram Bot Control allows you to control EA remotely via Telegram Bot, supporting multiple EAs at the same time.

Installation Guide

  1. Create Telegram Bot: Find @BotFather on Telegram, type /newbot to create new bot
  2. Get Bot Token: Copy the token provided (Example: 123456789:ABCdefGHIjklMNO...)
  3. Fill into EA Input:
    • Telegram Bot Token: Paste the token just obtained
    • Telegram Chat ID: Chat ID (can be obtained via "Get Chat ID" button)
    • Enable Telegram Control: True
  4. Allow WebRequest: MT5 β†’ Tools β†’ Options β†’ Expert Advisors β†’ Allow WebRequest for listed URL, add https://api.telegram.org

Control Buttons

Button Function
🟒 Bat dau Turn on EA, allow opening new orders
⏸️ Tam dung Pause EA, no new orders (existing orders remain)
πŸ”΄ Dung Stop EA completely
▢️ Tiep tuc Resume operation after pause
❌ Dong tat ca lenh Close all open EA orders
πŸ“Š Trang thai View EA status (Account, Symbol, Profit)
πŸ’‘ Multi-EA: When running multiple EAs on 1 bot, each EA will have unique identifier (Example: 11635602_BTCUSD_DCA1). Pressing button will only affect that EA.

πŸ“¦ VERSION 8.0 (04/02/2026)

Additional Market Stop and Custom Layer Settings from Signal Config!

  • βœ… Market Stop: Mechanism to set STOP orders that move with price
  • βœ… Increase multi-layer protection and profit
  • βœ… Add panel per new mechanism
  • βœ… Custom Step/TP/Lot per Layer: Support step sl, tp, lot number string per layer (Example: "0:100-5:50-10:30")

πŸ†• Custom Layer Settings from Signal Config

Signal Config now supports configuring Step, TP, Lot per layer:

Syntax

Field Description Example
pip_step Step per layer "1-5:8-10:6" = Layer 1-5: step 8, layer 10+: step 6
take_profit TP per layer (when tp_mode=custom) "0:100-5:50-10:30" = Layer 0: TP=100, layer 5: TP=50...
layer_lots Lot per layer (when lot_mode=custom) "0:0.01-5:0.02-10:0.03"

πŸ“¦ VERSION 7.0 (01/02/2026)

Upgrade Market Order and comprehensive improvements!

  • βœ… Market Order: Enter orders directly at market price, no need to wait for Pending to fill
  • βœ… Upgrade order processing logic: Improve speed and accuracy when setting/closing orders
  • βœ… Improve Filter Logic: Optimize indicator filter signal processing
  • βœ… New Panel Interface: Redesign control panel modern and intuitive
  • βœ… Choose Order Mechanism: Toggle between Pending and Market directly on Panel

πŸ“¦ VERSION 6.9 (30/01/2026)

Add feature Indicator Filters (Indicator Filters) powerful!

  • βœ… 16 indicator filters: RSI, Stochastic, CCI, ADX, ATR, BB%B, Aroon, Choppiness, Pivot Fractal, BB Channel...
  • βœ… Choose Timeframe separately for each filter (on Panel or Input)
  • βœ… 5 Action Mode: Automatically handle chain when signal changes
  • βœ… 2 Combine Mode: Combine multiple filters flexibly
  • βœ… Filter Panel: Control directly on interface

πŸ†• Indicator Filters (Indicator Filters)

Feature Indicator Filters allow EA to automatically block or allow opening orders based on signals from technical indicators, helping avoid counter-trend orders.

List of 14 Supported Filters

Group Filter Function
πŸ“ˆ Oscillation (OB/OS) RSI, Stochastic, CCI, Williams %R, MFI, DeMarker, Ultimate Osc, Bollinger %B, RCI Identify Overbought/Oversold zones
πŸ“Š Trend ADX, Aroon, Choppiness Index Detect Trending/Sideway
⚑ Volatility ATR Measure market volatility level
πŸ“Š Volume OBV Confirm trend by capital flow

How to Use

  1. Set via Input: Each filter has own parameters (On/Off, OB/OS threshold, Separate timeframe, Period)
  2. Control via Panel: Click button πŸ“Š Filters to open Filter Panel. Turn filter on/off by clicking indicator name.
  3. Change Timeframe on Panel: Click button [H1] next to each filter to choose separate timeframe (M1, M5, M15, H1, H4, D1...)

5 Action Modes (Action Mode)

Mode Name Description
0 Close 2C+Block 2C Close both chains + Block both directions when filter changes
1 Block 1 Way Only block new orders in blocked direction (default)
2 Close 2C+Block 1C Close both chains + Block 1 direction
3 Smart Reset Close and reopen chain per new signal direction
4 Breakeven+Block 1C Set TP = Breakeven + Block 1 direction
πŸ’‘ Example: Turn RSI on with thresholds 70/30. When RSI > 70 (Overbought), the EA blocks new BUY orders. When RSI < 30 (Oversold), the EA blocks new SELL orders.

Combination Mode (Combine Mode)

When enabling multiple filters at once:

  • Optimize Sideway: Is Sideway only when ALL filters report sideway (safer, less trading)
  • Optimize Trending: Is Sideway when ANY filter reports sideway (more opportunities)

πŸ“¦ VERSION 6.0 (22/01/2026)

Additional Trading Mode and Hedge Feature

  • βœ… AUTO mode: EA automatically opens and manages DCA chain
  • βœ… MANUAL mode: User manually opens first order, EA manages DCA
  • βœ… Hedge feature: Open counter order or close old orders partially
  • βœ… Layer TP Override: Change TP automatically when reaching specific layer

v6.0 Overview

EA supports 2 main trading modes:

  • AUTO Mode: EA automatically opens and manages DCA chain.
  • MANUAL Mode: User manually opens first order, EA manages subsequent DCA orders.

You can select default mode via input InpTradingMode and switch flexibly during operation via interface buttons.


Trading Mode

1. AUTO Mode

Description:

  • EA automatically opens first order of DCA chain when conditions suitable.
  • Automatically sets pending orders per configuration (pip step, multiplier, number of layers).
  • Automatically manages Take Profit and closes entire chain when target reached.

When to use:

  • Want EA to work completely automatically.
  • No manual intervention needed for entry point.

How BUY/SELL buttons work in AUTO mode:

  • Button BUY: Toggle on/off to allow opening BUY chain.
    • Lime green = On (allow opening new BUY chain).
    • Gray = Off (do not open new BUY chain, still manage existing chain).
  • Button SELL: Toggle on/off to allow opening SELL chain.
    • Red = On (allow opening new SELL chain).
    • Gray = Off (do not open new SELL chain, still manage existing chain).

2. MANUAL Mode

Description:

  • EA DOES NOT automatically open first order.
  • User must press BUY/SELL button or manually open order.
  • After having first order, EA will automatically set pending and manage DCA chain.

When to use:

  • Want to choose your own entry point.
  • Combine personal technical analysis with EA's DCA system.

How BUY/SELL buttons work in MANUAL mode:

  • Button BUY: Press to open BUY market order immediately (first order of chain).
  • Button SELL: Press to open SELL market order immediately (first order of chain).

Control Buttons

BUY/SELL Button

Mode BUY Button SELL Button
AUTO Toggle on/off BUY direction Toggle on/off SELL direction
MANUAL Open BUY market order now Open SELL market order now

Colors (AUTO mode):

  • 🟒 Lime green: BUY direction is on
  • πŸ”΄ Red: SELL direction is on
  • ⚫ Gray: Direction is off

Mode Switch Button

Two buttons to switch between AUTO and MANUAL mode on panel:

Button Function
AUTO Switch to AUTO mode
MANUAL Switch to MANUAL mode

Order Close Panel

Button Function
CLOSE ALL Close all BUY and SELL orders
CLOSE BUY Close all BUY orders (both market and pending)
CLOSE SELL Close all SELL orders (both market and pending)

Layer TP Override Feature

Change tp when reaching layer allows you to set new Take Profit level when DCA chain reaches specific layer. This is advanced feature helping adjust TP strategy flexibly per chain depth.

⚠️ IMPORTANT NOTE: TP value is COMPLETELY OVERRIDDEN, not added/subtracted from current TP.

Syntax:

layer1:tp_value1; layer2:tp_value2; ...

Example: 34:1; 38:0.5

  • When chain reaches layer 34, set TP = 1.
  • When chain reaches layer 38, set TP = 0.5.

Application: Help exit orders faster when chain lengthens (by reducing TP) or increase profit when needed.


Hedge Feature (Hedging)

Feature Hedge allows EA to automatically open counter orders or close old orders partially to minimize risk when DCA chain has gone deep.

Settings (Input)

Display name Description
Enable Hedge Turn on/off Hedge feature
Hedge Mode
  • HEDGE: Open counter direction orders (requires margin).
  • CLOSE: Close old orders partially (reduce margin, take loss).
Hedge Calc Mode
  • GAP: Hedge layer X gap from current.
  • START_STOP: Hedge from layer A to layer B.
Auto Close Hedge Automatically close hedge when main chain closes.

Example Illustration (MODE GAP, Gap=10)

BUY chain running: Layer 0 ──► BUY 0.01 lot ... Layer 10 opens ──► Trigger Hedge layer 0! (Open SELL with corresponding lot) Layer 11 opens ──► Trigger Hedge layer 1! ... Layer 20 opens ──► Trigger Hedge layer 10!            

Notes When Using Hedge

  1. Margin: HEDGE mode requires more margin because opening counter orders.
  2. Broker: Check if broker supports hedging.
  3. Swap: Hedge orders held overnight also incur swap fees.
πŸŽ‰ Thank you for always accompanying Smart DCA EA!

Last update: 17/02/2026

Current version: v8.6