
Die Strategie ist ein quantitatives Handelssystem, das speziell für die Erfassung von Zeiten extremer Marktschwankungen entwickelt wurde. Es überwacht die Abweichungen zwischen den Preisen und der Durchschnittslinie und identifiziert mögliche Liquiditätsentwässerungen im Markt, um so die Chancen auf eine Marktumkehr zu erfassen. Die Strategie verwendet eine Kombination aus Durchschnittslinien, Volatilitätsverfolgung und dynamischen Stop-Loss-Mechanismen, um ein vollständiges Handelssystem zu erstellen.
Der Kern der Strategie ist die Identifizierung von Marktunregelmäßigkeiten durch die Berechnung der Abweichung von den Preisen von der Durchschnittslinie.
Die Dynamische Liquiditäts-Klasse-Capture-Strategie ist ein quantitatives Handelssystem, das darauf ausgerichtet ist, Extremsituationen des Marktes zu erfassen. Durch eine wissenschaftliche Kombination von Indikatoren und strenge Risikokontrollen ist die Strategie in der Lage, Handelschancen bei starken Marktschwankungen zu erfassen. Obwohl bestimmte Risiken bestehen, wird die Strategie durch kontinuierliche Optimierung und Verbesserung in der Lage sein, eine stabile Leistung in verschiedenen Marktumgebungen zu halten.
/*backtest
start: 2024-02-22 00:00:00
end: 2025-02-19 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Liquidation Cascade Strategy", overlay=true)
// Paramètres de l'indicateur de liquidation
var float lastHigh = na
var float lastLow = na
var float lastPriceLow = na
var float lastPriceHigh = na
var bool shortLiq = na
var bool longLiq = na
src = close
maLength1 = 15
maLength2 = 30
ma1 = ta.sma(src, maLength1)
ma2 = ta.ema(src, maLength2)
avgLine = (ma1 + ma2) / 2
distVal = ((src - avgLine) / avgLine) * 100
ph = ta.highest(distVal, 89)
pl = ta.lowest(distVal, 89)
if ph == distVal and ph > 0
lastHigh := distVal
lastPriceHigh := high
if pl == distVal and pl < 0
lastLow := distVal
lastPriceLow := low
shortLiq := not na(lastHigh) and lastHigh == distVal and distVal > 0
longLiq := not na(lastLow) and lastLow == distVal and distVal < 0
// Condition d'achat : 3 liquidations longues consécutives
buyCondition = ta.valuewhen(longLiq, longLiq, 0) and ta.valuewhen(longLiq, longLiq, 1) and ta.valuewhen(longLiq, longLiq, 2)
if (buyCondition)
strategy.entry("Buy", strategy.long)
// Conditions de vente
var float entryPrice = na
var bool positionOpen = false
// Mise à jour du prix d'entrée
if (buyCondition)
entryPrice := close
positionOpen := true
// 1. Vente sur rebond technique (distVal > -1%)
sellCondition1 = distVal > -1 and positionOpen
// 2. Vente sur liquidation courte
sellCondition2 = shortLiq and positionOpen
// 3. Trailing Stop (2x ATR)
atr = ta.atr(14)
trailingStop = close - 2 * atr
sellCondition3 = close < trailingStop and positionOpen
// Exécution des ventes
if (sellCondition1 or sellCondition2 or sellCondition3)
strategy.close("Buy")
positionOpen := false
// Visualisation
plot(avgLine, color=color.blue, title="Avg Line")
plot(distVal, color=distVal > 0 ? color.red : color.green, style=plot.style_columns)