The InformativeDecoratorTest strategy is used for testing purposes in the Freqtrade bot. It is not intended for modification and serves as an example for users. The strategy implements the IStrategy interface.
Key characteristics of the strategy:
Stoploss is set to -0.10.
The timeframe for the strategy is set to 5 minutes.
The strategy requires 20 startup candles before it starts executing. The strategy uses the pair 'BTC/USDT' with a timeframe of 5 minutes as the informative pair. The strategy defines several methods:
populate_buy_trend: This method is responsible for populating the buy signals in the dataframe. However, in this implementation, it sets the 'buy' column to 0, indicating no buy signal. populate_sell_trend: This method populates the sell signals in the dataframe. Similarly, it sets the 'sell' column to 0, indicating no sell signal. populate_indicators_1h: This method decorates the populate_indicators_1h method with informative pairs of '30m' and '1h'. It adds an 'rsi' column to the dataframe with a fixed value of 14. populate_indicators_btc_1h: This method decorates the populate_indicators_btc_1h method with an informative pair of '1h' and 'BTC/{stake}'. It also adds an 'rsi' column to the dataframe with a value of 14. populate_indicators_eth_btc_1h: This method decorates the populate_indicators_eth_btc_1h method with an informative pair of '1h' and 'ETH/BTC'. It adds an 'rsi' column to the dataframe with a value of 14. populate_indicators_btc_1h_2: This method decorates the populate_indicators_btc_1h_2 method with an informative pair of '30m', 'BTC/{stake}', and a custom formatter for the column names. It adds an 'rsi' column to the dataframe with a value of 14. populate_indicators_eth_30m: This method decorates the populate_indicators_eth_30m method with an informative pair of '30m' and 'ETH/{stake}'. It adds an 'rsi' column to the dataframe with a value of 14. populate_indicators: This method is responsible for populating the indicators for the current pair. It adds an 'rsi' column to the dataframe with a value of 14. It also calculates the 'rsi_less' column, which compares the 'rsi' value with the 'rsi_1h' value from the informative pair. Additionally, it retrieves the 'BTC/USDT' pair's informative data and merges it with the current dataframe using merge_informative_pair. Overall, this strategy focuses on adding the 'rsi' indicator to the dataframes of various pairs and timeframes using both manual informative pairs and decorators.