BlueSwift GridRescue – MT4/MT5 – user manual – Trading Systems – 17 April 2023

(Version 1.0)

–a product by BluesAlgo Ltd 2023 

This is user manual for using BlueSwift’s Grid Rescue Expert (‘BlueSwift’)

Glossary for terms used in this manual:

       TopOrder / BottomOrder: TopOrder means that latest order  opened in the grid i.e. last order, BottomOrder means the first order in the grid series, i.e. the first order. When grid’s order(s) are closed, the ‘TopOrder’ and ‘BottomOrder’ aliases will be ‘passed’ to the current running orders. That’s why I avoid using ‘First’ or ‘Last’ order terms because this imply the very first order being opened by the grid series, which may be already closed

       Grid Cluster (or Grid Pair): the combination of two or three orders in the grid of which their profit is tracked and they would be closed together once the specific condition is met.

  Grid Size: the count of orders in a grid. For example 2 means there are currently 2 active orders in the grid

       2-Node: grid order cluster with 2 orders TopOrder and BottomOrder

       3-Node: grid order cluster with 3 orders TopOrder, BottomOrder and one MiddleOrder. The MiddleOrder will be determined as follows:

Grid’s size

Formula

Example

Less than 7 orders

two orders below the TopOrder

For a grid with 6 orders, this would be the 4th orders (6-2 = 4)

More than 7 but Less than 10 orders

three orders below the TopOrder

For a grid with 10 orders, this would be the 7th orders (10-3 = 7)

10 orders or more

Four orders below the TopOrder

 

       Profit-to-close: the sum $ of profit (-loss) amount for all orders in a grid cluster at which BlueSwift GridRescue will close them. This is the total of profit, swap, and commission $ for each order.

       Rescue Iteration: the iteration 1st, 2nd, 3rd of each order close instance. BlueSwift keep track of how many iteration each Rescue Mode has been executed and also the total rescue iteration for the whole grid (regardless of rescue mode)

       Rescue Mode: the mode that BlueSwift used to close grid cluster. These are bots working in parallel on every tick with different order close’s logic. At the time of this writing (v1.0), there are five modes in BlueSwift with their nickname in brackets:

  • Basic Mode (‘SubGrid Close’)
  • Panic Mode (‘Panic Close’)
  • TimeCritical Mode (‘Crit Close’) (ß this mode utilise the NewsFilter sub-module)
  • HardClose Mode (‘Hard Close’)
  • OutOfTime Mode (‘OutOfTime Close’)

  Input Parameters instruction

  1. BASIC RESCUE MODE

