En la carga de los recursos... Cargando...

Estrategia de extracción extrema del mercado basada en desviaciones estadísticas

El autor:¿ Qué pasa?, Fecha: 2024-11-29 16:46:33
Las etiquetas:Enfermedad de transmisión sexualLa SMA- ¿Qué es?- ¿ Qué?

img

Resumen general

Esta estrategia se basa en las características estadísticas de las recesiones extremas del mercado. Al analizar estadísticamente las reducciones y usar desviaciones estándar para medir los extremos de volatilidad del mercado, inicia posiciones de compra cuando las caídas del mercado exceden los rangos normales. La idea central es capturar oportunidades de sobreventa causadas por el pánico del mercado, identificando oportunidades de inversión a través de métodos estadísticos matemáticos que surgen de la irracionalidad del mercado.

Principio de la estrategia

La estrategia emplea una ventana de tiempo de rodaje para calcular las reducciones máximas de precios y sus características estadísticas. Primero calcula el precio más alto en los últimos 50 períodos, luego calcula el porcentaje de reducción del precio de cierre actual en relación con el precio más alto. Luego calcula la media y la desviación estándar de las reducciones, estableciendo -1 desviación estándar como el umbral de activación. Cuando la reducción del mercado excede la media menos un conjunto múltiple de desviaciones estándar, lo que indica condiciones potenciales de sobreventa, se ingresa una posición larga. Las posiciones se cierran automáticamente después de 35 períodos. La estrategia también traza curvas de reducción y uno, dos y tres niveles de desviación estándar para la evaluación visual de las condiciones de sobreventa del mercado.

Ventajas estratégicas

  1. La estrategia se basa en principios estadísticos con una sólida base teórica y el uso de la desviación estándar para medir los extremos de volatilidad del mercado es objetivo y científico.
  2. En el caso de las inversiones de valor, el valor de las inversiones de valor es el valor de las inversiones de valor, que es el valor de las inversiones de valor.
  3. El cierre de posiciones de período fijo evita rebotes perdidos que podrían ocurrir con paradas posteriores.
  4. Los parámetros altamente ajustables permiten flexibilidad para diferentes entornos de mercado e instrumentos comerciales.
  5. El simple cálculo de los indicadores de absorción y desviación estándar hace que la lógica de la estrategia sea clara y fácil de entender y ejecutar.

Riesgos estratégicos

  1. Los mercados pueden experimentar una caída continua, lo que lleva a entradas perdedoras frecuentes.
  2. Las salidas de período fijo pueden perder un mayor potencial de subida.
  3. Las características estadísticas de extracción pueden cambiar con las condiciones del mercado.
  4. La estrategia no tiene en cuenta el volumen y otra información del mercado.
  5. La desviación típica puede volverse poco fiable en mercados altamente volátiles.

Direcciones de optimización

  1. Incorporar indicadores de volumen para confirmar los niveles de pánico del mercado.
  2. Añadir indicadores de tendencia para evitar entradas frecuentes en tendencias a la baja.
  3. Optimizar el mecanismo de salida con ajustes dinámicos del período de retención basados en el rendimiento del mercado.
  4. Añadir ajustes de stop-loss para controlar el riesgo de una sola operación.
  5. Considere el uso de parámetros adaptativos para mejorar la adaptación de la estrategia a los cambios del mercado.

Resumen de las actividades

Esta estrategia captura oportunidades de sobreventa del mercado a través de métodos estadísticos, con una sólida base teórica y valor práctico. La lógica de la estrategia es simple y clara con parámetros ajustables, adecuados como una estrategia base para la expansión y optimización. La estabilidad y rentabilidad de la estrategia se pueden mejorar aún más agregando indicadores técnicos y medidas de control de riesgos.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-28 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Buy When There's Blood in the Streets Strategy", overlay=false, shorttitle="BloodInTheStreets")


//This strategy identifies opportunities to buy during extreme market drawdowns based on standard deviation thresholds. 
//It calculates the maximum drawdown over a user-defined lookback period, identifies extreme deviations from the mean, 
//and triggers long entries when specific conditions are met. The position is exited after a defined number of bars.


// User Inputs
lookbackPeriod = input.int(50, title="Lookback Period", minval=1, tooltip="Period to calculate the highest high for drawdown")
stdDevLength = input.int(50, title="Standard Deviation Length", minval=1, tooltip="Length of the period to calculate standard deviation")
stdDevThreshold = input.float(-1.0, title="Standard Deviation Threshold", tooltip="Trigger level for long entry based on deviations")
exitBars = input.int(35, title="Exit After (Bars)", minval=1, tooltip="Number of bars after which to exit the trade")

// Drawdown Calculation
peakHigh = ta.highest(high, lookbackPeriod)
drawdown = ((close - peakHigh) / peakHigh) * 100

// Standard Deviation Calculation
drawdownStdDev = ta.stdev(drawdown, stdDevLength)
meanDrawdown = ta.sma(drawdown, stdDevLength)

// Define Standard Deviation Levels
stdDev1 = meanDrawdown - drawdownStdDev
stdDev2 = meanDrawdown - 2 * drawdownStdDev
stdDev3 = meanDrawdown - 3 * drawdownStdDev

// Plot Drawdown and Levels
plot(drawdown, color=color.red, linewidth=2, title="Drawdown (%)")
plot(meanDrawdown, color=color.blue, linewidth=2, title="Mean Drawdown")
plot(stdDev1, color=color.green, linewidth=1, title="1st Std Dev")
plot(stdDev2, color=color.orange, linewidth=1, title="2nd Std Dev")
plot(stdDev3, color=color.purple, linewidth=1, title="3rd Std Dev")

// Entry Condition
var float entryBar = na
goLong = drawdown <= meanDrawdown + stdDevThreshold * drawdownStdDev

if (goLong and strategy.position_size == 0)
    strategy.entry("Long", strategy.long)
    entryBar := bar_index

// Exit Condition
if (strategy.position_size > 0 and not na(entryBar) and bar_index - entryBar >= exitBars)
    strategy.close("Long")


Relacionados

Más.