Confirming indicators

Last updated 11 days ago

To further restrict trading criteria for your strategy, you can use a number of confirming indicators for regular buy and sell orders. This page describes all settings options available for confirming indicators.

Orders are placed when both the main strategy settings and confirming indicators meet the market situation. When TrailMe is used too, it must finish trailing while other conditions meet. All these conditions must occur in the same cycle.

Especially when TrailMe is used together with confirming indicators, it makes sense to not set the indicators too strict as all order criteria must happen in the same cycle for an order to be placed (strategy conditions + indicator conditions + hitting trailing stop).

Indicators in Gunbot are calculated with live data.

For example for a 14 period RSI calculation, that means that the period close values for the past 13 completed candles are used, plus the live data for the current cycle.

For margin trading, the buy side for indicator settings apply for opening long position. The sell side applies for opening short positions.

ADX

ADX Enabled

Description
Values
Order types
Name

Setting this to true will enable ADX as a confirming indicator, only allowing trades when the trend is strong enough to meet or exceeds the set ADX_LEVEL.

ADX measures both up- and downtrends, when DI+ is lower than DI- prices are moving up (these values are visible in the logs). When DI- is lower than DI+, prices are moving down. The ADX value indicates the strength of the current up- or downtrend.

A buy order is confirmed when ADX is above ADX_LEVEL and DI- is lower than DI+.

A sell order is confirmed when ADX is above ADX_LEVEL and DI- is higher than DI+.

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: ADX_ENABLED

ADX Level

Description
Values
Order types
Name

Sets the minimum trend level that needs to be reached for orders to be allowed.

When set to 25, trades will be placed as soon as ADX is 25 or higher.

Values: numerical, ranging between 1 and 99.

Default value: 25

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: ADX_LEVEL

DI Period

Description
Values
Order types
Name

Sets the number of candles used to calculate ADX.

Values: numerical, represents a number of periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: DI_PERIOD

BTC PND protection

BTC PND Protection

Description
Values
Order types
Name

Setting this to true disables buy orders when there is too much price and volume pressure on BTC.

This setting is dependent on BTC_MONEY_FLOW. Only use this if BTC pumps have a significant effect on your trading pair.

Values: numerical, ranging between 1 and 99.

Default value: 35

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: BTC_PND_PROTECTION

BTC Money Flow

Description
Values
Order types
Name

Sets the value on the Money Flow Index (MFI) for BTC-USD that BTC_PND_PROTECTION disables orders for. As soon as MFI hits the set value or drops below it, BTC_PND_PROTECTION will be active.

The default value of 35 indicates that the BTC-USD market is moving into oversold territory and might start pumping soon, no buy orders would be placed while BTC-USD MFI is between 35 and 0.

As long as BTC-USD is the defined oversold territory, no orders will be placed.

Values: numerical, ranging between 1 and 99.

Default value: 25

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: BTC_MONEY_FLOW

BTC PND Period

Description
Values
Order types
Name

Set this to the number of candlestick periods you want to use for calculating MFI for BTC_PND_PROTECTION.

Values: numerical, represents a number of periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: BTC_PND_PERIOD

EMA Spread

EMA Spread

Description
Values
Order types
Name

Setting this to true will enable EMA spread as a confirming indicator for both buy and sell orders. The spread is calculated each cycle by subtracting the lowest EMA value from the highest EMA.

A buy signal occurs when EMA1 (slow EMA) is at least EMAx higher than EMA2 (fast EMA) and the EMA spread value starts to decrease (after having increased first).

A sell signal occurs when EMA1 (slow EMA) is at least EMAx lower than EMA2 (fast EMA) and the EMA spread value starts to increase (after having decreased first).

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: EMASPREAD

EMAx

Description
Values
Order types
Name

Sets the minimum percentage difference between slow and fast EMA for EMASPREAD.

When set to 1, the spread must reach at least 1% before EMASPREAD can trigger a buy or sell.

Values: numerical, represents a percentage.

Default value: 0.5

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: EMAx

MFI

MFI Enabled

Description
Values
Order types
Name

Setting this to true will make sure Gunbot only trades when both strategy conditions and MFI_BUY_LEVEL / MFI_SELL_LEVEL are met.

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: MFI_ENABLED

MFI Buy Level

Description
Values
Order types
Name

Defines the maximum MFI level you want to allow buy orders at.

When set to 30, buy orders will only be placed when MFI is between 0 and 30.

Values: numerical, ranging between 1 and 99.

Default value: 30

Affects

Does not affect

Strategy buy

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy sell

Parameter name in config.js: MFI_BUY_LEVEL

MFI Sell Level

Description
Values
Order types
Name

Set this to the minimum MFI level you want to allow sell orders at.

For example: when set to 70, sell orders will only be placed when MFI is between 70 and 100.

Values: numerical, ranging between 1 and 99.

Default value: 70

Affects

Does not affect

Strategy sell

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy buy

Parameter name in config.js: MFI_SELL_LEVEL

MFI Length

Description
Values
Order types
Name

Set this to the number of candlestick periods you want to use for calculating MFI.

MFI is calculated using an array of the period close prices of MFI_LENGTH-1 candles and the last price.

