.jpg)








Dynamic Trendline Deluxe Pro Bot (cBot for cTrader)
For the backtesting and live proving of these cBots, I am utilizing IC Markets: Visit IC Markets
My strategy is to copy: https://ct-sc.icmarkets.com/copy/strategy/100817
Introduction ⚙️
Dynamic Trendline Deluxe Pro Bot is a versatile cBot for the cTrader platform. Its strategy is based on identifying price interaction with dynamically calculated support and resistance trendlines. This software features a wide set of configurable parameters, offering the user considerable control over its operation. It is important to remember that trading financial instruments always involves significant risks.
N.B,The optimization for this configuration was performed on IC Markets, therefore the results shown reflect that specific environment. Performance may differ on other brokers. More info ICMARKETS here: https://icmarkets.com/?camp=84111
Core Strategy: Dynamic Trendlines and Signals
- Adaptive Dynamic Calculation: On each new bar, the cBot analyzes the preceding
NumberOfCandles
to identify key lows and highs, according to the chosenSupport/ResistancePriceSource
(Close or HighLow). The drawn line connects the two most extreme points found and is recalculated on every bar, thus adapting to market evolution. - Smart Validation (Useful Option):
- Touch Validation (
UseTouchValidation
): If enabled, verifies that the drawn line is touched by at leastMinTouchesRequired
candles, within aTouchTolerancePips
, to confirm its relevance. - Slope Filter (
UseSlopeFilter
): If enabled, allows excluding lines with an angle that is too flat or too steep (based onMin/MaxSlopeAngle
).
- Touch Validation (
- Signal Identification: Three types of interaction with validated lines are precisely monitored:
- Breakout: A break of the line (detectable
OnTick
orOnBarClose
viaBreakoutDetectionMode
). - Touch: Price touches the line without a significant break.
- Approach: Price approaches the line within
ApproachDistancePips
without touching.
- Breakout: A break of the line (detectable
- Flexible Trading Logic and Overrides: The user sets the action (
ContinueTrend
,Invert
,NoAction
) for each signal. TheForceContinueTrendManual
option forcesContinueTrend
. TheUseAtrOverride
option can imposeContinueTrend
based on ATR-measured volatility, bypassing filters if active.
Main Features and Configurable Options
The cBot offers a comprehensive suite of options to customize the strategy:
- Detailed Signal Filtering Options: Numerous filters based on technical indicators can be enabled to qualify signals (inactive if an override is active), including:
- Moving Average (
UseStrongTrendFilter
, ...) - RSI (
UseRsiConfirmation
, ...) - OBV (
UseObvFilter
, ...) - Stochastic (
UseStochasticFilter
, ...) - Volume (
UseVolumeFilter
, ...) - MACD (
UseMacdFilter
, ...) - DMI/ADX (
UseAdxRangeFilter
, ...) - Bollinger Bands (
UseBollingerFilter
, ...) - Ichimoku (
UseIchimokuFilter
, ...) These filters provide tools for more accurate signal selection.
- Moving Average (
- Controlled Volume and Risk Management: 📊
- Volume: Fixed (
TradeVolume
) or Dynamic (UseDynamicLot
,RiskPercent
,MaxLotSize
) for precise position sizing. - Position Limits: Control over
MaxLongPositions
andMaxShortPositions
. - Loss Limits: Useful option for daily (
UseDailyLossLimit
) and weekly (UseWeeklyLossLimit
) loss limits for greater discipline.
- Volume: Fixed (
- Comprehensive Trade Management Suite: 📈
- Flexible Initial Stop Loss / Take Profit: Choose between fixed values (
StopLossLong/ShortPips
, ...) or ATR-based levels (UseAtrInitialSlTp
, ...) to adapt to volatility. - Partial Take Profit: Option (
UsePartialTP
) to manage profits by closing a portion (PercentToCloseAtTP1
) of the position at a target (PartialTP1Pips
). - Break-Even: Option (
UseBreakEven
) to move the Stop Loss to break-even and protect the trade. - Advanced Trailing Stop (
UseTrailingStop
): Besides the Fixed mode, it includes the ATR-based mode (TsMode = ATR
). This upgrade from the Pro version offers an intelligent way to follow trends by adapting the distance to market volatility.
- Flexible Initial Stop Loss / Take Profit: Choose between fixed values (
- Operational Controls: ⏱️
- Time Filter: Option (
EnableTimeFilter
) to define specific days (AllowMonday
...) and UTC time slots (StartTime1/EndTime1
, ...) for trading activity.
- Time Filter: Option (
Conclusion
Dynamic Trendline Deluxe Pro Bot is a comprehensive software tool for cTrader, designed for traders who seek in-depth control over their automated trendline-based strategy. It offers numerous features for configuration, filtering, and management. As with any trading system, its effectiveness will depend on proper configuration and rigorous testing.
IMPORTANT DISCLAIMER / RISK WARNING
Trading financial instruments, including Forex and CFDs, involves a high level of risk and may not be suitable for all investors. There is a real possibility that you may sustain a loss equal to or greater than your entire invested capital. Therefore, you should not invest money that you cannot afford to lose. Past performance, including backtest results, is not indicative nor a guarantee of future results.
Dynamic Trendline Deluxe Pro Bot is a software tool and does not guarantee any profits. Its performance heavily depends on the user-chosen configuration, ever-changing market conditions, user-applied risk management, and other external factors.
This description and the provided software do not constitute financial or investment advice, nor a solicitation to invest. The user is solely responsible for their own trading decisions and capital management. It is strongly recommended to fully understand the risks associated with trading and to thoroughly test any strategy or software, including this cBot, on a demo account for an adequate period before considering use with real capital. Seek advice from an independent financial advisor if you have any doubts.
For the backtesting and live proving of these cBots, I am utilizing IC Markets: Visit IC Markets
My strategy is to copy: https://ct-sc.icmarkets.com/copy/strategy/100817
----------------------------------------------------------------------------------------------------------------------------
Appendix: Detailed Comparison with the Previous Version ("Pro")
Certainly. Let's compare the two cBots you provided:
- Bot 1: Dynamic Trendline Deluxe Pro Bot, the more complex one we analyzed
- Bot 2: DynamicTrendlineProBot (the previous version "V22")
We'll call the first one "Unified" (or Deluxe Pro) and the second one "Pro" for simplicity.
Here are the main differences, highlighting what Unified (Deluxe Pro) adds or does differently compared to Pro:
Main Features Added in "Unified" (Deluxe Pro):
- Advanced Volume Management:
- Pro: Only has fixed volume (
TradeVolume
). - Unified: Adds the option for Dynamic Lot sizing (
UseDynamicLot
,RiskPercent
,MaxLotSize
) based on risk percentage and the calculated Stop Loss.
- Pro: Only has fixed volume (
- ATR-Based Initial Stop Loss / Take Profit:
- Pro: Only has fixed SL/TP (
StopLossLong/ShortPips
,TakeProfitLong/ShortPips
). - Unified: Adds the option (
UseAtrInitialSlTp
,InitialSlAtrMultiplier
,InitialTpAtrMultiplier
) to calculate initial SL and TP based on ATR, offering greater adaptability to volatility.
- Pro: Only has fixed SL/TP (
- Partial Take Profit:
- Pro: Feature absent.
- Unified: Introduces the ability to close a portion of the position (
PercentToCloseAtTP1
) at an intermediate profit target (PartialTP1Pips
) using theUsePartialTP
parameters.
- ATR-Based Trailing Stop:
- Pro: Only has fixed Pips Trailing Stop (
TrailingDistancePips
). - Unified: Adds the mode (
TsMode
) for an ATR-Based Trailing Stop (TsAtrMultiplier
), in addition to the fixed one.
- Pro: Only has fixed Pips Trailing Stop (
- Additional Indicator Filters:
- Pro: Has filters for MA Trend, RSI Confirmation, ADX Range.
- Unified: Includes all of Pro's filters plus optional filters for: OBV (On Balance Volume), Stochastic, Volume (comparison with MA), MACD, DMI Direction (DI+/DI-), Bollinger Bands, Ichimoku Kinko Hyo. This offers many more options for confirming signals.
- Global Risk Management (Loss Limits):
- Pro: Feature absent.
- Unified: Introduces daily and weekly loss limits (
UseDailyLossLimit
,DailyLossLimitPercent
,UseWeeklyLossLimit
,WeeklyLossLimitPercent
) that can stop trading if exceeded, with a configurable reset time (LossLimitResetTimeUTC
).
- Time Filter:
- Pro: Feature absent.
- Unified: Adds a comprehensive time filter (
EnableTimeFilter
) to enable/disable trading on specific days of the week and during configurable UTC time slots (up to two sessions).
- Breakout Detection Mode:
- Pro: Implicitly, all signals are evaluated only on
OnBar
. There's no intra-bar detection for breakouts. - Unified: Adds the
BreakoutDetectionMode
parameter, allowing the choice between detecting breakouts on bar close (OnBarClose
, like Pro) or during bar formation (OnTickCross
) as soon as the price crosses the line.
- Pro: Implicitly, all signals are evaluated only on
Structural and Implementation Differences:
OnTick
Method:- Pro: Is empty; all logic is in
OnBar
. - Unified: Actively implements the logic for
OnTickCross
breakout detection if that mode is selected.
- Pro: Is empty; all logic is in
TryOpenPosition
Method:- Pro: Simpler logic, checks fewer conditions, applies fewer filters, uses fixed volume/SL/TP. Checks position limits less specifically initially.
- Unified: Much more complex. Checks loss limits, time filter, specific Long/Short limits, applies all additional filters (if enabled), calculates volume and SL/TP flexibly (fixed or dynamic/ATR).
- Position Management (
ManageOpenPositions
): - Pro: Manages only BE and fixed TS. Uses a
ModifyPosition(pos, sl, tp)
call that might be obsolete in newer API versions. Had code (now removed/commented) for time-based exits. - Unified: Manages BE, TS (fixed or ATR), and Partial TP. Uses more modern and specific API methods like
pos.ModifyStopLossPrice()
andClosePosition()
.
- Pro: Manages only BE and fixed TS. Uses a
- Variables and Helper Methods:
- Pro: Fewer private variables, focused on basic functionalities.
- Unified: Many more variables to manage the state of new features (loss limits, partial TP, breakout flags, extra indicators) and dedicated helper methods (e.g.,
InitializeLossLimits
,CheckLossLimitReset
,IsTradingTimeAllowed
).
- Bot Label (
BotLabel
): - Pro: Uses a fixed label ("DynamicTrendlineProBot").
- Unified: Uses a more dynamic label (
$"DynTL_U_{Symbol.Name}_{TimeFrame}"
) to distinguish different instances.
In Summary:
The "Unified" (Dynamic Trendline Deluxe Pro Bot) represents a significant evolution of the "Pro" bot. It retains the same core logic of dynamic trendlines but adds a vast range of advanced features for risk management, position sizing, exit options (partial TP, ATR TS), signal filtering, and operational control (time filter, loss limits). It is a much more complex, powerful, and configurable bot. The "Pro" bot is a simpler, more basic version with fewer options.
------------------------------------------------------------------------------------------------------------------------------------------
Dynamic Trendline Deluxe Pro Bot - Parameter Explanations
This document details the configurable parameters available in the Dynamic Trendline Deluxe Pro Bot for cTrader. Parameters are grouped as they appear in the cBot settings panel.
Group: Trendline
- Number of Previous Candles
- Description: Defines the lookback period (number of candles) used to identify the highest high points (for resistance) and lowest low points (for support) when calculating trendlines.
- Default: 50
- Min Value: 10
- Support Price Source
- Description: Determines which price points are used to find the two lowest points for the support trendline.
Close
: Uses the closing price of each candle.HighLow
: Uses the low price (Low
) of each candle.
- Default: Close
- Resistance Price Source
- Description: Determines which price points are used to find the two highest points for the resistance trendline.
Close
: Uses the closing price of each candle.HighLow
: Uses the high price (High
) of each candle.
- Default: Close
Group: Trendline Validation
- Use Touch Validation
- Description: If set to
true
, enables an additional check requiring the calculated trendline to be touched by a minimum number of candles within the lookback period to be considered valid. - Default: false
- Description: If set to
- Min Touches Required
- Description: Specifies the minimum number of candle touches (including the two defining points) required for a trendline to be considered valid. Only active if
Use Touch Validation
istrue
. - Default: 3
- Min Value: 2
- Description: Specifies the minimum number of candle touches (including the two defining points) required for a trendline to be considered valid. Only active if
- Touch Tolerance (Pips)
- Description: Defines how close (in pips) a candle's high/low/close (depending on Price Source) must be to the trendline to be counted as a "touch". Only active if
Use Touch Validation
istrue
. - Default: 2.0
- Min Value: 0.1
- Description: Defines how close (in pips) a candle's high/low/close (depending on Price Source) must be to the trendline to be counted as a "touch". Only active if
- Use Slope Filter
- Description: If set to
true
, enables filtering of trendlines based on their angle (steepness). Lines that are too flat or too steep will be discarded. - Default: false
- Description: If set to
- Minimum Angle (Absolute Degrees)
- Description: Specifies the minimum absolute angle (in degrees from horizontal) a trendline must have to be considered valid. Only active if
Use Slope Filter
istrue
. Filters out lines that are too flat. - Default: 5
- Min Value: 0, Max Value: 89
- Description: Specifies the minimum absolute angle (in degrees from horizontal) a trendline must have to be considered valid. Only active if
- Maximum Angle (Absolute Degrees)
- Description: Specifies the maximum absolute angle (in degrees from horizontal) a trendline can have to be considered valid. Only active if
Use Slope Filter
istrue
. Filters out lines that are too steep. - Default: 80
- Min Value: 1, Max Value: 90
- Description: Specifies the maximum absolute angle (in degrees from horizontal) a trendline can have to be considered valid. Only active if
Group: Support Actions
- Action On Support Breakout
- Description: Defines the action to take when the price breaks below a valid support line.
ContinueTrend
: Open a Sell trade.Invert
: Open a Buy trade.NoAction
: Do nothing.
- Default: ContinueTrend
- Action On Support Touch
- Description: Defines the action to take when the price touches a valid support line from above.
ContinueTrend
: Open a Buy trade.Invert
: Open a Sell trade.NoAction
: Do nothing.
- Default: NoAction
- Action On Support Approach
- Description: Defines the action to take when the price approaches (gets close to but doesn't touch) a valid support line from above.
ContinueTrend
: Open a Buy trade.Invert
: Open a Sell trade.NoAction
: Do nothing.
- Default: NoAction
Group: Resistance Actions
- Action On Resistance Breakout
- Description: Defines the action to take when the price breaks above a valid resistance line.
ContinueTrend
: Open a Buy trade.Invert
: Open a Sell trade.NoAction
: Do nothing.
- Default: ContinueTrend
- Action On Resistance Touch
- Description: Defines the action to take when the price touches a valid resistance line from below.
ContinueTrend
: Open a Sell trade.Invert
: Open a Buy trade.NoAction
: Do nothing.
- Default: NoAction
- Action On Resistance Approach
- Description: Defines the action to take when the price approaches (gets close to but doesn't touch) a valid resistance line from below.
ContinueTrend
: Open a Sell trade.Invert
: Open a Buy trade.NoAction
: Do nothing.
- Default: NoAction
Group: Trading
- Approach Distance (Pips)
- Description: Defines how close (in pips) the price must get to a trendline without touching it to trigger an "Approach" signal.
- Default: 5
- Min Value: 1
- Breakout Detection Mode
- Description: Determines when breakout signals are checked.
OnBarClose
: Breakouts are checked only after the current bar has fully closed.OnTickCross
: Breakouts are checked on every incoming tick, allowing for intra-bar entries as soon as the price crosses the line.
- Default: OnBarClose
- Fixed Volume (Lots)
- Description: The fixed trade size (in lots) used when
Use Dynamic Lot
is set tofalse
. - Default: 0.01
- Min Value: 0.0001
- Description: The fixed trade size (in lots) used when
- Use Dynamic Lot
- Description: If set to
true
, the bot calculates the trade volume based on theRisk % per Trade
and the calculated Stop Loss distance, instead of using theFixed Volume
. - Default: false
- Description: If set to
- Risk % per Trade
- Description: The percentage of account equity to risk on a single trade when
Use Dynamic Lot
istrue
. The actual risk depends on the Stop Loss distance calculated for the trade. - Default: 1.0
- Min Value: 0.1, Max Value: 10.0
- Description: The percentage of account equity to risk on a single trade when
- Max Allowed Lot Size
- Description: The maximum lot size allowed for a single trade, even when calculated dynamically. This acts as a cap on the dynamic volume calculation. Only active if
Use Dynamic Lot
istrue
. - Default: 10.0
- Min Value: 0.01
- Description: The maximum lot size allowed for a single trade, even when calculated dynamically. This acts as a cap on the dynamic volume calculation. Only active if
Group: Stop Loss / Take Profit
- Stop Loss Long/Short Fixed (Pips)
- Description: The fixed Stop Loss distance in pips for Buy (Long) / Sell (Short) trades. This is used if
Use Initial ATR-Based SL/TP
isfalse
, or as a fallback if ATR calculation fails. Set to 0 for no fixed Stop Loss. - Default: 20
- Min Value: 0
- Description: The fixed Stop Loss distance in pips for Buy (Long) / Sell (Short) trades. This is used if
- Take Profit Long/Short Fixed (Pips)
- Description: The fixed Take Profit distance in pips for Buy (Long) / Sell (Short) trades. This is used if
Use Initial ATR-Based SL/TP
isfalse
, or as a fallback if ATR calculation fails. Set to 0 for no fixed Take Profit. - Default: 50
- Min Value: 0
- Description: The fixed Take Profit distance in pips for Buy (Long) / Sell (Short) trades. This is used if
- Use Initial ATR-Based SL/TP
- Description: If set to
true
, the initial Stop Loss and Take Profit levels are calculated based on the Average True Range (ATR) value at the time of entry, multiplied by the respective multipliers below. Overrides fixed SL/TP values. - Default: false
- Description: If set to
- ATR Multiplier for Initial SL
- Description: The multiplier applied to the current ATR value (in pips) to determine the initial Stop Loss distance. Only active if
Use Initial ATR-Based SL/TP
istrue
. - Default: 1.5
- Min Value: 0.1
- Description: The multiplier applied to the current ATR value (in pips) to determine the initial Stop Loss distance. Only active if
- ATR Multiplier for Initial TP
- Description: The multiplier applied to the current ATR value (in pips) to determine the initial Take Profit distance. Only active if
Use Initial ATR-Based SL/TP
istrue
. - Default: 3.0
- Min Value: 0.1
- Description: The multiplier applied to the current ATR value (in pips) to determine the initial Take Profit distance. Only active if
- Use Partial Take Profit
- Description: If set to
true
, enables the partial take profit feature, closing a portion of the position at the first TP level. - Default: false
- Description: If set to
- Partial TP 1 (Pips)
- Description: The profit target in pips at which the first partial close will occur. Only active if
Use Partial Take Profit
istrue
. - Default: 30
- Min Value: 1
- Description: The profit target in pips at which the first partial close will occur. Only active if
- % Volume to Close at TP1
- Description: The percentage of the original position volume to be closed when
Partial TP 1 (Pips)
is reached. Only active ifUse Partial Take Profit
istrue
. - Default: 50.0
- Min Value: 1.0, Max Value: 99.0
- Description: The percentage of the original position volume to be closed when
Group: Break-Even
- Use Break-Even
- Description: If set to
true
, enables the feature to move the Stop Loss to break-even once a certain profit is reached. - Default: false
- Description: If set to
- BE Trigger (Pips in Profit)
- Description: The amount of profit (in pips) the trade must reach before the Stop Loss is moved to break-even. Only active if
Use Break-Even
istrue
. - Default: 15
- Min Value: 1
- Description: The amount of profit (in pips) the trade must reach before the Stop Loss is moved to break-even. Only active if
- BE Extra Pips (Beyond Entry)
- Description: A small number of pips added to the entry price when setting the break-even Stop Loss (e.g., setting to Entry + 1 Pip) to cover potential commission/slippage. Can be 0. Only active if
Use Break-Even
istrue
. - Default: 1
- Min Value: 0
- Description: A small number of pips added to the entry price when setting the break-even Stop Loss (e.g., setting to Entry + 1 Pip) to cover potential commission/slippage. Can be 0. Only active if
Group: Trailing Stop
- Use Trailing Stop
- Description: If set to
true
, enables the trailing stop feature, which automatically adjusts the Stop Loss as the trade moves further into profit. - Default: false
- Description: If set to
- TS Mode
- Description: Selects the method for calculating the trailing stop distance.
FixedPips
: Trails by a constant number of pips set inTS Distance (Fixed Pips)
.ATR
: Trails by a distance calculated from the current ATR value multiplied byTS ATR Multiplier
.
- Default: FixedPips
- TS Trigger (Pips in Profit)
- Description: The amount of profit (in pips) the trade must reach before the trailing stop function becomes active. Only active if
Use Trailing Stop
istrue
. - Default: 20
- Min Value: 1
- Description: The amount of profit (in pips) the trade must reach before the trailing stop function becomes active. Only active if
- TS Distance (Fixed Pips)
- Description: The fixed distance (in pips) the Stop Loss will trail behind the current price. Only active if
Use Trailing Stop
istrue
andTS Mode
isFixedPips
. - Default: 10
- Min Value: 1
- Description: The fixed distance (in pips) the Stop Loss will trail behind the current price. Only active if
- TS ATR Multiplier
- Description: The multiplier applied to the current ATR value (in pips) to determine the trailing stop distance. Only active if
Use Trailing Stop
istrue
andTS Mode
isATR
. Uses the sharedATR Period
. - Default: 2.0
- Min Value: 0.1
- Description: The multiplier applied to the current ATR value (in pips) to determine the trailing stop distance. Only active if
Group: Position Management
- Max Long Positions
- Description: The maximum number of simultaneous Buy (Long) positions this cBot instance is allowed to have open.
- Default: 1
- Min Value: 1
- Max Short Positions
- Description: The maximum number of simultaneous Sell (Short) positions this cBot instance is allowed to have open.
- Default: 1
- Min Value: 1
Group: Risk Management
- Use Daily Loss Limit
- Description: If set to
true
, enables the daily loss limit feature. The bot will stop opening new trades for the rest of the trading day (until the reset time) if the accumulated loss from closed trades reaches the specified percentage. - Default: false
- Description: If set to
- Daily Loss Limit % Balance
- Description: The maximum loss allowed in a single trading day, expressed as a percentage of the account balance at the start of the day (or at the last reset time). Only active if
Use Daily Loss Limit
istrue
. - Default: 2.0
- Min Value: 0.1, Max Value: 20.0
- Description: The maximum loss allowed in a single trading day, expressed as a percentage of the account balance at the start of the day (or at the last reset time). Only active if
- Use Weekly Loss Limit
- Description: If set to
true
, enables the weekly loss limit feature. The bot will stop opening new trades for the rest of the trading week (until the reset time) if the accumulated loss reaches the specified percentage. - Default: false
- Description: If set to
- Weekly Loss Limit % Balance
- Description: The maximum loss allowed in a single trading week, expressed as a percentage of the account balance at the start of the week (or at the last reset time). Only active if
Use Weekly Loss Limit
istrue
. - Default: 5.0
- Min Value: 0.1, Max Value: 50.0
- Description: The maximum loss allowed in a single trading week, expressed as a percentage of the account balance at the start of the week (or at the last reset time). Only active if
- Limit Reset Time (UTC HH:mm)
- Description: The time of day (in UTC, format HH:mm) when the daily loss counter resets. The weekly counter resets at this time on the first trading day of the week (typically Monday).
- Default: "00:00"
Group: Time Filter
- Enable Time Filter
- Description: If set to
true
, enables filtering of trading activity based on the specified days and time sessions. Iffalse
, the bot can trade 24/7. - Default: false
- Description: If set to
- Monday / Tuesday / Wednesday / Thursday / Friday / Saturday / Sunday
- Description: Checkboxes to allow (
true
) or disallow (false
) opening new trades on each specific day of the week (based on server time). Only active ifEnable Time Filter
istrue
. - Default: Mon-Fri=true, Sat/Sun=false
- Description: Checkboxes to allow (
- Start Time 1 (UTC HH:mm) / End Time 1 (UTC HH:mm)
- Description: Defines the start and end time (in UTC, format HH:mm) for the first allowed trading session. Handles overnight sessions correctly (e.g., Start 22:00, End 06:00). Only active if
Enable Time Filter
istrue
. - Default: "00:00" / "23:59"
- Description: Defines the start and end time (in UTC, format HH:mm) for the first allowed trading session. Handles overnight sessions correctly (e.g., Start 22:00, End 06:00). Only active if
- Enable Second Time Session
- Description: If set to
true
, enables a second, independent trading session defined by Start Time 2 and End Time 2. Only active ifEnable Time Filter
istrue
. - Default: false
- Description: If set to
- Start Time 2 (UTC HH:mm) / End Time 2 (UTC HH:mm)
- Description: Defines the start and end time (in UTC, format HH:mm) for the second allowed trading session. Only active if
Enable Time Filter
andEnable Second Time Session
aretrue
. - Default: "15:00" / "23:00"
- Description: Defines the start and end time (in UTC, format HH:mm) for the second allowed trading session. Only active if
Group: MA Trend Filter
- Use MA Trend Filter
- Description: If set to
true
, enables a filter that requires the price to be above (for Long) or below (for Short) a specified Moving Average, potentially by a minimum distance. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- MA Period
- Description: The period used for the Moving Average calculation in this filter.
- Default: 20
- MA Type
- Description: The type of Moving Average (e.g., Simple, Exponential) used for this filter.
- Default: Exponential
- Min Long/Short Distance from MA (Pips)
- Description: The minimum distance (in pips) the current price must be above the MA to allow a Long trade, or below the MA to allow a Short trade. Set to 0 to only require price to be above/below the MA line itself.
- Default: 0.0
- Min Value: 0.0
Group: RSI Filter
- Use RSI Confirmation Filter
- Description: If set to
true
, enables a filter using the Relative Strength Index (RSI) to confirm trade direction. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- RSI Confirmation Period
- Description: The period used for the RSI calculation.
- Default: 14
- Min Value: 2
- RSI Level Confirm Buy (>=)
- Description: The RSI value must be greater than or equal to this level to allow a Buy trade.
- Default: 50
- Min Value: 0, Max Value: 100
- RSI Level Confirm Sell (<=)
- Description: The RSI value must be less than or equal to this level to allow a Sell trade.
- Default: 50
- Min Value: 0, Max Value: 100
Group: OBV Filter
- Use OBV Filter
- Description: If set to
true
, enables a filter using the On Balance Volume (OBV) indicator to confirm trade direction based on volume flow. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- OBV Use Smoothing (MA)
- Description: Determines how the OBV filter logic works.
true
: Allows trades only if OBV is above (for Buy) or below (for Sell) its own Moving Average.false
: Allows trades only if OBV is rising (for Buy) or falling (for Sell) compared to the previous bar.
- Default: false
- OBV Smoothing Period
- Description: The period for the OBV's Moving Average. Only active if
OBV Use Smoothing (MA)
istrue
. - Default: 5
- Min Value: 2
- Description: The period for the OBV's Moving Average. Only active if
- OBV Smoothing MA Type
- Description: The type of Moving Average used for smoothing the OBV. Only active if
OBV Use Smoothing (MA)
istrue
. - Default: Simple
- Description: The type of Moving Average used for smoothing the OBV. Only active if
Group: Stochastic Filter
- Use Stochastic Filter
- Description: If set to
true
, enables a filter using the Stochastic Oscillator to potentially block trades occurring in overbought or oversold conditions. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- Stoch %K Period / %D Period / Slowing / MA Type
- Description: Standard parameters defining the calculation of the Stochastic Oscillator.
- Defaults: K=14, D=3, Slowing=3, MA Type=Simple
- Stoch Overbought Level (>)
- Description: If the Stochastic %K line is above this level, Buy trades will be blocked by this filter.
- Default: 80
- Min Value: 50, Max Value: 100
- Stoch Oversold Level (<)
- Description: If the Stochastic %K line is below this level, Sell trades will be blocked by this filter.
- Default: 20
- Min Value: 0, Max Value: 50
Group: Volume Filter
- Use Volume Filter
- Description: If set to
true
, enables a filter requiring the volume of the signal bar (previous closed bar) to be above a certain threshold relative to its average volume. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- Volume MA Period
- Description: The period used for calculating the Moving Average of volume.
- Default: 20
- Min Value: 2
- Volume MA Threshold Multiplier
- Description: The current bar's volume must be greater than (Average Volume * this Multiplier) to pass the filter. A value of 1.0 means volume must be above average.
- Default: 1.0
- Min Value: 0.1
Group: MACD Filter
- Use MACD Filter
- Description: If set to
true
, enables a filter using the MACD indicator to confirm trade direction. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- MACD Fast/Slow EMA Period / Signal Period
- Description: Standard parameters defining the calculation of the MACD indicator.
- Defaults: Fast=12, Slow=26, Signal=9
- MACD Filter Logic
- Description: Determines the condition for the MACD filter.
MacdLineVsSignalLine
: Requires MACD line to be above Signal line for Buys, below for Sells.MacdLineVsZero
: Requires MACD line to be above 0 for Buys, below 0 for Sells.
- Default: MacdLineVsSignalLine
Group: DMI / ADX Filter
- Use ADX Range Filter
- Description: If set to
true
, enables a filter that blocks trades if the ADX value is below the specified threshold, indicating a weak trend or ranging market. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- ADX Threshold Level (< Blocks)
- Description: If the ADX value is below this level, trades will be blocked by this filter.
- Default: 25
- Min Value: 0, Max Value: 100
- Use DMI Direction Filter (DI+/DI-)
- Description: If set to
true
, enables a filter requiring confirmation from the DMI lines (DI+ > DI- for Buys, DI- > DI+ for Sells). Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- DMI/ADX Period
- Description: The period used for the ADX and DMI indicator calculations.
- Default: 14
- Min Value: 2
Group: Bollinger Bands Filter
- Use Bollinger Bands Filter
- Description: If set to
true
, enables filtering based on the price's position relative to the Bollinger Bands. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- BB Filter Logic
- Description: Determines how the Bollinger Bands filter works.
BlockOutsideBands
: Prevents trades if the entry price is outside the bands.AllowOnlyOutsideBands
: Allows trades only if the entry price is outside the bands.AllowOnlyInsideBands
: Allows trades only if the entry price is inside the bands.
- Default: BlockOutsideBands
- BB Period / Standard Deviations / MA Type
- Description: Standard parameters defining the calculation of the Bollinger Bands.
- Defaults: Period=20, StdDev=2.0, MA Type=Simple
Group: Ichimoku Filter
- Use Ichimoku Filter
- Description: If set to
true
, enables a filter using the Ichimoku Kinko Hyo indicator, typically checking the price's position relative to the Kumo cloud. Applied before opening a trade unless an override is active. - Default: false
- Description: If set to
- Ichimoku Tenkan-sen / Kijun-sen / Senkou Span B
- Description: Standard periods used for calculating the Ichimoku indicator components. The filter logic checks if price is above the Kumo (cloud top) for Buys or below the Kumo (cloud bottom) for Sells.
- Defaults: Tenkan=9, Kijun=26, SenkouB=52
Group: General Trend & ATR Override
- Always Force ContinueTrend (Manual)
- Description: If set to
true
, this manually overrides all specificAction On...
parameters AND all indicator filters. It forces the bot to always take trades in the "natural" direction (e.g., Sell on Support Breakout, Buy on Resistance Breakout, Buy on Support Touch/Approach, Sell on Resistance Touch/Approach). - Default: false
- Description: If set to
- Use Automatic ATR Override
- Description: If set to
true
, enables an automatic override based on volatility. If the current ATR is significantly higher than its moving average (defined by the multiplier below), it assumes high volatility and forces the "ContinueTrend" action, overriding specific action parameters and filters (similar to the manual override). - Default: false
- Description: If set to
- ATR Period (Override, TS, Init SL/TP)
- Description: This single parameter defines the period for the ATR calculation used by multiple features: the Automatic ATR Override check, the ATR Trailing Stop, and the ATR-Based Initial SL/TP.
- Default: 14
- Min Value: 2
- ATR Average Period (for Override)
- Description: The period for the Moving Average applied to the ATR indicator, used specifically for the Automatic ATR Override check (comparing current ATR to its average).
- Default: 20
- Min Value: 2
- ATR Threshold Multiplier (for Override)
- Description: The multiplier used in the Automatic ATR Override check. The override is triggered if Current ATR > (Average ATR * Multiplier).
- Default: 2.0
- Min Value: 0.1
For the backtesting and live proving of these cBots, I am utilizing IC Markets: Visit IC Markets
My strategy is to copy: https://ct-sc.icmarkets.com/copy/strategy/100817