
Die Strategie ist ein dynamisches Tracking-Trading-System, das auf Preisschwankungen und Durchschnittskursen basiert. Die Strategie wird hauptsächlich durch die Überwachung von außergewöhnlichen Schwankungen von Preisschwankungen von mehr als 1,91% (“Black Swan Events”) ausgelöst, während die EMA144- und EMA169-Kreuzung kombiniert wird, um die Richtung des Trends und den Zeitpunkt des Ausstiegs zu bestätigen. Die Strategie ist besonders geeignet für kurze 1-3-Minuten-Perioden, um scharfe Marktfluktuationen schnell zu erfassen.
Die Kernlogik der Strategie besteht aus zwei Hauptteilen:
Die Strategie wird übertrieben, wenn eine Aufwärtsbewegung von mehr als 1,91% erkannt wird, und wird bei einer Abwärtsbewegung ausgeschlossen. Wenn eine Rückwärtskreuzung der Kurslinie auftritt, wird die Strategie automatisch platziert, um das Risiko zu kontrollieren.
Die Strategie ermöglicht eine schnelle Reaktion und Trendverfolgung auf ungewöhnliche Marktschwankungen durch die Kombination von Volatilitätsüberwachung und Mittellinienüberschreitung. Die Strategie ist vernünftig ausgelegt und verfügt über eine gute Risikokontrolle, erfordert aber immer noch eine Parameteroptimierung und Risikomanagement durch den Händler in Abhängigkeit von den tatsächlichen Marktbedingungen. Es wird empfohlen, mit kleinen Positionen im Live-Handel zu beginnen und die Strategie schrittweise in verschiedenen Marktumgebungen zu überprüfen.
/*backtest
start: 2024-12-05 00:00:00
end: 2024-12-12 00:00:00
period: 45m
basePeriod: 45m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
//黑天鹅警报器,作者():道格拉斯机器人
//适合1分钟-3分钟的k线,发生波动超过百分之二时,自动报警
strategy('黑天鹅警报', overlay=true, initial_capital=10000, currency='USD', default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type=strategy.commission.percent, commission_value=0.075, pyramiding=3)
//-------------------------------------------
//-------------------------------------------
timecondition = timeframe.period == '480' or timeframe.period == '240' or timeframe.period == 'D' or timeframe.period == '720'
// Make input options that configure backtest date range
startDate = input.int(title='Start Date', defval=1, minval=1, maxval=31)
startMonth = input.int(title='Start Month', defval=11, minval=1, maxval=12)
startYear = input.int(title='Start Year', defval=2018, minval=1800, maxval=2100)
endDate = input.int(title='End Date', defval=1, minval=1, maxval=31)
endMonth = input.int(title='End Month', defval=11, minval=1, maxval=12)
endYear = input.int(title='End Year', defval=2031, minval=1800, maxval=2100)
// Look if the close time of the current bar
// falls inside the date range
inDateRange = time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0) and time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0)
// Inputs
a = input(1, title='Key Vaule. \'This changes the sensitivity\'')
c = input(10, title='ATR Period')
h = input(false, title='Signals from Heikin Ashi Candles')
ma60 = ta.sma(close, 60)
ema144 = ta.ema(close, 144)
ema169 = ta.ema(close, 169)
ma20 = ta.sma(close, 20)
plot(ema144, color=color.new(color.yellow, 0), title='144')
plot(ema169, color=color.new(color.orange, 0), title='169')
heitiane = close - open
heitiane := math.abs(heitiane)
heitiane /= close
if inDateRange and heitiane > 0.0191 and close < open // and close>f3
strategy.entry('botsell20', strategy.short, comment='黑天鹅追空' + str.tostring(heitiane))
if ta.crossover(ema144, ema169)
strategy.close('botsell20', comment='平空')
if inDateRange and heitiane > 0.0191 and close > open // and close>f3
strategy.entry('botbuy20', strategy.long, comment='白天鹅追多' + str.tostring(heitiane))
if ta.crossunder(ema144, ema169)
strategy.close('botbuy20', comment='平多')