Strategi penyejukan buih pintar

RSI VOLUME momentum
Tarikh penciptaan: 2025-10-16 14:38:54 Akhirnya diubah suai: 2025-10-16 14:38:54
Salin: 7 Bilangan klik: 192
2
fokus pada
319
Pengikut

Strategi penyejukan buih pintar Strategi penyejukan buih pintar

Oh, ini taktik Shin Seon ke?

Anda tahu? Strategi ini seperti “detektif gelembung” yang sangat tenang! Apabila pasaran naik dengan gila seperti darah, ia tidak mengikut angin, tetapi dengan sabar menunggu masa gelembung pecah. Seperti melihat orang yang menjadi kaya raya dalam kalangan rakan, anda tahu dia mungkin akan “bangkrut” tidak lama lagi 😏

Kerahsiaan logik teras polisi

Fokus!Strategi ini mempunyai dua peluang masuk yang sangat bijak:

  1. Mod penyejukan buihApabila RSI naik ke atas 70 atau apabila jumlah dagangan meningkat sebanyak 1.5 kali ganda, strategi ini akan ditandakan sebagai “periode gelembung” dan kemudian menunggu dengan sabar sehingga RSI kembali ke bawah 60 sebelum mempertimbangkan untuk melakukan shorting
  2. Model perangkap tinggi baruApabila harga mencecah 20 kitaran tertinggi tetapi tiada isyarat gelembung, anda boleh melakukan shorting.

Seperti menunggu bas, bukan setiap bas perlu naik, tetapi anda perlu menunggu bas yang betul!

Berapa banyak lembu yang terancam?

Panduan untuk melarikan diri dari jurang telah tiba!Di samping itu, ia juga boleh menjadi satu cara untuk membasmi pencemaran udara yang boleh menyebabkan pencemaran udara yang teruk.

  • Jika anda telah melakukan kerja kosong dan tiba-tiba anda mendapati bahawa gelembung telah mula muncul lagi, segera keluar dari tempat kerja!
  • Stop loss set 2%, stop loss set 6%, ganjaran risiko 1: 3, nilai matematik yang diharapkan sangat menarik
  • Terdapat “Zona Larangan Mengosongkan” khusus untuk mengelakkan operasi pada masa-masa berbahaya

Antara muka visual yang sangat mesra

Diagram strategi ini lebih baik daripada iPhone!

  • Latar belakang oren = gelembung sedang berlaku, jangan masuk
  • Latar belakang biru = kawasan kosong selepas gelembung, peluang datang 💙
  • Latar belakang merah = kawasan yang dilarang untuk dikosongkan.
  • Ikon-ikon kecil yang menandai titik-titik penting

Yang mana satu yang sesuai untuk anda?

Jika anda seorang peniaga seperti ini, strategi ini adalah khusus untuk anda:

  • Tidak suka mengejar dan membunuh orang yang rasional
  • Pelabur nilai yang percaya bahawa “jika anda menang cepat, anda akan kalah cepat”
  • Orang bijak yang suka bertenang apabila orang lain tamak

Ingat: Pasaran tidak pernah kekurangan peluang, yang kurang ialah kesabaran untuk menunggu peluang yang baik! ✨

Kod sumber strategi
/*backtest
start: 2025-09-15 00:00:00
end: 2025-10-14 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT","balance":500000}]
*/

//@version=5
strategy("Pump-Smart Shorting Strategy", overlay=true)

// Inputs
lookbackPeriod = input.int(20, "Lookback Period for New High", minval=5)
minProfitPerc  = input.float(0.02, "Take Profit %", minval=0.001)
stopLossPerc   = input.float(0.06, "Stop Loss %", minval=0.001)
hedgeTokens    = input.int(1, "Hedge Tokens")