Values: numerical, represents a number of candlestick periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: MFI_LENGTH

RSI

RSI Buy Enabled

Description
Values
Order types
Name

Setting this to true will make sure Gunbot only buys when both strategy buying conditions and RSI_BUY_LEVEL are met.

Values: true or false

Default value: false

Affects

Does not affect

Strategy buy

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy sell

Parameter name in config.js: RSI_BUY_ENABLED

RSI Sell Enabled

Description
Values
Order types
Name

Setting this to true will make sure Gunbot only sells when both strategy selling conditions and RSI_SELL_LEVEL are met.

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy buy

Parameter name in config.js: RSI_SELL_ENABLED

RSI Method

Description
Values
Order types
Name

Sets the method for using RSI. See RSI_BUY_LEVEL and RSI_SELL_LEVEL for detailed descriptions of both methods.

Values: oscillator or cross.

Default value: oscillator

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: RSI_METHOD

RSI Buy Level

Description
Values
Order types
Name

Set this to the RSI level you want to allow buy orders at.

RSI_METHOD = oscillator: when set to 40, buy orders will only be placed when RSI is 40 or lower.

RSI_METHOD = cross: when set to 40, buy orders will only be placed when RSI crosses over 40.

Values: numerical, ranging between 1 and 99.

Default value: 30

Affects

Does not affect

Strategy buy

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy sell

Parameter name in config.js: RSI_BUY_LEVEL

RSI Sell Level

Description
Values
Order types
Name

Set this to the RSI level you want to allow sell orders at.

RSI_METHOD = oscillator: when set to 60, sell orders will only be placed when RSI is 60 or higher.

RSI_METHOD = cross: when set to 60, sell orders will only be placed when RSI crosses under 60.

Values: numerical, ranging between 1 and 99.

Default value: 70

Affects

Does not affect

Strategy sell

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy buy

Parameter name in config.js: RSI_SELL_LEVEL

RSI Length

Description
Values
Order types
Name

Set this to the number of candlestick periods you want to use for calculating RSI.

RSI is calculated using an array of the period close prices of RSI_LENGTH-1 candles and the last price.

Values: numerical, represents a number of candlestick periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

DCA buy (when using RSI)

RT sell

Close

Stop limit

Parameter name in config.js: RSI_LENGTH

Stochastic

Stoch Enabled

Description
Values
Order types
Name

Setting this to true will make sure Gunbot only trades when both strategy trade conditions and STOCH_BUY_LEVEL / STOCH_SELL_LEVEL are met.

If you only want to use this indicator for buying or selling, but not both, then set the side you don't want to use to -1001.

Values: true or false

Default value: false

Affects

Does not affect

Strategy buy

RT buy

Strategy sell

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCH_ENABLED

Stoch Method

Description
Values
Order types
Name

Sets the method for using Stochastic. See STOCH_BUY_LEVEL and STOCH_SELL_LEVEL for detailed describtions of both methods.

Values: oscillator or cross.

Default value: oscillator

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCH_METHOD

Stoch Buy Level

Description
Values
Order types
Name

Set this to the maximum Stochastic level you want to allow buy orders at.

When set to 30, buy orders will only be placed when Stochastic is between 0 and 30.

STOCH_METHOD = oscillator: a buy signal occurs when both Stoch %K and %D are below the set buy level.

STOCH_METHOD = cross: a buy signal occurs when both Stoch %K and %D are below the set buy level, additionally %K must cross over %D.

Values: numerical, ranging between 1 and 99.

Default value: 30

Affects

Does not affect

Strategy buy

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy sell

Parameter name in config.js: STOCH_BUY_LEVEL

Stoch Sell Level

Description
Values
Order types
Name

Set this to the minimum Stochastic level you want to allow sell orders at.

When set to 70, sell orders will only be placed when Stochastic is between 70 and 100.

STOCH_METHOD = oscillator: a sell signal occurs when both Stoch %K and %D are above the set sell level.

STOCH_METHOD = cross: a sell signal occurs when both Stoch %K and %D are above the set sell level, additionally %K must cross down %D.

Values: numerical, ranging between 1 and 99.

Default value: 70

Affects

Does not affect

Strategy sell

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy buy

Parameter name in config.js: STOCH_SELL_LEVEL

Stoch K

Description
Values
Order types
Name

The number of periods used for calculating Stochastic %K.

Values: numerical, represents a number of periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCH_K

Slow Stoch K

Description
Values
Order types
Name

The number of periods used for calculating Slow Stochastic %K.

Values: numerical, represents a number of periods.

Default value: 3

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: SLOW_STOCH_K

Stoch D

Description
Values
Order types
Name

The number of periods used for calculating Stochastic %D.

Values: numerical, represents a number of periods.

Default value: 3

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCH_D

StochRSI

Stoch RSI Enabled

Description
Values
Order types
Name

Setting this to true will make sure Gunbot only trades when both strategy trade conditions and STOCHRSI_BUY_LEVEL / STOCHRSI_SELL_LEVEL are met.

If you only want to use this indicator for buying or selling, but not both, then set the side you don't want to use to -1001.