basic_rescue_param

    #

    Inputs

    Description

    Values & examples

    1

    Allow basic Rescue Mode?

    This is toggle to enable / disable rescue mode

    True/False. This is the main toggle for all rescue modes in BlueSwift. i.e. if you want to switch off BlueSwift operation, you can just need to set this to ‘False’

    2

    Symbol(s)-separated by comma (,)

    List of Symbol which BlueSwift would operate on. Order’s Symbol that not in this list will be ignore by BlueSwift. For more information about BlueSwift tracking mechanism, refer below

    String list of broker’s symbols, separated by comma(,):  – “EURUSD,GBPUSD,USDJPY”If your broker use suffix for their symbols, you can either use the “Broker’s symbol suffix” input parameter below or just insert it directly here as follows:  – “EURUSD.pro,GBPUSD.pro,USDJPY.pro“if this field left blank, then BlueSwift will only operate on the current chart’s symbol only (i.e. the chart’s symbol where you drop BlueSwift on)

    3

    Broker’s symbol suffix

    Broker’s designated suffix for their tradable symbols

    Aside from #2, you can also add your broker’s suffix for trading symbol here. For example: if your broker’s instruments are EURUSD.ecn then put “.ecn”if your broker’s instruments are EURUSD.. then put “..”This can be blank if you already include the symbol suffix in the field #3 above

    4

    Tracking EA’s Magic number(s) to rescue – separated by comma (,)

    List of Magic Number which BlueSwift would operate on. Order’s Magic that not in this list will be ignore by BlueSwift

    Example: 1234,555333,459282

    5

    Tracking EA Trade comment to rescue

    The comment of the tracked EA – This would be helpful in case you want to track separate sub-grid within the same expert’s magic with a common comment.

    Some grid experts on market use order’s comment to manage their order, because the orders maybe same symbol and magic number but with different comment. For example: ”grid_ea-M15” versus “grid_ea-H1”

    6

    Do not check Tracking EA’S comment- ifTrue, track <Symbol\Magic\Type>

    If True, then ignore grid order’s comment. BlueSwift would only detect and track order with same Symbol, Direction and Magic Number

    if this is True, then GridRescue will ignore order’s comment (i.e. value in #5)

    7

    Order count To Start Rescue

    Number of opened orders in the grid that would trigger Basic Rescue bot operation

    Integers.For example, if user set this value to 4, which means that BlueSwift’s would only start to attemp basic rescue function when there are 4 or more opened orders in the tracked grid

    8

    GridCluster’s Profit to close ($)

    the $ amount of profit at which would BlueSwift will close sub-grid cluster

    For example if this is set to $1, then when the sub-grid cluster’s profit is $1 or more, then all order in the sub-grid cluster will be closed. This value can be negative

    9

    Show Tracking Panel?

    Toggle On/Off grid tracking panel on the current expert’s chart

    True/False. If True: display the BlueSwift dashboard panel on chart which would show active grid series placed by other Experts (if any) currently active in the account

    10

    Panel’s text size

    Change the font size of the panel’s text

    11

    Panel’s text color

    Change the font color of the panel’s text

    2 ADVANCED RESCUE OPTIONS

    2.1 BASIC CLOSE RESCUE MODE – ADVANCE OPTION (dynamic Profit-to-close($) and Cluster Scheme for each iteration)

    Description

    This mode here is an extension of the Basic Close mode – which allow user to dynamically set the Profit-to-close($) and the Cluster Mode (2-Node, or 3-Node) for each of the iterations, instead of only one fixed value of Profit-to-close ($) and Cluster Scheme

    Basic Rescue Mode Advanced Parameters

    #

    Inputs 

    Description

    Values & examples

    2.1.1

    Rescue Scheme

    The scheme for the current iteration (i.e. 2-Node or 3-Node)

    Options:

       _default_,

       _3node_only_,

       _2node_for_less_than_7_orders_,

       _2node_for_less_than_10_orders_,

       _iteration_based_,

    _default_: if grid’s size less than or equal to 4 orders then the default scheme is 2-Node, 5-10 is 3-Node

    _3node_only_, always try to use 3-Node scheme, i.e. always form a cluster of three grid order and close them together at the Profit-To-Close

    _2node_for_less_than_7_orders_: if grid’s size is less than 7 order than use 2-Node, and when 7 orders for more than use 3-Node

    _2node_for_less_than_10_orders_: if grid’s size is less than 7 order than use 2-Node, and when 10 orders for more than use 3-Node

    _iteration_based_, this option let user define specific Profit-to-close and the cluster scheme for each iteration with the syntax {scheme}:{profit-to-close} using #2.1.2, separated by comma. For example: if user put in “2:-1.25, 3:-2.50, 2:2.0, 3:-0.1”

    which would means that

    – 1st iteration: close 2 orders when their Profit-to-close = -$1.25

    – 2nd iteration: close 3 orders when their Profit-to-close = -$2.5

    – 3rd iteration: close 2 orders when their Profit-to-close = $2.0

    – 4th iteration: close 3 orders when their Profit-to-close = -$0.1

    So that user has complete freedom to instruct at which level of Profit-To-Close this mode should close and between 2-Node or 3-Node scheme. A best practice is to try a low, negative Profit-to-close at the early iteration and then gradually increase this amount for subsequent iteration so to avoid likelihood of deep drawdown and easier to close part of the grid at the early stage. For the _iteration_based_ option, the last iteration setting in the input will continue to be used until the whole grid is closed, so in the example above, the SubGrid Close bot will continue to close 3 orders at -$0.1 for the 5th, 6th, 7th … iteration etc.

    —————————————-

    *author note: most of the time, I use only _default_, _3node_only_ and _iteration_based_ due to personal preference, as I am not prefer to let my grid get to more than 5 running orders

    2.1.2

    Iteration Mode and ProfitToClose (If select RescueScheme = _Iteration_based_)

    The list of RescueScheme and Profit-To-Close for each iteration, separate by comma

    {scheme}:{profit-to-close}

    Example:

    2:1.25, 3:2.5, 2:2.0, 3:2.0, 3:1, 3:1, 3:0.5, 3:0.5

    (white-space between the comma will be automatically trimmed, so not to worry)

    2.2 PANIC CLOSE RESCUE MODE

    Description

    ‘Panic Close’ rescue mode is a feature which specialised for ‘panic’ circumstances, with the following ‘triggers’:

    • grid’s drawdown ($) have reached an alarming level
    • grid size (count of order) have become many
    • grid’s maximum lotsize has become too big

    When one or more of these trigger are met, the grid would be considered in ‘Panic’ mode à the Panic Mode bot will attempt to close TopOrder and BottomOrder.

    From my reseach and experience, the factors selected above has been the primary factor contribute to the growth of drawdown and account’s margin call and hence will need to be controlled in order for the grid’s drawdown to be ‘sustainable’. Depending on the tracked grid EA logic, users can define the metric of these triggers to determine if the grid’s exposure have ‘entered’ Panic mode 

    panicClose_param

    #

    Inputs

    Description

    Acceptable values & examples

    2.2.1

    Use PanicClose Rescue Mode?

    This is toggle to enable / disable PanicClose rescue mode

    True/False

    2.2.2

    Order’s count for PanicClose (0 = disable)

    The number of order in the grid when you want the PanicClose mode to start execute rescue.

    For example, if you set this to 5, then PanicClose would only start execute rescue when there are 5 or more orders in the grid. This is to avoid PanicClose being executed prematurely and reduce the opportunity for the whole grid being closed instead

    2.2.3

    MaxDrawdown for PanicClose (0 = disable)

    The level of Drawdown ($) when you want the PanicClose mode to start execute rescue

    Same as above, PanicClose bot will not attempt to close orders until the grid’s drawdown has reached this level.

    Example: if this set to -90, then PanicClose bot would start close TopOrder and Bottom Order (at the Profit-to-close defined) ONLY when grid’s drawdown is at -$90 or more (i.e. running profit of TopOrder + BottomOrder is -$90 or less).

    2.2.4

    MaxLotSize for PanicClose (0 = disable)

    The Maximum lot size to determine if grid is in ‘Panic mode’.

    Same as above, PanicClose bot will not attempt to close orders until the grid’s maximum lot size has reached this level

     

    Example: If user set this to 0.12 then the tracked grid would be considered ‘Panic’ when an order with 0.12 lot size is opened

    2.2.5

    Profit level ($) for panic close

    The sum of TopOrder and BottomOrder at which PanicClose bot woud close them

    Can be negative – which would allow PanicClose at small loss

    2.2.6

    Position of 2nd panic order [0=Smallest order, 1=next grid order …]

    ‘2nd panic order’ means the BottomOrder to be tracked together with the TopOrder. This allows user to pick an alternative ‘BottomOrder’ instead of the default one

    This is used when the distance between the current Top and Bottom order in the grid is too far away which make it difficult for the their profit’s sum to reach the Profit-to-close level (in #2.2.5). Thus user can set an ‘alternative’ BottomOrder with a smaller distance, hence increase the chance for PanicClose bot to execute.

    2.2.7

    Reduce/Increase ProfiToClose in subsequent PanicClose

    This toggle allow user to change the initial Profit-to-close for every subsequent PanicClose iteration

     

    True/False

    If True, the Panic’s initial Profit-to-close (defined in #2.2.5) will be ‘drifted’ by the amount (in #2.2.8 below) upward (if “+ve”) or downward (if “-ve”)

    2.2.8

    Step to reduce (-) or increase(+)

    The ‘drift’ step by which the Panic Profit-to-close would be changed by

    Example: Given that the initial Profit-to-close (#2.2.5) is -8 and #2.2.7 is True, if user set this to 6 then:

     – 1st PanicClose iteration: Profit-to-close = -$8

     – 2nd PanicClose iteration: Profit-to-close = -$2 (-8 + 6)

     – 3rd PanicClose iteration: Profit-to-close = $4 (-2 + 6)

     – 4rd PanicClose iteration: Profit-to-close = $10 (4 + 6)

    and so on…

     

     

    2.2.9

    Min/Max Change to stop drift ProfitToClose

    The total amount of change beyond which the drift would stop

    This stop further drift of Profit-to-close when to total accumulated change from the step reached this amount.

    Continue from the example in #2.2.8 above: if user set this to 12, then the drift will stop at the 2nd iteration because 6 (1st iteration) +6 (2nd iteration) = 12

    2.2.10

    IsPanicCloseBottomOrderIfBetter?

    Instruction for PanicClose bot to compare the profit sum for default Top/Bottom pair alternatives

    True/false

    Given that the value in  #2.2.6 is not 0, i.e. the PanicClose pair is formed using the alternative BottomOrder, then when this is True, PanicClose bot will compare the two pairs’ profit sum and pick the best one that reached current Profit-to-close: 

    1. TopOrder + default BottomOrder 
    2. TopOrder + alternative BottomOrder

    This is for the scenario where the tracked grid Expert subsequent order opened might change the optimal pair between the (1) and (2), so that user won’t be ‘locked in’ by the choice he/she made in #2.2.6 above

    2.2.11

    Disable panic close after n time

    This specify how many times BlueSwift would use Panic Close for a grid series. Once this limit has reached then BlueSwift would NOT continue to execute panic close. This is to avoid panic close being used too much and in case of negative profit to close (as specified above) would erode the profit earned by the tracked EA

    Integer: 1,2,3,.. etc.,

    Recommended values should be between 8 to 15 times

    2.3 TIME CRITICAL CLOSE RESCUE MODE

    Description

    Instruct GridRescue to close order base on time period. This mode is useful for grid system that is time-sensitive for example, trading system entry / exit base on News event or defined time-range (such as London or US open)

    In this mode, the main trigger parameter are:

    • The TopOrder’s profit
    • The BottomOrder’s opening duration

    The main rationale for the two triggers above is that: the longer the BottomOrder stay open the higher the chance user being caught in unfavorable position if market move against the grid. Thus user can set the duration value so the CritClose bot will kick-in to attempt close out the grid

    The built-in NewsFilter module is combine with this mode to allow user define exiting condition & strategy during pre- and post-News events periods

    critClose_param

    #

    Inputs

    Description

    Values & examples

    2.3.1

    Use TimeCriticalClose Rescue Mode?

    This is toggle to enable / disable TimeCriticalClose rescue mode

    True/False

    2.3.2

    Panic reason that enable CritClose

    <used in combination with PanicClose>

    This option is used when user want to limit CritClose to being executed ONLY when the grid is in during Panic mode (detected by PanicClose bot). if you don’t want this restriction you can choose the reason = _no_panic_reason_

    Options:

    _1_or_more_panic_reason_: enable CritClose base on any ‘panic’ criteria: e.g. due to either drawdown level, order’s count or max lotsize opened

    _for_drawdown_or_maxlot_only_: enable   CritClose will be executed when the tracked grid is under any either drawdown level or max lotsize opened triggers 

    _for_drawdown_only:  enable CritClose base on the Drawdown criteria in PanicClose bot

    _for_maxlot_only_: enable CritClose base on the MaxLot criteria in PanicClose bot

    _for_drawdown_and_maxlot_only_: enable CritClose base on both Drawdown and MaxLot criteria in PanicClose bot

    _no_panic_reason_ : no need Panic mode to enable CritClose

    2.3.3

    Set TimeRange(s) for CriticalClose, separated by comma

    The time range in which CritClose is active base on broker’s server time (displayed in the Terminal’s MarketWatch)

    String of time-range, separate by comma (,)

    Format for each time range (Start Time and End Time): “hh:mm”

    The time-range syntax would be {Start Time}-{End Time}

    For example 04:30-10:00 means Start Time = 4:30 and End Time = 10:00

    User can set multiple timeranges, separated by comma:

    04:30-10:00,14:30-22:59

    So that CritClose will only be active within these ranges

    2.3.4

    CriticalClose when BottomOrder has been opened > N minutes

    Open duration of BottomOrder. CritClose will only activated when the BottomOrder’s open duration has passed this number

    Integer

    Example, if user set this to 30 → CritClose will attempt to close Top and BottomOrder once BottomOrder has been opened more than 30 minutes (provided that TopOrder’s profit criteria meet the value in #2.3.5 below)

    2.3.5

    TopOrder Profit ($) for CriticalClose

    Minimum profit ($) of TopOrder at which CritClose will close TopOrder with BottomOrder

    Float

    Can be negative

    2.3.6

    [AllGrid] Profit ($) for CriticalClose

    <Extented option> 

    when the tracking grid reach this profit level CritClose will try to close the whole grid instead of just TopOrder and BottomOrder

    2.3.7

    [AllGrid] Min order’s count for CriticalClose

    <Extented option used with #2.3.6> 

    Minimum Grid Size allow for CritClose to close whole grid

    2.3.8

    Only Close all Grid?

    <Extended option> 

    close all opened orders for the whole grid instead of just the Top and Bottom order

    True/False

    if True : instruct CritClose bot to ONLY close whole grid, i.e. this will ignore Top&BottomOrderClose (#2.3.5) and ForceClose parameters (#2.3.9 and #2.3.10)

    2.3.9

    Force-Close At EndTime

    <Extended option>  execute TimeCriticalClose one more time right at the end of the specified time-range

    True/False

    Using the example in #2.3.3: if True, then CritClose bot will attempt to close Top and Bottom orders when server time is 10:00 and 22:59

    2.3.10

    Force-Close Ignore Max Duration

    <Extended option used with #2.3.9>  used with Force-Close At EndTime option. This specified if ForceClose bot ignoring the open-duration attribute of the Bottom order in the grid

    True/False

    If True: ignore Bottom order’s open-duration when perform ForceClose. This is for extra aggressive exit strategy, CritClose will skip the BottomOrder duration criteria

    ————————————

    *Author note: use this with caution as this may cause CritClose to close Top and Bottom order with large loss if the TopOrder profit (#2.3.5) is too low to compensate for the loss in BottomOrder

    2.3.11

    Enable News Filter?

    This toggle to enable/disable adding NewsFilter for CritClose rescue mode.

    True/False

    2.3.12

    Minutes before news

    Integer

    Recommended values to be 30, 60, 90, or more than 120

    2.3.13

    Minutes after news

    Integer

    Recommended values to be 30, or 60

    2.3.14

    News Impact to filter

    The News event’s impact for NewsFilter. Only news with this impact or higher would enable CritClose bot action

    Options:

    _LowImpact_

    _MediumImpact_

    _HighImpact_

    2.3.15

    News’s currency to check

    CritClose would only action on the tracked grid’s symbol if it contains the currency impacted by the current active News event

    List of currency, separated by comma

    Example: USD,EUR,GBP

    This would affect:

    • XAUUSD
    • All EUR major and crosses
    • All USD major and crosses
    • All GPB major and crosses

    2.3.16

    {OpenMinutes:Profit:MinGridSize:IsAllGrid?}

    This is the OrderClose setting for activate CritClose bot to close Top and BottomOrder when NewsFilter detect active News event

    Syntax: {OpenMinutes:Profit:MinGridSize:IsAllGrid?}

    Example: “5:0:2:true

    This means:

     – `5’: once the BottomOrder has been opened for more than 5 minutes 

     – `0’: at $0.00 profit (break even)

     – `2’ when there is at least 2 orders in the grid

     – `True’: Close whole grid only, i.e. #2.3.8

    2.3.17

    minutes Before Extreme news

    duration length (in minutes) Before extreme news event

    As per #2.3.12

    2.3.18

    minutes After Extreme news

    duration length (in minutes) After extreme news event

    As per #2.3.13

    2.3.19

    Keywords to check, comma separated- syntax {Currency}:{words}

    The keywords and currency filter to determine if a News event is of ‘Extreme’ category

    As per #2.3.16

    2.3.20

    CritClose Options around Extreme News

    This is the OrderClose setting for activate CritClose bot to close Top and BottomOrder when NewsFilter detect active Extreme News event

    As per #2.3.16

    This parameter allow user to set a separated, more aggressive exit criteria around Extreme News events like Non-farm payroll or Fed speaker.

    2.3.21

    Show NewsFilter Panel on Chart

    Toggle On/Off for display of NewsFilter Panel 

    True/False

    Note: recommend to turn this off in Strategy Tester to speed up the back-test speed if you don’t need to test the CritClose activity around News event

    2.4 HARD CLOSE RESCUE MODE

    Description

    This mode will allow user to close the current BottomOrder in the grid once the grid’s drawdown has reached a certain level. This thus act a soft ‘stop-loss’ for the grid, prevent margin call and presever equity (i.e. emergency mode) 

    HardClose_param

    #

    Inputs

    Description

    Values & examples

    2.4.1

    Use HardClose Rescue Mode?

    Toggle to enable/disable HardClose rescue mode

    True/False

    2.4.2

    Grid’s DD level(s) to start closing bottom order, comma “,” separated

    Gradually closing down bottom orders first when this Drawdown level was reached

    Float-negative value

    Example -500.90 -> which means a drawdown of -$500.90

    User-error-proofed: BlueSwift EA has a built-in validation to ensure that in case user, by mistake, key in a positive value, HardClose bot would not be executed. Please remember to double-check this value to ensure you type in a negative value

    User can set multiple drawdown level for each HardClose iteration:

    Example: “-90,-160,-120” -> this means: 

     – 1st HardClose iteration: close BottomOrder when grid’s drawdown is -$90

     – 2nd HardClose iteration: close BottomOrder when grid’s drawdown is -$160

     – 3rd HardClose iteration: close BottomOrder when grid’s drawdown is -$120

    Once it get to the final iteration in the list, the drawdown level will be reset back to the first item in the list, i.e. with the example above, HardClose bot will close BottomOrder in 4th iteration at -$90 drawdown 

    ———————- 

    Author’s note: recommended to use a increasing drawdowns list with around 4 or 5 iteration: such as: -90,-150,-260,-390. This should allow HardClose activity while at the same time allow room for new order with bigger lotsize to close out the grid when market come back

    Take Profit level ($) close whole grid 

    Profit ($) level for HardClose bot to close the whole grid

    IsCloseBothWay? If True: close both BUY&SELL direction

    If there are currently both BUY and SELL grids on a symbol-magic: this option would enable HardClose bot to close both grids. 

    True/False

    If true: Close out grids of both direction 

    This is useful for hedged grid system where they have running BUY and SELL grids simultaneously 

    2.5 OUT-OF-TIME CLOSE RESCUE MODE

    Description

    This mode will allow user to instruct BlueSwift to try closing the whole grid when outside of specified time-range (the opposite of CritClose). This is  useful to avoid having running orders during rollover or low liquidity periods such as weekend, mid-night rollover, market holiday

    outOfTimeClose_param

    #

    Input

    Description

    Values & examples

    2.5.1

    Is OutOfTimeClose Enabled?

    toggle to enable / disable Out-of-Time Close rescue mode

    True/FalseIf True: BlueSwift would try closing grid’s opened order when out of specified time-range

    2.5.2

    WeekDay OutOfTime close opened order

    The Out-of-time for weekdays (Monday – Thursday)

    String of time-range, separate by comma (,) similar to #2.3.3

    Example:

    – “01:30-22:59“:  

    – “01:30-08:30,16:00-20:15

    OutOfTimeClose will activate outside of these ranges. For example if user set “01:30-08:30,16:00-20:15” then orders would be close if broker’s server is between the following for Monday to Thursday: – 00:00 – 01:29 – 08:31 – 15:59 – 20:16 – 23:59

    2.5.3

    Friday OutOfTime close opened order

    The Out-of-time for Friday

    Same as 2.5.2 above but for Friday only -> useful for those user who want to stay out of market going into weekend

    2.5.4

    Minimum Profit ($) for OutOfTimeClose

    The Profit-to-close for OutOfTimeClose bot

    ——————————————————–

    Why using this Expert

    Do you use a grid/martingale system for your trading? Do the following problems sound familiar to you:

    • You only have small capital $100-$500 to start with trading but you want the 8-10% monthly return from a grid system? 

    • You use grid / martingale strategy but constantly need to keep Drawdown at a comfortable level below your “pain-tolerance” threshold?

    • You want to quickly get out of opening grid/martingale on market pull-back / trending?

    In one way or another, everyone would admit it: Grid and martingale are the MOST PROFITABLE systems … until it BLOW your account. Have you ever had to excruciatingly go through dozen of grid systems, backtest them, put them on live account, see they works for a few weeks or months (dreaming about quitting your day job and buy expensive cars) and then BOOM, your account is gone to dust, together with your hard-earn savings. During my +10 years of trading forex, having blowned countless of accounts due to martingale or grid-like strategies, I know the frustration.

    The main issues, and I means systematic issues, with most of grid/martingale strategies EA on the market are:

    1. Not suitable for small account size: They have no Drawdown rescue mechanism and only have some basic protective measures like the level-to-start-averaging, which just slow down the Drawdown and mildly reduce the blow probability. These EA will require a very large deposit like $3000~$5000 to start. Eventually, they will still BLOW, losing you $3000~$5000.

    2. Rescue won’t stop drawdown continue: Some grid EAs have Drawdown rescue built-in. However the rescue mechanism is very “linear” and rigid: it will pair up and close only the top (largest) and bottom (smallest) orders in profit. This approach seems working on paper, but in reality it won’t. As market start trending deeper against you, bigger lotsize order will have to opened to continue rescue the smallest bottom order (which actually not impact your drawdown much!), and while a big chunk of orders in the middle of the grid (the account-killer ones) still opened, thus Drawdown continue to grow and then BLOW your account eventually. The diagram below illustrate this whack-a-mole problem:

    3. Risk of margin-call / account blow is still significant: Despite the above measures, with all grid/martingale systems, there are a certain point-of-no-return (depending on your account’s capital and margin level), when you only have TWO choices:

    1. All-in: hopefully the next order EA opened will be enough to close out all the whole grid in profit (and losing sleep during the whole process), or 
    2. Fire-sales to preserve equity: Painfully close out all / part of the grid to release deposit load, swallowing huge losses.

    both of the above approaches are very deterimental to your capital as well as your trading psychology and mentality.

    4. EA authors simply don’t care: Unfortunately, the above problems are persist because most grid/martingale EA authors are either convince you hard enough that their Drawdown rescue feature is safe enough to have you profitable using their EA, or they are busying publish next “promising” new bots to continue milk out $$$ from the exsiting & new buyers, leaving us with the existing incomplete EA that will BLOW your account any minute.

    ————————————

    With this painful experience, and have been fed-up with requesting the other grid EA authors to change / improve their program, I have coded this BlueSwift myself that is specially designed to:

    • Work with any existing grid/martingale EA: no more nagging your EA authors into adding Drawdown rescue feature to their EA, just use my EA to manage their orders (*)

    • 2-Node / 3-Node rescue: EA will smartly select three orders from current grid and close them at a profit that you specify, not just Top and Bottom orders. This not only stop the Drawdown to spiral larger when market continue to trend against you, but also get you out of the grid nightmare faster before it passes the point-of-no-return.

    • Flexible basic and advanced rescue schemes: you can choose from either 4 predefined rescue schemes with the BASIC RESCUE MODE that have been back-tested with most of Fx pairs and Gold (XAUUSD) with your level-to-start-rescue (optimal is 4th or 5th) or you can specify rescue Modes (2Node | 3Node) and ProfitToClose at each iteration (using iteration-base scheme). This means that you are totally in control and can switch between 2-Node and 3-Node rescue mode as you like. If BASIC RESCUE MODE are not sufficient, you can leverage the ADVANCED RESCUE MODES, each was added for a very specific trading style / conditions:

     1. PANIC CLOSE: should be used when market start strong trending against your grid’s direction or when DD start inching further away from your preferred level 

     2. TIME CRITICAL CLOSE: should be used when your tracking experts have a very time-sensitive entry/exit trigger such as mid-night scalper, breakout, News scalper  

     3. HARD CLOSE: this mode is similar to the Fire-sales approach to preserve equity. However instead of closing out all orders in the grid at once, HARD CLOSE gradually close the earliest orders in the grid one by one. This various advantage over tradition equity protection, which I would analyse in detail below

     4. OUTOFTIME CLOSE: this mode allow user to specified condition to close any running grids during the period outside the specified time-range(s). This is to avoid having exposure during low-liquidity period such as mid-night rollover, week-end, market-holiday, etc. 

    • Manage Buy and Sell grid separately: no worry about being tangled in synthetic hedged positions with both buy and sell grids. GridRescue EA will manage buy and sell grid orders separately.

    • OneChart Setup: You only need one chat for GridRescueEA to manage multiple master EA and Symbols

    ———–

    Grid series tracking mechanism

    BlueSwift EA detect and track grid series using 2 type of entities:

     1. Symbol-MagicNumber-OrderType

     2. Symbol-MagicNumber-OderType-OrderComment

    With these two tracking mechanism, it allows BlueSwift being able to adapted to various tracking requirements and user profile:

     – Users want to manage Buy and Sell orders separately

     – Users who use one Expert on multiple Symbol

     – Users who use one Expert but with mulitple MagicNumber

     – Users who use multiple Expert on one Symbol

     – Users who use a grid Expert that manage their grid orders with a common Comments string pattern: for example {grid-comment}-0 {grid-comment}-1, {grid-comment}-2 {grid-comment}-3 etc. 

    ———–

    Conclusion

    BlueSwift GridRescue is a one-stop shop of risk mamagement utility for anyone out there who currently use or intend to use a grid / grid-like trading system. I have done a lot of research, analysis, testing and making sure BlueSwift functionalities described here can be used to suit your trading portfolio and risk intolerance. If you think you have further enhancement ideas for BlueSwift – please do not hesitate to contact me via MQL message, email blue.algoplus@gmail.com after purchase if you need further support

    ———–

    (*) Word of caution: Please note that Blueswift Grid Rescue may not be suitable for grid strategies where they do not ‘reset’ lotsize averaging the upcoming order after a close of some orders in series (see illustration below). This could lead to an insanely-big lotsize opened by your tracked grid ea and could blow the account.

    It’s always highly recommended to forward-test BlueSwift with your intended grid expert(s) in a demo account for a period of 2-3 months to see how your grid expert(s) behave after some part of the series opened by them were closed by BlueSwift.

    (**) while this tool would reduce account blowing risk substantially, it does not guarantee 100% of no blow. Using any grid EAs will always come with margin call at some point in time (as it would depend on many factors like the tracked grid Expert trade entry’s logic, the account’s available margin, brokers conditions like slippage, black swan event, etc.). I highly recommend you to use BlueSwift to reduce / delay the risk of margin call and withdraw closed profit frequently or tranfer them to a non-grid system. BlueSwift has been tested rigorously both in backtest and forward test environment more than a year prior to release, and I am confident that it functionalities would cover most market conditions and scenarios. While using BlueSwift, if you have requirements for scenarios in trading that BlueSwift has not yet covered, please do reach out to me, I will do my best to incorporate that into this EA.

Source link

Comments are closed.