Estrategia inteligente de reversión cuantitativa de puntos bajos


Fecha de creación: 2023-12-08 10:45:49 Última modificación: 2023-12-08 10:45:49
Copiar: 0 Número de Visitas: 682
1
Seguir
1621
Seguidores

Estrategia inteligente de reversión cuantitativa de puntos bajos

Descripción general

La estrategia es una estrategia de inversión de puntos bajos de energía inteligente para las criptomonedas. Utiliza la tecnología de múltiples marcos de tiempo y el indicador RSI adaptado para determinar los posibles puntos bajos de corto plazo del mercado, para invertir la entrada cerca de los puntos bajos y obtener ganancias adicionales.

Principio de estrategia

En primer lugar, la estrategia utiliza la cantidad de cambio y el volumen de transacción para calcular el indicador RSI para determinar los posibles mínimos a corto plazo del mercado. Luego, se combina con la tecnología de múltiples marcos de tiempo para determinar la señal de punto bajo a un nivel más amplio.

En concreto, el método de cálculo del indicador de RSI de adaptación es: primero calcular la cantidad de variación de cada línea K, luego calcular la cantidad de transacciones de la línea K raíz, y luego multiplicar la cantidad de variación por la cantidad de transacciones para obtener la fuerza cuantitativa de la línea K raíz. Calcular el RSI de la fuerza cuantitativa y tomar el promedio de N ciclos para obtener el indicador de RSI de adaptación.

Sobre esta base, la estrategia también introduce la tecnología de multi-marco de tiempo para juzgar las señales en un marco más alto para evitar la interferencia del ruido del mercado a corto plazo. Cuando la media de alto nivel retrocede desde el punto bajo, se juzga que es el momento de compra de la estrategia.

Análisis de las ventajas

La mayor ventaja de esta estrategia es que utiliza el RSI para determinar los mínimos a corto plazo del mercado, lo que proporciona una señal eficaz para el comercio de reversión de los mínimos. Además, la incorporación de la tecnología multi-marco de tiempo también mejora la calidad de la señal y evita la interferencia del ruido del mercado a corto plazo.

En comparación con el indicador RSI tradicional, el indicador RSI adaptado añade un cálculo de la intensidad cuantitativa, lo que lo hace más sensible a los mercados de criptomonedas que cambian rápidamente y puede determinar los puntos bajos del mercado con mayor rapidez y precisión, lo que proporciona un precursor para el comercio de inversiones de puntos bajos.

Además, la estrategia tiene las ventajas de seguir la tendencia y el comercio de reversión. En un mercado con una tendencia poco clara, puede aprovechar el comercio de reversión para obtener ganancias. En un mercado con una tendencia clara, puede seguir la tendencia.

Análisis de riesgos

El principal riesgo de esta estrategia reside en que la precisión de la valoración de los puntos bajos no está garantizada al 100%. Los mercados suelen tener grandes fluctuaciones irracionales en el corto plazo. Si los puntos bajos continúan bajando, se enfrenta a un mayor riesgo de pérdidas.

Además, puede haber desviaciones entre varios marcos de tiempo. Si la señal de marcos de tiempo altos se retrasa, puede haber pérdidas de transacción.

Para controlar el riesgo, la estrategia utiliza un mecanismo de pérdidas más conservador y establece paros por lotes para optimizar gradualmente los beneficios. Además, los parámetros pueden ajustarse adecuadamente para adaptarse al RSI y optimizar la precisión del juicio de puntos bajos.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Optimización de los parámetros de adaptación al RSI para mejorar la precisión de los puntos bajos del mercado. Se pueden probar diferentes parámetros de ciclo.

  2. Añadir otros indicadores para la confirmación, para evitar señales erróneas. Por ejemplo, la combinación de indicadores de tráfico, etc.

  3. Optimización de los mecanismos de detención de pérdidas, con la condición de garantizar la relación de ganancias y pérdidas, la flexibilización adecuada de los límites de detención de pérdidas, para obtener más ganancias de tendencia.

  4. Optimización de la elección del marco de tiempo, asegurando la fiabilidad de la señal a un nivel más alto. Se puede probar el nivel medio más alto, diariamente, semanalmente, etc.

  5. Prueba la eficacia de la estrategia en diferentes variedades de criptomonedas y selecciona la mejor.

