Как я могу записать это в python как условие закрытия> = 20-дневного максимума и закрытия <20-дневного минимума наоборот как условие, но удерживать условие так долго, пока другое условие не станет истинным.Если закрытие> = 20-дневный максимум, то условие = 1, но оно так долго истинно, пока не будет достигнут 20-дневный минимум, условие = -1, и снова так долго верно до достижения 20-дневного максимума.И нарисуйте это условие1 зелёным и условие -1 красным на графике.
df['20-Day-High'] = df['High'].rolling(20).max()
df['20-Day-Low'] = df['low'].rolling(20).min()
#STAY TRUE SO LONG CONDITION_2 is not true
condition_1 = df[close_price] > df['20-Day-High'] & ......
#STAY TRUE SO LONG CONDITION_1 is not true
condition_2 = df[close_price] < df['20-Day-Low'] & ......