Эта стратегия определяет дно рынка, рассчитывая показатель быстрого RSI и фильтр K-линейной сущности для определения состояния перепроданности. Когда быстрый RSI опускается ниже 10 и K-линейная сущность расширяется, он считает, что появляется сигнал обратного движения для входа в длинную позицию. Это позволяет эффективно обнаружить дно рынка.
Стратегия основывается на двух показателях:
Индикатор быстрого RSI. Вычисляя процент роста и падения за последние 2 дня, он быстро оценивает перекупленность и перепроданность рынка. Когда быстрый RSI ниже 10, рынок считается перепроданным.
Фильтр K-линейного объема объекта. При расчете соотношения между объемом K-линейного объема объекта и объемом MA, когда объем объекта превышает 1,5 раз объем MA, он считается нижним сигналом.
Во-первых, быстрый RSI ниже 10 указывает на перепроданный рынок. Во-вторых, K-линейная организация расширяется, чтобы удовлетворить условие, что объем организации превышает 1,5 раза объем MA. Когда оба условия выполнены, он посылает длинный сигнал и считает, что рынок достигает нижнего перелома, который фильтрует многие ложные сигналы.
Стратегия имеет следующие преимущества:
В этой стратегии также есть некоторые риски:
Некоторые решения для рисков:
Некоторые направления для совершенствования стратегии:
Эта стратегия эффективно идентифицирует нижний рынок с помощью быстрого RSI для перепроданных и K-линейного фильтра. Логика проста для легкой реализации и хороша для поимки шансов на обратный ход. Но существуют определенные риски и необходима дальнейшая оптимизация для улучшения стабильности и производительности. В целом, стратегии торговли с нижним обратным ходом, разработанные на основе этой логики, заслуживают дальнейших исследований.
/*backtest start: 2024-01-29 00:00:00 end: 2024-02-05 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("MarketBottom", shorttitle = "MarketBottom", overlay = true) //Fast RSI src = close fastup = rma(max(change(src), 0), 2) fastdown = rma(-min(change(src), 0), 2) fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown)) //Body Filter body = abs(close - open) abody = sma(body, 10) mac = sma(close, 10) len = abs(close - mac) sma = sma(len, 100) max = max(open, close) min = min(open, close) up = close < open and len > sma * 2 and min < min[1] and fastrsi < 10 and body > abody * 1.5 plotarrow(up == 1 ? 1 : na, colorup = blue, colordown = blue) sell = sma(close, 5) exit = high > sell and close > open and body > abody plot(sell) if up strategy.entry("Long", strategy.long) if exit strategy.close_all()