
Esta estrategia se llama la estrategia de la cruz de muerte de la cruz de oro, y su idea principal es utilizar dos señales de indicadores técnicos potentes, el cruce de oro y el cruce de muerte de las medias móviles de dos períodos diferentes, para capturar la reversión de la tendencia del mercado y lograr el efecto de compra baja y venta alta.
En esta estrategia, calculamos un promedio móvil simple de 50 y 200 períodos (SMA). Según la comprensión tradicional, cuando la línea de 50 días cae desde arriba a través de la línea de 200 días, se llama el umbral de la cruz de la muerte de las agujas, es una señal bajista.
La lógica de negociación de esta estrategia es establecer posiciones en función de la aparición de estas dos señales. En concreto, la estrategia se va a hacer en blanco en el momento en que se produce el cruce de la muerte de la plata y más en el momento en que se produce el cruce de la oro de la plata. Así se puede obtener ganancias cerca del punto de inflexión de la tendencia del mercado.
Además, la estrategia ofrece una función de rango de tiempo de retroalimentación que se puede personalizar. Esto nos permite probar el rendimiento de la estrategia en diferentes intervalos de fecha y descubrir el efecto real de estas señales de cruce.
En función del riesgo, podemos ajustar los parámetros de la línea media, combinar con otras señales de filtración de indicadores, hacer una buena gestión de fondos y una estrategia de verificación en el terreno para reducir el riesgo real.
La estrategia se puede optimizar principalmente en los siguientes aspectos:
Al probar el impacto de los diferentes parámetros en el rendimiento de la estrategia, podemos encontrar mejores soluciones para el comercio de cruce de línea.
La estrategia utiliza el cruce de las medias móviles, una señal de indicador tecnológico clásico, para capturar los puntos de inflexión clave del mercado. La lógica de la estrategia es simple y clara, pero ofrece una función de retroalimentación conveniente. Podemos ayudar a juzgar la situación como parte del seguimiento de tendencias.
/*backtest
start: 2024-01-14 00:00:00
end: 2024-01-21 00:00:00
period: 15m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("[S_R__9] - Death and Golden Cross", overlay=true)
// Specific Time Date Range For Backtest
startDate = input.int(title='Start Date', defval=1, minval=1, maxval=31, group='DATE CONFIG')
startMonth = input.int(title='Start Month', defval=1, minval=1, maxval=12, group='DATE CONFIG')
startYear = input.int(title='Start Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG')
endDate = input.int(title='End Date', defval=31, minval=1, maxval=31, group='DATE CONFIG')
endMonth = input.int(title='End Month', defval=12, minval=1, maxval=12, group='DATE CONFIG')
endYear = input.int(title='End Year', defval=2023, minval=1800, maxval=2100, group='DATE CONFIG')
SPECIFIC_DATE = input.bool(title='USE SPECIFIC DATE ?', defval=false, group='DATE CONFIG')
inDateRange = SPECIFIC_DATE ? time >= timestamp(syminfo.timezone, startYear, startMonth, startDate, 0, 0) and time < timestamp(syminfo.timezone, endYear, endMonth, endDate, 0, 0) : true
// Calculate 50 SMA and 200 SMA
sma50 = ta.sma(close, 50)
sma200 = ta.sma(close, 200)
// Detect a Death Cross (50 SMA crossing below 200 SMA)
deathCross = ta.crossunder(sma50, sma200)
// Detect a Golden Cross (50 SMA crossing above 200 SMA)
goldenCross = ta.crossover(sma50, sma200)
// Strategy Execution
if (inDateRange)
if (deathCross)
strategy.entry("Death Cross long", strategy.short)
if (goldenCross)
strategy.entry("Golden Cross short", strategy.long)
// Plot SMAs
plot(sma50, color=color.red, title="50 SMA")
plot(sma200, color=color.blue, title="200 SMA")
// Plotting Death Cross signal
plotshape(series=deathCross and inDateRange, title="Death Cross Signal", location=location.belowbar, color=color.red, style=shape.labeldown, text="DEATH CROSS")
// Plotting Golden Cross signal
plotshape(series=goldenCross and inDateRange, title="Golden Cross Signal", location=location.abovebar, color=color.green, style=shape.labelup, text="GOLDEN CROSS")