
Cette stratégie est basée sur la définition de points de perte pour les prix les plus élevés et les plus bas à court terme, afin de couper rapidement la tendance et de contrôler strictement le risque. Lorsqu’il s’agit d’une hausse en série, l’ouverture d’une position multiple et d’une baisse en série, l’ouverture d’une position vide. Lors de la tenue d’une position, la position de perte multiple est la plus basse des lignes K les plus récentes et la position de perte vide est la plus haute des lignes K les plus récentes.
inputLa fonction définit les périodes de référence de prix maximum et minimumhiLenetloLenJe ne suis pas d’accord.ta.highest(high, hiLen)[1]Calculer le prix maximum jusqu’à la ligne K précédentehiHighsPourta.lowest(low, loLen)[1]Calculer le prix minimum jusqu’à la ligne K précédenteloLows。loLows, le stop loss de la carte vide esthiHighsIl n’y a pas d’indications sur le nombre de personnes qui ont participé à l’événement.higherCloseslowerClosesisFlatisFlatethigherClosesIl y en a beaucoup, mais ils sont satisfaits.isFlatetlowerClosesIl y a un espace libre.loLowsLe prix d’arrêt pour les positions en bourse est dehiHighs。En bref, la stratégie consiste à placer des arrêts mobiles avec des prix les plus bas et les plus élevés de la dernière période, à couper rapidement dans une tendance forte et à limiter strictement les pertes, captant efficacement les gains de la tendance.
La stratégie de stop-loss à prix le plus bas est basée sur le prix lui-même pour définir un stop-loss dynamique, capter efficacement les tendances fortes et contrôler strictement les risques. Ses avantages sont simples et efficaces.
/*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)