sgsfuture
A futures strategy that’s almost exactly like the spot stepgridscalp strategy. The main difference is that it does not (small stop losses aside) partially close trades at prices worse than avg. entry price. Default settings differ from spot, and ensure a higher trading frequency.
INFO
Currently this strategy runs in long only mode. Short mode will come in a future release.
Key features:
truly multi timeframe: user configurable low, medium und high timeframes for monitoring aspects like trend changes, momentum strength and more. For example you could trade on 5m charts, while also monitoring 15m and 4h.
different trading styles that are automatically used when opportune:
normal grid trading
cautious ‘scalping’ in upper ranges: aiming to exit the zone with no or a very small sized bag, using a smaller amount per buy order, strict buydowns for DCA and very cautious sell trailing
trade supports: when the market looks very bad, grid buy trading stops and the strategy moves into a mode where it trades higher timeframe supports with limit orders
different sell trailing styles that are automatically used when opportune:
regular trailing, with dynamic trailing ranges
candle low trailing, to trail bigger moves upwards
micro stop loss style, to quickly start sell trailing after riskier buy orders, accepting a tiny loss as outcome
quick detection of trend direction changes
INFO
Cancel orders must be disabled in the global bot settings when you use the ‘trade supports’ option (you can do that on the setup page).
About the trend module
The trend options are what set this strategy apart from other similar strategies. The exact details are not public to protect the work of the author, but how the data is used is a lot simpler and more transparent than in previous strategies that use black box data.
All data mentioned below, is visible in the right sidebar on the chart page
Phase system
Using data from three configurable timeframes, one out of six phases gets recognized at any time:
1: very bearish 2: bullish reversal 3: bullish 4: very bullish 5: bearish reversal 6: bearish
Trend sync uses the phase system to determine if any of the following is allowed:
opening new trades, coming from a situation where there is no balance to sell
grid trading
pausing grid trading, and placing limit orders at higher timeframe supports
Trend plus uses the phase system to apply dynamic trailing ranges, for example by increasing the sell trailing range in a very bullish market.
Trend scalping uses the phase system to go into ‘scalping mode’ when the market is either bullish, or very bullish. This mode using a more careful sell trailing mechanism (including tiny, partial stop losses), and reduces the number of ‘high’ buy orders, and instead buying more when price is slightly moving down again.
All trend options can be used together, or individually.
Overbought status and momentum
By monitoring higher timeframes to determine if (and how much) the market is overbought and if the current momentum is bullish or bearish, the strategy can be either more careful with new trades, or extend trailing ranges to aim for more profit.
The strict entry and strict dca options depend heavily on longer term momentum status.
Overview of restrictions
This strategy offers several settings that put restrictions on when new trades may be opened and when DCA is allowed, most of these settings can be used together.
When all restrictions are disabled, the strategy behaves like a more configurable version of stepgrid with small hardcoded limits on repeated buy orders in the same price zone, with much better sell trailing.
The overview below describes the main impact of each restrictive setting.
Setting Restrictions on new trades Restrictions on any buy order
Price action analysis
New trades not allowed in phases ‘very bearish’ and ‘bearish’
Grid buy trades not allowed in phases ‘very bearish’ and ‘bearish’
Strict entry
New trades not allowed when money flow, momentum and volatility are not favorable on the upper timeframe
None
Strict DCA
None
Grid buy trades not allowed when momentum is not favorable on the upper timeframe
Exhaustion sensitivity
None
Grid buy trades not allowed when any of the timeframes is overbought, up to the specified timeframe (none, short, medium or long). For example when exhaustion sensitivity is set to ‘medium’, then buy orders are not allowed while the short, medium or both of these timeframes are overbought
Trade supports
None
Grid buy trades not allowed in phases ‘very bearish’ and ‘bearish’. During this time limit orders are placed at medium or long term supports
Trend scalping
New trades not allowed on upper step when in phases ‘bullish’ or ‘very bullish’ and short term trend is bullish
Enforce additional grid buydown in phases ‘bullish’ and ‘very bullish’
Custom trading range
New trades not allowed when price is not between ‘trading range low’ and ‘trading range high’
Grid buy trades not allowed when price is below ‘trading range DCA stop’
Strategy settings
Balance settings
Setting Description
Trading limit
The standard amount to invest per buy order.
The amount used for each regular buy order. This value is also used to calculate ‘buy count’.
If you use ‘trend sync’ and/or ‘trend scalping’, some orders types can use different amounts using trading limit multiplier settings. The base amount these multipliers use, is the amount set as ‘trading limit’.
Trading limit multiplier
Controls the invest per DCA trade
Setting 1 (default) effectively disables this option. It can be used to increase or decrease the invested amount with each consecutive buy order. Examples with trading limit 100 USDT and max buy count 3:
1: each buy order is for 100 USDT
1.5: first buy 100, second buy 150, third buy 225
2: first buy 100, second buy 200, third buy 400′
Always use trading limit multiplier
Controls when to apply the multiplier
When disabled:
regular tl: (TRADING_LIMIT * TL_MULTIPLIER)^buy count
situation where a ratio applies: TRADING_LIMIT * xxx_TL_RATIO
When enabled:
regular tl: (TRADING_LIMIT * TL_MULTIPLIER)^buy count
situation where a ratio applies: ((TRADING_LIMIT * TL_MULTIPLIER)^buy count) * xxx_TL_RATIO
Max buy count
Limits maximum trade size.
When max is reached, the strategy goes in sell mode only.
A value of 40 means that the total trade size may not exceed 40x the amount set as ‘trading limit’. When max is reached, the strategy goes in sell mode only.
Max open contracts
Limit absolute position size.
Sets the maximum position size of a futures position. Expressed in quote units. If executing a next order would exceed max open contracts, the order will not be fired.
Max loss
Max acceptable loss.
When unrealized loss exceeds max loss, then the strategy will close the full position at loss.
Example: max loss set to 100, stop loss happens when unrealized pnl exceeds -100.
Profit settings
Setting Description
Gain
Profit target for full close orders
When set to 2, full sell is only allowed when hitting a sell step at least 2% ‘above’ average entry price.
Partial sell gain
Gain target for partial close orders
When set to 0.5, partial sell orders happen when hitting a sell step between 0.5% gain and the gain target for full close.
Partial sell ratio
Defines partial sell amounts.
When set to 0.3, each partial close order uses 0.3 * position size.
Partial sell cap
Use a maximum value for partial sell amounts.
Enable to set an upper limit to partial sell order quantity per sell step.
Partial sell cap ratio
Caps partial sell amounts.
Setting 2 as cap value means that a partial close order may not exceed 2x ‘trading limit’.
Period settings
Setting Description
Period
Trading timeframe
Sets which timeframe to use for short term market data. This is the main trading timeframe.
Period medium
Sets which timeframe to use for medium term market data.
Period long
Sets which timeframe to use for long term market data.
Customize grid
Setting Description
Auto step size
Enables using automatic step size.
Lets the bot automatically determine a grid step size that fits the pairs current volatility, Based on Average True Range (ATR).
Step size
Sets a manual step size.
Manually defined grid step size for buy and sell orders, when auto step size is not enabled.
Normally set as a price: setting 500 on USDT-BTC makes the bot trade each time price moves 500 USDT.
When using Pct step size, the value represents a percentage: setting 2 will lead to having steps of 2% of current price.
Minimum step pct
Minimum value for auto step size.
Minimum percentage size for steps, to overrule automatic step size. Setting 1 means that a step is set to 1% of price, unless auto step size is higher than 1%
Pct step size
Use a percentage based step size.
When enabled, the value for step size represents a percentage.
Enforce step size.
Predictable minimum distance between orders.
Used to ensure orders are not placed at a rate worse than step target.
Price trailing can sometimes finish at a rate worse than the current grid step up or down. With this option enabled, orders may only get fired when trailing finishes at a better rate than the current step target. This can be useful for very precise balance management.
Direction
Currently long only
Will allow for switching between long and short mode in the future.
Use market orders
Order type for grid orders
When enabled, grid orders are placed as market orders. When disabled, grid orders are placed as limit order when price trailing finishes (note that these are not post only orders, they are meant to fill immediately).
Customize trailing
Setting Description
Pct buy trailing range
Use custom buy trailing range
By default trailing ranges are set automatically set to 0.2 x ATR. With this option you can set a percentage as custom trailing range to be used for buy trailing.
Custom buy trailing range
Set trailing range as percentage
When ‘Pct buy trailing range’ is enabled, setting 0.5 will lead to having trailing ranges of 0.5% of current price.
Pct sell trailing range
Use custom sell trailing range
By default trailing ranges are set automatically 0.2 x ATR. With this option you can set a percentage as custom trailing range to be used for sell trailing.
Custom sell trailing range
Set trailing range as percentage
When ‘Pct sell trailing range’ is enabled, setting 0.5 will lead to having trailing ranges of 0.5% of current price.
IRIS-Trend | Price action
Setting Description
Price action analysis
Trend phase awareness.
When enabled, trend data using the configured timeframes for short, medium and long term is used to:
- (dis)allow opening new and DCA trades
- switch between normal grid trailing and grid trailing with increased trailing ranges
Price action TL ratio
Can be used to modify buy amounts when price action is very positive.
Setting 2 places buy orders for ‘trading limit’ * 2
Price action threshold
ATR percentage rank threshold used in the conditions to allow ‘price action tl multiplier’ and ‘Price action analysis (during phase bullish reversal)’
Setting 0.5 means that the current medium period ATR percentage rank value must be at least 50% and the current candle is green.
Strict entry
When enabled, more conservative criteria are used to (dis)allow opening new trades. This can lead to times of inactivity after a final sell, by design.
Strict DCA
When enabled, more conservative criteria are used to (dis)allow placing grid buy trades.
Exhaustion sensitivity
This setting controls up to which timeframe exhaustion must pass before a next DCA buy is allowed.
- NONE: no exhaustion restrictions
- SHORT: do not allow buy orders when short term is exhausted
- MEDIUM: do not allow buy orders when short OR medium term is exhausted
- LONG: do not allow buy orders when short OR medium OR long term is exhausted
IRIS-Trend | Trade supports
Setting Description
Trade supports
Trade only supports in certain phases
When enabled, grid trading gets disabled during phases ‘bearish’ and ‘very bearish’. During these phases the strategy trades higher timeframe supports using limit orders.
S1 TL ratio
Defines order size for support buys on first support.
When trend sync is enabled and multiple timeframes move downwards, buy targets are placed at medium or high timeframe supports.
This setting determines the buy order value for support targets, it multiplies ‘trailing limit’ Setting 2 places buy orders for ‘trading limit’ * 2
S2 TL ratio
Defines order size for support buys on second support.
When trend sync is enabled and multiple timeframes move downwards, buy targets are placed at medium or high timeframe supports.
This setting determines the buy order value for support targets, it multiplies ‘trailing limit’ Setting 2 places buy orders for ‘trading limit’ * 2
IRIS-Trend | Micro scalping
Setting Description
Trend scalping
Micro scalp higher price regions.
When enabled, trend data using the configured timeframes for short, medium and long term is used to:
- reduce risk by disallowing opening new trades in high, risky zones
- switch between normal grid trailing micro scalping
- place non grid orders, based on detected market conditions (for example buy after a dip below ema 50)
During micro scalping partial stop loss orders are possible. This means that when sell trailing starts, the initial trailing stop is placed slightly below the last buy rate and the amount to sell is roughly equal to the last buy amount (overriding settings for partial sell ratio).
Scalp TL ratio
Defines order size for scalp buys.
When trend scalping is enabled and a scalping zone is reached, buy and sell amounts are based on this ratio.
This setting determines the buy order value for support targets, it multiplies ‘trailing limit’. Setting 0.5 places buy orders for ‘trading limit’ * 0.5
Initial buy step multiplier
Can be used to modify the first buy step size, when not in a position and the strategy is in status ‘scalping’.
Values below 0 lead to opening a new trade quicker. This multiplier is used like ‘multiplier * step size’, where step size can be an automatically generated value, or a defined manual step size.
Dynamic SL
Stop loss for small positions.
This is a stop loss option for small and risky positions (up to 2x ‘trading limit’, rounded), accumulated in higher regions. Does not trigger often.
The goal is to accept a relatively small loss sometimes, before a trade gets hard to DCA effectively.
IRIS-Trend | Multiple timeframes
Setting Description
Multiple timeframes mode
Increase trading frequency by using a second set of timeframes
When enabled, the strategy switches to a lower set of timeframes when it detects favorable conditions during a ‘bullish reversal’ phase, with the aim of reaching a higher trading frequency.
When the lower set of timeframes all have exhausted market conditions, it switches back to the regular set of timeframes.
Multi timeframes mode TL ratio
Defines order size for scalp buys.
Trading limit ratio to use for buy trading using the lower set of timeframes
This setting determines the buy order value for support targets, it multiplies ‘trailing limit’. Setting 0.5 places buy orders for ‘trading limit’ * 0.5
Lower set low period
Low period of lower set of timeframes.
Lower set medium period
Medium period of lower set of timeframes
Lower set high period
High period of lower set of timeframes
Regular set low period
Low period of regular set of timeframes. Should normally be set identically to the period settings in the indicator section.
Regular set medium period
Medium period of regular set of timeframes. Should normally be set identically to the period settings in the indicator section.
Regular set high period
High period of regular set of timeframes. Should normally be set identically to the period settings in the indicator section.
IRIS-Trend | Accumulation cycle
Setting Description
Accumulation cycle
Mode to accumulate without partial sell orders
When enabled, no partial sells below break even are allowed, full sell only allowed when gain target is reached and the market is exhausted on all timeframes.
New trades are only opened during the ‘bullish reversal’ phase. Micro scalping is disabled.
IRIS-Trend | Advanced trailing
Setting Description
Trend plus
Dynamic trailing ranges
When enabled, trend data using the configured timeframes for short, medium and long term is used to in- and decrease trailing ranges based on the currently detected market phase. This overrules a trailing modifier in ‘trend sync’.
Buy multiplier small
Smallest buy trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
Buy multiplier medium
Medium buy trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
Buy multiplier large
Largest buy trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
Sell multiplier small
Smallest sell trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
Sell multiplier medium
Medium sell trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
Sell multiplier large
Largest sell trailing range multiplier. Multiplies the currently active trailing range: auto or custom pct. 1x auto trailing range equals 0.2x ATR.
IRIS-Trend | BTFD mode
Setting Description
BTFD mode
Buy the dip.
When enabled, a configurable series of limit buy orders gets placed when the price drops below a defined or automatic price target, and there are no open orders at that time.
BTFD use trend filter
Enable trend filter for BTFD.
When enabled, the trend module only allows buying the dip when the market is confirmed very bearish, sell volume is leading on the upper timeframe, and volatility is high. Can be used together with manual or automatic price targets.
BTFD dip target
Manual price target to start BTFD mode.
As soon as the price drops below this target and there are no open orders, a series of limit buy orders get placed. Normal grid buy operations stop below this price.
BTFD max dip target
Manual price target to stop BTFD mode.
No limit buys get placed below this target. For example, if the dip target is set to 1000 and the max dip target is set to 900, it means that BTFD may only buy between 1000 and 900.
BTFD use automatic targets
Enable automatic dip targets.
Conditions to BTFD with auto targets: the price drops below the selected target, and there are no open orders. When used together with the ‘trade supports’ option, BTFD would not activate if there are support orders open already.
When combined with ‘trade supports’, it is strongly recommended to select long-term S2 or a manually set target.
BTFD TL ratio
Modify buy amounts during BTFD.
Setting 2 places buy orders for ‘trading limit’ * 2.
BTFD max buy count
Limits maximum position size during BTFD mode.
When the trading limit multiplier is used, the increased investment per buy order is factored into ‘buy count’ so each DCA round is only counted once.
A value of 40 means that the total position size may not exceed 40x the amount set as ‘trading limit’.
When the max buy count is reached, the strategy goes into sell mode only.
BTFD max dip orders
Max number of buy orders to fire.
Each order is placed at one step distance from another when BTFD mode starts. Intended to limit the number of orders per time that BTFD activates, not to cap position size itself.
Takes max buy count and max dip target into account and stops placing lower orders when either of those would get exceeded.
BTFD gain
Percentage above avg entry price to place the sell target after a BTFD order.
BTFD auto step size
Automatic determination of a grid step size for BTFD.
When set to none, the configured absolute or percentage step size is used instead.
BTFD step size
Manually defined grid step size for BTFD buy orders.
Set as a price: setting 500 on USDT-BTC makes the bot trade each time the price moves 500 USDT.
When using Pct step size, the value represents a percentage: setting 2 will lead to having steps of 2% of the current price.
BTFD pct step size
Enable percentage-based step size.
When enabled, the value for step size represents a percentage.
Custom trading range
Setting Description
Custom trading range
Set a price range to allow opening new trades in
With this mode you can define the price zone in which you want the strategy to operate, and optionally set a stop target.
With the settings like in the defaults, new trades may only be opened when price is between 8000 and 10000. DCA trades can be placed at any price. In case price drops below 7000 all funds get sold. Set stop target to 0 to effectively disable it.
Trading range low
Lower range limit
Lower limit of manual trading range. When not in a trade and price is below the lower limit, no new trades will get opened.
Trading range high
Upper range limit
Upper limit of manual trading range. When not in a trade and price is above the upper limit, no new trades will get opened.
Trading range stop
Stop loss target
Stop loss target of manual trading range. When in a trade and the current candle open price is below this target price, all assets get sold immediately.
Trading range DCA stop
Lower limit for allowing DCA orders.
Use this to block DCA orders below a specified price.
Advanced
Setting Description
Buy enabled
Allow or disallow placing buy orders.
When disabled, no buy orders will be placed at all.
Sell enabled
Allow or disallow placing sell orders.
When disabled, no sell orders will be placed at all.
Stop after next sell
To stop trading a pair after the position closes.
When enabled, no buy orders are placed when there is no balance left to sell.
Averaging down of the current position continues, partial sell orders do not make the bot stop afterwards.
ATR period
How many candles are used for calculating ATR.
Number of candles used to calculate Average True Range, which is used to calculate auto step size. Default value of 50 should usually not need tuning.
Ignore trades before
Ignore part of the order history
Optional parameter to force AILidex to not consider any trades before the time set Value represents a unix timestamp in milliseconds. Get a current timestamp on currentmillis.com
Warning: this setting can lead to all kinds of unexpected behavior. Only use it when you know you need it.