La estrategia es un sistema de seguimiento de la dinámica de las operaciones basado en la amplitud de las fluctuaciones de los precios y el cruce de las líneas medias. La estrategia se activa principalmente mediante la vigilancia de las fluctuaciones anormales de la tasa de fluctuación de los precios de más del 1,91% (eventos de “black swan”), mientras que la combinación de las cruces de EMA144 y EMA169 confirma la dirección de la tendencia y el momento de la salida.
La lógica central de la estrategia tiene dos partes principales:
La estrategia se realiza en exceso cuando se detecta una oscilación al alza mayor al 1.91% y se realiza en blanco cuando se detecta una oscilación a la baja. Cuando se produce un cruce inverso de la línea de paridad, la estrategia se liquida automáticamente para controlar el riesgo.
La estrategia permite una rápida respuesta y seguimiento de tendencias a las fluctuaciones anormales del mercado mediante la combinación de monitoreo de la volatilidad y el cruce de la línea media. La estrategia está diseñada de manera razonable y tiene un buen mecanismo de control de riesgo, pero aún requiere que el comerciante optimice los parámetros y gestione el riesgo en función de las condiciones reales del mercado. Se recomienda comenzar con una posición pequeña en el comercio en vivo y verificar gradualmente el rendimiento de la estrategia en diferentes entornos de mercado.
/*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='平多')