Estrategia de compra de punto de inversión con indicador dual


Fecha de creación: 2024-01-04 17:39:13 Última modificación: 2024-01-04 17:39:13
Copiar: 1 Número de Visitas: 531
1
Seguir
1621
Seguidores

Estrategia de compra de punto de inversión con indicador dual

Descripción general

La estrategia utiliza el volumen de operaciones y el RSI para determinar el momento de la compra y gestiona las posiciones mediante el establecimiento de objetivos de parada en lotes para obtener ganancias progresivas. La estrategia es adecuada para situaciones de crisis y puede bloquear de manera efectiva las compras repetidas en crisis de menor magnitud.

Principio de estrategia

La estrategia utiliza dos indicadores para identificar el momento de comprar: el volumen de operaciones y el RSI. La lógica específica es que se emita una señal de compra cuando el volumen de operaciones es superior a 2,5 veces el promedio de volumen de operaciones de los últimos 70 días, mientras que el RSI es inferior a 30 (nivel de sobreventa).

Una vez que se establece una posición de compra, la estrategia establece 5 objetivos de stop-loss diferentes: 0.4%, 0.6%, 0.8%, 1.0% y 1.2% y se detiene gradualmente según la proporción de la posición: 20%, 40%, 60%, 80% y 100% hasta que la posición se equilibre por completo. Al mismo tiempo, se establece un punto de parada del 5% .

De esta manera, mediante el establecimiento de paradas por lotes, se puede bloquear una subida de menor magnitud y evitar perder ganancias al esperar una subida mayor. Las paradas pueden controlar las pérdidas individuales.

Análisis de las ventajas

La estrategia tiene las siguientes ventajas:

  1. Utiliza el doble indicador para identificar puntos de compra y evitar falsas rupturas. El aumento del volumen de operaciones puede confirmar el nivel de resistencia inferior, y el exceso de RSI puede determinar la probabilidad de rebote de Addon.

  2. La estrategia de parálisis por lotes permite maximizar las oportunidades de ganancias en pequeñas fluctuaciones, sin tener que esperar un aumento significativo.

  3. La estrategia se aplica a situaciones de volatilidad, especialmente en mercados en los que los precios saltan repetidamente en las zonas no terminadas de la institución. En este tipo de mercados, es difícil determinar la dirección a corto plazo, y la estrategia puede ser rentable con frecuencia.

  4. El punto de parada se establece de manera amplia, lo que da al mercado suficiente espacio para tomar decisiones.

Análisis de riesgos

Los principales riesgos de esta estrategia son:

  1. El doble indicador confirma que la señal tiene un riesgo de error y puede comprar puntos de ruptura falsos. Se puede reducir el riesgo optimizando los parámetros.

  2. El bloqueo de lotes puede perder grandes oportunidades de ganancias debido a una posición demasiado pequeña. Se puede optimizar mediante el ajuste del punto de parada y la proporción de posiciones.

  3. El mayor nivel de stop loss y el mayor riesgo de pérdidas individuales reduce el riesgo de gestión de posiciones.

  4. En los mercados convulsivos, los mercados fuertes presentan un mayor riesgo direccional. Se debe prestar atención a la estructura del mercado a gran escala.

  5. Una mayor frecuencia de transacciones conlleva un aumento de los costos de las transacciones.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Optimiza el volumen de operaciones y la combinación de parámetros RSI, reduciendo la tasa de error. También se puede introducir otros indicadores como MACD, KDJ y otros para confirmar.

  2. Prueba diferentes paradas y proporciones de posición para encontrar la combinación óptima de parámetros. También se puede introducir un mecanismo de paradas dinámicas.

  3. Optimizar las estrategias de gestión de posiciones y reducir la probabilidad de pérdidas individuales a través de un sistema de gestión de posiciones de riesgo.

  4. Se añade un módulo de determinación de tendencias, que permite identificar el giro de tendencias y detener las pérdidas en el momento oportuno.

  5. Introducción de un sistema de transacciones algorítmicas y de retroalimentación cuantitativa, para recorrer rápidamente los diferentes parámetros en busca de la combinación óptima de ellos.

  6. El modelo de control de costos y control de puntos de deslizamiento de la estrategia de comercio de alta frecuencia a nivel institucional reduce el número de transacciones y garantiza la rentabilidad.

Resumir

La estrategia de doble indicador de invertir el punto de compra, mediante el volumen de comercio de la ponderación más el RSI sobreventa juicio de la parte inferior, el uso de un método de dividendos por lotes para bloquear los beneficios pequeños en el contexto de la convulsión. La ventaja es que los beneficios son frecuentes, no hay que esperar a un gran mercado; la desventaja es la señal de error y la alta frecuencia de comercio.

Código Fuente de la Estrategia
/*backtest
start: 2023-12-27 00:00:00
end: 2024-01-03 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © wielkieef

//@version=5

strategy(title='BTFD strategy [3min]', overlay=true, pyramiding=5, initial_capital=10000, default_qty_type=strategy.percent_of_equity, default_qty_value=100, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03)


// Volume

vol_sma_length = input.int(70, title='Volume lenght  ', minval=1)
Volume_condt = volume > ta.sma(volume, vol_sma_length) * 2.5


// Rsi

rsi_lenght = input.int(20, title='RSI lenght', minval=0)
rsi_up = ta.rma(math.max(ta.change(close), 0), rsi_lenght)
rsi_down = ta.rma(-math.min(ta.change(close), 0), rsi_lenght)
rsi_value = rsi_down == 0 ? 100 : rsi_up == 0 ? 0 : 100 - 100 / (1 + rsi_up / rsi_down)

rsi_overs = rsi_value <= 30
rsi_overb = rsi_value >= 70


// logic

tp_1 = input.float(0.4,"  TP 1", minval=0.1, step=0.1)
tp_2 = input.float(0.6,"  TP 2", minval=0.2, step=0.1)
tp_3 = input.float(0.8,"  TP 3", minval=0.3, step=0.1)
tp_4 = input.float(1.0,"  TP 4", minval=0.4, step=0.1)
tp_5 = input.float(1.2,"  TP 5", minval=0.5, step=0.1)

q_1 = input.int(title='  % TP 1 Q ', defval=20,  minval=1, step=10)
q_2 = input.int(title='  % TP 2 Q ', defval=40,  minval=1, step=10)
q_3 = input.int(title='  % TP 3 Q ', defval=60,  minval=1, step=10)
q_4 = input.int(title='  % TP 4 Q ', defval=80,  minval=1, step=10)
q_5 = input.int(title='  % TP 5 Q ', defval=100, minval=1, step=10)

sl = input.float(5.0, '% Stop Loss', step=0.1)

long_cond = Volume_condt and rsi_overs

// this code is from author RafaelZioni, modified by wielkieef
per(procent) =>
    strategy.position_size != 0 ? math.round(procent / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
// --------------------------------------------------------------------------------------------------------------------

if  long_cond
    strategy.entry('BUY', strategy.long)

strategy.exit('TP 1', qty_percent=q_1, profit=per(tp_1), loss=per(sl) )
strategy.exit('TP 2', qty_percent=q_2, profit=per(tp_2), loss=per(sl) )
strategy.exit('TP 3', qty_percent=q_3, profit=per(tp_3), loss=per(sl) )
strategy.exit('TP 4', qty_percent=q_4, profit=per(tp_4), loss=per(sl) )
strategy.exit('TP 5', qty_percent=q_5, profit=per(tp_5), loss=per(sl) )

 
// by wielkieef