
Стратегия обратной крайней настройки - это стратегия, использующая обратную крайнюю K-линию. Она будет судить по размеру объекта и среднему значению последней K-линии, и будет генерировать торговый сигнал, если размер объекта больше среднего и произойдет обратное положение.
Эта стратегия основывается на оценке существенных размеров текущих K-линий, а также общей величины K-линий.
Он фиксирует физический размер последней K-линии (разница между ценой открытия и ценой закрытия) и размер всей K-линии (разница между ценой наивысшей и ценой наименьшей).
Затем средний размер объекта и размер K-линий для последних 20 K-линий рассчитываются с помощью средней средней величины истинного диапазона ((RMA)).
Когда новейшая K-линия включена, а размер объекта больше, чем средний размер объекта, а общий размер K-линии также больше, чем в 2 раза больше среднего размера K-линии, генерируется многосигнал.
Наоборот, когда последняя K-линия падает, и величина объекта также соответствует вышеуказанным условиям, создается сигнал заикания.
Это означает, что в экстремальной K-линии, когда она переворачивается, используется среднее значение, чтобы создать торговый сигнал.
Основные преимущества этой стратегии:
Однако эта стратегия также несет в себе некоторые риски:
Для снижения риска параметры могут быть скорректированы соответствующим образом или добавлены стоп-лоры для контроля потерь.
Эта стратегия может быть оптимизирована в следующих аспектах:
Стратегия обратной крайней настройки создает торговый сигнал при возникновении обратного хода путем определения крайней ситуации на последней K-линии. Она имеет преимущества в использовании аномальных характеристик крайней K-линии, но также содержит определенные риски. Лучшую эффективность стратегии можно получить с помощью оптимизации параметров и средств ветроуправления.
/*backtest
start: 2024-02-13 00:00:00
end: 2024-02-20 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Extreme Reversal Setup", overlay=true)
bodySize = input(defval=0.75)
barsBack = input(title="Lookback Period", type=input.integer, defval=20, minval=0)
bodyMultiplier = input(title="Bar ATR Multiplier", type=input.float, defval=2.0, minval=0)
myBodySize = abs(close - open)
averageBody = rma(myBodySize, barsBack)
myCandleSize = abs(high - low)
averageCandle = rma(myCandleSize, barsBack)
signal_long = open[1]-close[1] >= bodySize*(high[1]-low[1]) and
high[1]-low[1] > averageCandle*bodyMultiplier and
open[1]-close[1] > averageBody and close > open
signal_short = close[1]-open[1] >= bodySize*(high[1]-low[1]) and
high[1]-low[1] > averageCandle*bodyMultiplier and
close[1]-open[1] > averageBody and open > close
plotshape(signal_long, "LONG", shape.triangleup, location.belowbar, size=size.normal)
plotshape(signal_short, "SHORT", shape.triangledown, location.belowbar, size=size.normal)
strategy.entry("LONG", strategy.long, when=signal_long)
strategy.entry("SHORT", strategy.short, when=signal_short)