Values: true or false

Default value: false

Affects

Does not affect

Strategy buy

RT buy

Strategy sell

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCHRSI_ENABLED

Stoch RSI Method

Description
Values
Order types
Name

Sets the method for using StochRSI. See STOCHRSI_BUY_LEVEL and STOCHRSI_SELL_LEVEL for detailed describtions of both methods.

Values: oscillator or cross.

Default value: oscillator

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCHRSI_METHOD

Stoch RSI Buy Level

Description
Values
Order types
Name

Set this to the StochRSI level you want to allow buy orders at.

STOCHRSI_METHOD = oscillator: when set to 0.2, buy orders will only be placed when StochRSI is 0.2 or lower.

STOCHRSI_METHOD = cross: when set to 0.2, buy orders will only be placed when StochRSI crosses over 0.2.

Values: numerical, ranging between 0.01 and 0.99

Default value: 0.2

Affects

Does not affect

Strategy buy

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy sell

Parameter name in config.js: STOCHRSI_BUY_LEVEL

Stoch RSI Sell Level

Description
Values
Order types
Name

Set this to the StochRSI level you want to allow sell orders at.

STOCHRSI_METHOD = oscillator: when set to 0.8, sell orders will only be placed when StochRSI is 0.8 or higher.

STOCHRSI_METHOD = cross: when set to 0.8, sell orders will only be placed when StochRSI crosses under 0.8.

Values: numerical, ranging between 0.01 and 0.99

Default value: 0.8

Affects

Does not affect

Strategy sell

RT buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Strategy buy

Parameter name in config.js: STOCHRSI_SELL_LEVEL

Stoch RSI Length

Description
Values
Order types
Name

Set this to the number of candlestick periods you want to use for calculating StochRSI.

Values: numerical, represents a number of periods.

Default value: 14

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: STOCHRSI_LENGTH

Advanced settings

EMA Length

Description
Values
Order types
Name

Set this to the number of candlestick periods you want be available for calculating EMA1 and EMA2. Unless you use very high EMA values, you usually do not need to change this.

Values: numerical, represents a number of periods.

Default value: 50

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

RT sell

Close

Stop limit

DCA buy

Parameter name in config.js: EMALENGTH

Candles Length

Description
Values
Order types
Name

Set this to the number of candlestick periods you want Gunbot to pull from the exchange, which are available for calculating other indicators.

Always make sure that this setting is high enough for other indicators to be properly calculated.

Please be aware that exchanges won't always provide the number of specified candles, often it is less.

Values: numerical, represents a number of periods.

Default value: 99

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

DCA buy (when using an indicator as trigger)

RT sell

Close

Stop limit

Parameter name in config.js: CANDLES_LENGTH

Bollinger Bands for DCA

SMA Period

Description
Values
Order types
Name

This defines the number of periods used for calculating Bollinger Bands. Only used when DU_METHOD is set to HIGHBB.

Values: numerical – represents a number of candlesticks.

Default value: 50

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

DCA buy (when using HIGHBB option for DCA)

RT sell

Close

Stop limit

Parameter name in config.js: SMAPERIOD

Standard Deviation

Description
Values
Order types
Name

This value defines the multiplier used for calculating Bollinger Bands. Only used when DU_METHOD is set to HIGHBB.

Values: numerical (recommended: between 1.9 and 2.1) - represents a multiplier value used in the bollinger bands calculation.

Default value: 2

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

DCA buy (when using HIGHBB option for DCA)

RT sell

Close

Stop limit

Parameter name in config.js: STDV

Renko candles

Renko candles can be used with the ichimoku-margin strategy.

Use Renko

Description
Values
Order types
Name

Setting this to true will enable the use of renko candles, instead of regular candles.

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

Close

RT sell

Stop limit

Parameter name in config.js: USE_RENKO

Renko Period

Description
Values
Order types
Name

Sets which regular candle size is used as input for renko candles. Make sure to set PERIOD to the same value as RENKO_PERIOD.

Values: numerical

Default value: 15

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

Close

RT sell

Stop limit

Parameter name in config.js: RENKO_PERIOD

Renko Brick Size

Description
Values
Order types
Name

Defines the brick size for each candle.

For example, when set to 1 on a pair with USD as base currency, each renko candle will represent a price change of at least 1 USD.

If you are unfamiliar with renko charts, it's recommended to first set the brick size to the smallest possible step, for example 1 USD or 0.00000001 BTC, and see what effect it has on the chart (do keep the chart open a while to check how new price movements get visualized). Then keep increasing the brick size until you get a good feeling of how the chart behaves.

Values: numerical

Default value: 0.0001

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

Close

RT sell

Stop limit

Parameter name in config.js: RENKO_BRICK_SIZE

Renko ATR

Description
Values
Order types
Name

Enable this to dynamically adjust brick size based on the average true range (ATR).

For fiat pairs, 1 pip equals 1 cent. For crypto, 1 pip equals 1 satoshi.

Values: true or false

Default value: false

Affects

Does not affect

Strategy sell

RT buy

Strategy buy

RT buyback

Close

RT sell

Stop limit

Parameter name in config.js: RENKO_ATR