Resumir

La estrategia de inversión de puntos bajos de energía inteligente determina los posibles puntos bajos a corto plazo del mercado mediante la adaptación del indicador RSI y la tecnología de marcos temporales múltiples. Sus características de inversión de operaciones le permiten obtener ganancias excedentarias en situaciones de incertidumbre. Al mismo tiempo, también puede seguir una tendencia clara.

Código Fuente de la Estrategia
/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-07 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © theCrypster 2020

//@version=4
strategy(title = "Low Scanner strategy crypto", overlay = false, pyramiding=1,initial_capital = 1000, 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.075)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
leng=1
p1=close[1]
min=input(10)
len55 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
//taken from https://www.tradingview.com/script/Ql1FjjfX-security-free-MTF-example-JD/
tf3 = input("60", type=input.resolution)
ti = change( time(tf3) ) != 0
T_c = fixnan( ti ? close : na )

vrsi = rsi(cum(change(T_c) * volume), leng)
pp=wma(vrsi,len55)

d=(vrsi[1]-pp[1])
min1 =input(1)
len100 = timeframe.isintraday and timeframe.multiplier >= 1 ? 
   min1 / timeframe.multiplier * 7 : 
   timeframe.isintraday and timeframe.multiplier < 60 ? 
   60 / timeframe.multiplier * 24 * 7 : 7
x=ema(d,len100)
//
zx=x/-1
col=zx > 0? color.lime : color.orange
plot(zx,color=col,linewidth=1)
//

tf10 = input("60", title = "Timeframe", type = input.resolution, options = ["1", "5", "15", "30", "60","120", "240","360","720", "D", "W"])

length = input(24, title = "Period", type = input.integer)
shift = input(1, title = "Shift", type = input.integer)

hma(_src, _length)=>
    wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))
    
hma3(_src, _length)=>
    p = length/2
    wma(wma(close,p/3)*3 - wma(close,p/2) - wma(close,p),p)


a = security(syminfo.tickerid, tf10, hma(close, length))
b =security(syminfo.tickerid, tf10, hma3(close[1], length)[shift])
//plot(a,color=color.gray)
//plot(b,color=color.yellow)
close_price = close[0]
len = input(25)

linear_reg = linreg(close_price, len, 0)


//plot(linear_reg, color=color.blue, title="LR", linewidth=3)

buy=crossover(linear_reg, b) 
sell=crossunder(linear_reg, b) 
//
l = crossover(zx,0) or buy
        
if l 
    strategy.entry("buy", strategy.long)

per(pcnt) =>
    strategy.position_size != 0 ? round(pcnt / 100 * strategy.position_avg_price / syminfo.mintick) : float(na)
stoploss=input(title=" stop loss", defval=10, minval=0.01)
los = per(stoploss)
q1=input(title=" qty_percent1", defval=25, minval=1)
q2=input(title=" qty_percent2", defval=25, minval=1)
q3=input(title=" qty_percent3", defval=25, minval=1)
tp1=input(title=" Take profit1", defval=1, minval=0.01)
tp2=input(title=" Take profit2", defval=2, minval=0.01)
tp3=input(title=" Take profit3", defval=3, minval=0.01)
tp4=input(title=" Take profit4", defval=5, minval=0.01)
strategy.exit("x1", qty_percent = q1, profit = per(tp1), loss = los)
strategy.exit("x2", qty_percent = q2, profit = per(tp2), loss = los)
strategy.exit("x3", qty_percent = q3, profit = per(tp3), loss = los)
strategy.exit("x4", profit = per(tp4), loss = los)