(qtpylib.crossed_above(dataframe['rsi'], 30)) &  # Signal: RSI crosses above 30
(dataframe['tema'] <= dataframe['bb_middleband']) &  # Guard: tema below BB middle
(dataframe['tema'] > dataframe['tema'].shift(1)) &  # Guard: tema is raising