// Pump detection inputs
rsiPeriod = input.int(14, "RSI Period")
rsiHigh   = input.float(70, "Pump RSI ≥")
rsiCool   = input.float(60, "Pump cool-off RSI ≤")
volMult   = input.float(1.5, "Volume Pump Multiplier")
pctUp     = input.float(0.05, "1-bar Up % for Pump")
barsWait  = input.int(0, "Bars to wait after pump ends", minval=0, maxval=10)

// Tech
rsi = ta.rsi(close, rsiPeriod)
avgVol = ta.sma(volume, 20)
oneBarUp = (close - close[1]) / close[1]

// Pump on if any strong up-move pattern
pumpOn = (rsi >= rsiHigh) or (volume > avgVol * volMult and oneBarUp > pctUp)

// Track pump state with var and transitions
var bool wasPump = false
pumpStart = not wasPump and pumpOn
pumpEnd   = wasPump and not pumpOn

// Update state each bar
wasPump := pumpOn

// Count bars since pump ended
var int barsSincePumpEnd = 10000
barsSincePumpEnd := pumpEnd ? 0 : math.min(10000, barsSincePumpEnd + 1)

// Define "pump ended and cooled" condition
cooled = (rsi <= rsiCool) and (oneBarUp <= pctUp/2 or volume <= avgVol * (volMult * 0.8))

// Immediate short signal when pump finishes and cooled (with optional wait)
shortAfterPump = (barsSincePumpEnd >= barsWait) and cooled and not pumpOn and strategy.position_size == 0

// Also allow shorts on fresh new highs when not pumping (optional, keep for more entries)
isNewHigh = high > ta.highest(high, lookbackPeriod)[1]
shortOnPeak = isNewHigh and not pumpOn and strategy.position_size == 0

// Define conditions where we DON'T short (for red background)
noShortZone = pumpOn or (isNewHigh and pumpOn) or (barsSincePumpEnd < barsWait) or not cooled

// Preemptive close if pump turns on while short
var float shortEntry = na
inShort = strategy.position_size < 0 and not na(shortEntry)
if inShort and pumpOn
    strategy.close("Short")
    shortEntry := na

// Entry rules: short either right after pump ends OR on new high when not pumping
if (shortAfterPump or shortOnPeak) and strategy.position_size == 0
    strategy.entry("Short", strategy.short, qty=hedgeTokens)
    shortEntry := na

// Track entry price
if strategy.position_size < 0 and na(shortEntry)
    shortEntry := strategy.position_avg_price
if strategy.position_size == 0
    shortEntry := na
inShort := strategy.position_size < 0 and not na(shortEntry)

// TP/SL
tp = shortEntry * (1 - minProfitPerc)
sl = shortEntry * (1 + stopLossPerc)
exitTP = inShort and close <= tp
exitSL = inShort and close >= sl
if exitTP
    strategy.close("Short")
if exitSL
    strategy.close("Short")

// Visuals - REMOVED TEXT FROM ARROWS
plotshape(pumpStart, style=shape.circle, color=color.orange, location=location.abovebar, size=size.tiny)
plotshape(pumpEnd, style=shape.circle, color=color.teal, location=location.abovebar, size=size.tiny)
plotshape(shortAfterPump, style=shape.triangledown, color=color.blue, location=location.abovebar, size=size.small)
plotshape(shortOnPeak, style=shape.triangledown, color=color.red, location=location.abovebar, size=size.tiny)

plot(inShort ? shortEntry : na, color=color.blue, linewidth=2, title="Short Entry")
plot(inShort ? tp : na, color=color.green, linewidth=2, title="TP")
plot(inShort ? sl : na, color=color.red, linewidth=2, title="SL")

// Background colors - ADDED RED NO-SHORT ZONES
bgcolor(pumpOn ? color.new(color.orange, 92) : na, title="Pump Zone")
bgcolor(shortAfterPump ? color.new(color.blue, 92) : na, title="Post-Pump Short Zone")
bgcolor(noShortZone and not pumpOn ? color.new(color.red, 95) : na, title="No Short Zone")