Estrategia de posicionamiento compuesto de alto volumen y baja ruptura

El autor:¿ Qué pasa?, Fecha: 2024-02-18 15:43:02
Las etiquetas:

img

Resumen general

La idea central de esta estrategia es rastrear las rupturas durante un alto volumen de operaciones mediante el uso de un enfoque de tamaño de posición compuesto basado en un porcentaje de riesgo definido y un apalancamiento simulado de 250x. Su objetivo es capturar oportunidades potenciales de reversión después de una fuerte presión de venta.

Estrategia lógica

Las señales de entrada largas se activan cuando:

  1. El volumen excede un umbral definido por el usuario (volThreshold)
  2. El mínimo de la barra actual es más bajo que el mínimo de la barra anterior (bajo)
  3. El cierre de la barra actual es negativo, pero más alto que el cierre de la barra anterior (negativoCloseWithHighVolume)
  4. No existe una posición larga abierta (strategy.position_size == 0)

El dimensionamiento de la posición se calcula de la siguiente manera:

  1. Valor del riesgo basado en el capital propio * porcentaje de riesgo
  2. Valor del riesgo * apalancamiento (250x) para determinar el número de contratos/lotes

Reglas de salida:

Cierre la posición larga cuando el porcentaje de ganancia postProfitPct alcance el stop loss (-0,14%) o el take profit (4,55%).

Análisis de ventajas

Ventajas de esta estrategia:

  1. Captura las oportunidades de reversión de tendencia derivadas del alto volumen de operaciones
  2. El tamaño de las posiciones combinadas permite un crecimiento más rápido de los beneficios
  3. Un stop loss y un take profit razonables ayudan a controlar el riesgo

Análisis de riesgos

Riesgos a tener en cuenta:

  1. El apalancamiento de 250x amplifica las pérdidas
  2. No tiene en cuenta el deslizamiento, las comisiones, los requisitos de margen
  3. Requiere pruebas de retroceso robustas y optimización de parámetros

El riesgo puede reducirse:

  1. Reducción del importe del apalancamiento
  2. Porcentaje creciente de pérdidas de parada
  3. Contabilidad de los costes reales de negociación

Oportunidades de optimización

Áreas de mejora:

  1. Ajuste dinámico del nivel de apalancamiento
  2. Optimizar las reglas de stop loss y take profit
  3. Añadir filtro de tendencia
  4. Personalizar parámetros basados en el instrumento

Conclusión

En resumen, esta es una estrategia bastante simple y directa para capturar reversiones y ganancias excesivas. Pero existen riesgos y las pruebas prudentes del mundo real son esenciales. Con la optimización, se puede hacer más robusta y práctica.


/*backtest
start: 2023-02-11 00:00:00
end: 2024-02-17 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("High Volume Low Breakout (Compounded Position Size)", overlay=true, initial_capital=1000)

// Define input for volume threshold
volThreshold = input.int(250, "Volume Threshold")

// Define input for risk per trade as a percentage of total equity
riskPercentage = input.float(10, "Risk Percentage")

// Calculate volume
vol = volume

// Check for high volume and low lower than the previous bar
highVolume = vol > volThreshold
lowLowerThanPrevBar = low < low[1]

// Calculate position profit percentage
posProfitPct = 100 * (close - strategy.position_avg_price) / strategy.position_avg_price

// Calculate the position size based on risk percentage and total account equity
equity = strategy.equity
riskAmount = (equity * riskPercentage / 100) / (close - strategy.position_avg_price)

// Calculate leverage (250x in this case)
leverage = 250

// Calculate the position size in contracts/lots to trade
positionSize = riskAmount * leverage

// Check if the current bar's close is negative when it has high volume
negativeCloseWithHighVolume = highVolume and close < close[1]

// Enter long position as soon as volume exceeds the threshold, low is lower than the previous bar, and the current bar's close is negative
if highVolume and lowLowerThanPrevBar and negativeCloseWithHighVolume and strategy.position_size == 0
    strategy.entry("Long", strategy.long, qty=positionSize, comment="Long Entry")

// Exit long position intrabar if profit goes below -0.14% or above 1%
if strategy.position_size > 0
    if posProfitPct < -0.14 or posProfitPct > 4.55
        strategy.close("Long")


Más.