
Эта стратегия основана на недавних высоких и низких ценах, которые устанавливают точки остановки для быстрого отключения от тренда и строгого контроля риска. Открывать многопосты при последовательном росте цены и открывать пустые посты при последовательном падении. При удержании позиции, многопостые остановки являются наименьшими ценами на нескольких последних K-линий, а пустые остановки - наивысшими ценами на нескольких последних K-линий.
inputФункция устанавливает циклы ссылки на максимальные и минимальные ценыhiLenиloLen20 ◦ta.highest(high, hiLen)[1]Вычислите максимальную цену до предыдущей K-линииhiHighsИспользованиеta.lowest(low, loLen)[1]Вычислить минимальную цену до последней линии KloLows。loLows, пустые стоп-листыhiHighs“Я не хочу, чтобы мои дети были в тюрьме, потому что я не могу быть в тюрьме”.higherCloseslowerClosesisFlatisFlatиhigherClosesВ этом случае вы будете довольны.isFlatиlowerClosesКогда открывается вакансия.loLowsСтоп-стоп для свободных позиций составляет:hiHighs。Вкратце, эта стратегия использует недавние максимумы и минимумы, чтобы установить перемещающиеся потери, быстро пересекать сильные тенденции и строго ограничивать потери, эффективно захватывая прибыль от тренда.
Стратегия максимально низкой ценовой остановки основана на динамическом остановке, эффективном захвате сильных тенденций и строгом контроле риска. Ее преимущества простые, эффективные, быстрые, строгие и адаптивные. Но в условиях шокирующего рынка, конца тренда и экстремальных ситуаций плохо работает, параметры также требуют внимания. В будущем можно улучшить методы, такие как увеличение тренда и динамического суждения, оптимизация остановки и управления позициями.
/*backtest
start: 2023-03-02 00:00:00
end: 2024-03-07 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy(title="Highest high/lowest low stop", overlay=true)
// STEP 1:
// Make inputs for length of highest high and lowest low
hiLen = input.int(20, title="Highest High Lookback", minval=2)
loLen = input.int(20, title="Lowest Low Lookback", minval=2)
// STEP 2:
// Calculate recent extreme high and low
hiHighs = ta.highest(high, hiLen)[1]
loLows = ta.lowest(low, loLen)[1]
// Plot stop values for visual confirmation
plot(strategy.position_size > 0 ? loLows : na,
style=plot.style_circles, color=color.green, linewidth=3,
title="Lowest Low Stop")
plot(strategy.position_size < 0 ? hiHighs : na,
style=plot.style_circles, color=color.red, linewidth=3,
title="Highest High Stop")
// Trading conditions for this example strategy
higherCloses = close > close[1] and
close[1] > close[2] and
close[2] > close[3]
lowerCloses = close < close[1] and
close[1] < close[2] and
close[2] < close[3]
isFlat = strategy.position_size == 0
// Submit entry orders
if isFlat and higherCloses
strategy.entry("EL", strategy.long)
if isFlat and lowerCloses
strategy.entry("ES", strategy.short)
// STEP 3:
// Submit stops based on highest high and lowest low
if strategy.position_size > 0
strategy.exit("XL HH", stop=loLows)
if strategy.position_size < 0
strategy.exit("XS LL", stop=hiHighs)