Estrategia de inversión de tendencia a largo plazo

El autor:¿ Qué pasa?, Fecha: 2023-11-13 10:51:35
Las etiquetas:

img

Resumen general

La estrategia de inversión de tendencia a largo plazo es un sistema de negociación mecánico que combina el seguimiento de tendencias y las reversiones a corto plazo. Utiliza el máximo y mínimo de 7 días para construir un canal y el promedio móvil de 200 días para determinar la dirección de la tendencia a largo plazo. En un mercado alcista, compra en caídas y vende en tendencias alcistas. En un mercado bajista, vende en repunte y compra en caídas.

Estrategia lógica

La estrategia se basa principalmente en los siguientes principios:

  1. Utiliza el máximo y mínimo de 7 días para juzgar el aumento y la caída en la última semana.

  2. El promedio móvil de 200 días determina la dirección de la tendencia a largo plazo.

  3. Cuando el precio se rompe por debajo del mínimo de 7 días y está por encima del promedio móvil de 200 días, se genera una señal de compra. Esto indica el final de la corrección a la baja a corto plazo y la tendencia puede invertirse hacia arriba.

  4. Cuando el precio se rompe por encima del máximo de 7 días y está por debajo del promedio móvil de 200 días, se genera una señal de venta. Esto indica el final de la corrección al alza a corto plazo y la tendencia puede revertirse a la baja.

  5. Para controlar el riesgo por operación, utilizar 2x ATR stop loss.

La clave es considerar los marcos de tiempo a corto y a largo plazo. El canal de 7 días juzga la acción reciente del precio y el MA de 200 días juzga la tendencia de varios meses. Las señales comerciales solo se generan cuando ambas indican la misma dirección. Esto evita señales falsas de correcciones a corto plazo.

Análisis de ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. Sencillas y claras señales basadas en precios y promedios móviles.

  2. Considera las tendencias a corto y largo plazo, filtra el ruido de manera efectiva.

  3. El seguimiento de la tendencia y la reversión media combinados suavizan los rendimientos.

  4. ATR controlan el riesgo, reducen el descenso máximo.

  5. Aplicable a acciones, divisas, criptomonedas en todos los mercados.

  6. Puede funcionar en ambientes de alta y baja frecuencia.

Análisis de riesgos

Los principales riesgos son:

  1. Puede perderse grandes tendencias en mercados con tendencias fuertes.

  2. El stop loss puede activarse con frecuencia en mercados agitados.

  3. Los parámetros inadecuados pueden conducir a un exceso de negociación.

  4. Las métricas de tendencia a corto y largo plazo pueden filtrar demasiadas señales.

  5. Fallo del modelo debido a falta de datos de la muestra.

Las principales técnicas de gestión de riesgos:

  1. Optimizar los parámetros para un stop loss razonable y una frecuencia comercial.

  2. Pruebas de retroceso robustas en todos los mercados y plazos.

  3. Diversificación de la cartera para reducir el riesgo de la estrategia única.

  4. Las pérdidas de suspensión exponenciales para limitar las pérdidas por operación.

Direcciones de optimización

La estrategia puede mejorarse en:

  1. Optimizar la longitud del canal para una mejor métrica de tendencia a corto plazo.

  2. Optimizar la longitud de MA para una mejor métrica de tendencia a largo plazo.

  3. Prueba otras técnicas de stop loss como porcentaje, retraso.

  4. Añadir la condición de volumen. Las inversiones de tendencia a menudo ven un aumento de volumen.

  5. Aprendizaje automático para encontrar parámetros óptimos a corto y largo plazo.

  6. Reglas dinámicas de salida basadas en los fundamentos y el sentimiento.

  7. Optimizar el stop loss para algoritmos exponenciales o de bloqueo de ganancias.

La optimización de parámetros y las combinaciones pueden mejorar aún más los rendimientos y las métricas de riesgo.

Resumen de las actividades

La estrategia de inversión de tendencias a largo plazo combina tanto el seguimiento de tendencias como la reversión media. Al juzgar las tendencias a corto y largo plazo, genera señales en los puntos de reversión de tendencias. En comparación con las estrategias de tendencia pura o reversión media, filtra el ruido del mercado y logra rendimientos y control de riesgos constantes. En general, esta estrategia se adapta a los operadores de algo con vistas al mercado y proporciona un rendimiento estable para las carteras cuantitativas. Con la optimización y la gestión de riesgos en curso, son posibles mejoras adicionales en el rendimiento del riesgo.


/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-12 00:00:00
period: 45m
basePeriod: 5m
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/
// © racer8
//@version=4
// This Algo Strategy Has Only 3 rules and 62% Win Rate (Youtube) 

strategy("Trend Bounce", overlay=true)

nn = input(7,"Channel Length")
hi = highest(high,nn)
lo = lowest(low,nn)
n2 = input(200,"Ma Length")
ma = sma(close,n2)

if close>ma and close<lo[1]
    strategy.entry("Buy",strategy.long)
if close>hi[1]
    strategy.close("Buy") 
    
if close<ma and close>hi[1]
    strategy.entry("Sell",strategy.short)
if close<lo[1]
    strategy.close("Sell")


plot(hi,"high",color=color.aqua)
plot(lo,"low",color=color.aqua)
plot(ma,"sma",color=color.yellow)       

//-----------------------------------------Stop Loss-------------------------------------------------------

atr = sma(tr,10)[1]
bought = strategy.position_size[0] > strategy.position_size[1]
sold = strategy.position_size[0] < strategy.position_size[1]
slm = input(2.0,"ATR Stop Loss",minval=0)
StopPrice_Long  = strategy.position_avg_price - slm*atr              // determines stop loss's price 
StopPrice_Short  = strategy.position_avg_price + slm*atr              // determines stop loss's price 
FixedStopPrice_Long = valuewhen(bought,StopPrice_Long,0)                  // stores original StopPrice  
FixedStopPrice_Short = valuewhen(sold,StopPrice_Short,0)                  // stores original StopPrice  
plot(FixedStopPrice_Long,"ATR Stop Loss Long",color=color.blue,linewidth=1,style=plot.style_cross)
plot(FixedStopPrice_Short,"ATR Stop Loss Short",color=color.red,linewidth=1,style=plot.style_cross)
if strategy.position_size > 0
    strategy.exit(id="Stop", stop=FixedStopPrice_Long)    // commands stop loss order to exit!
if strategy.position_size < 0
    strategy.exit(id="Stop", stop=FixedStopPrice_Short)    // commands stop loss order to exit!



Más.