Estrategia de inversión de media móvil


Fecha de creación: 2024-02-20 13:59:46 Última modificación: 2024-02-20 13:59:46
Copiar: 1 Número de Visitas: 550
1
Seguir
1617
Seguidores

Estrategia de inversión de media móvil

Descripción general

Esta estrategia es una estrategia de inversión de línea cruzada basada en un promedio móvil simple. Utiliza un promedio móvil simple de longitud 1 y longitud 5.

Principio de estrategia

Esta estrategia calcula el promedio móvil simple de 1 día SMA1 y el promedio móvil simple de 5 días SMA5 de los precios de cierre. Se hace una entrada adicional cuando se usa SMA5 sobre SMA1 y una entrada de cierre cuando se usa SMA5 debajo de SMA1. Se establece un stop loss de \( 5 por debajo del precio de entrada y un stop loss de \) 150 por encima del precio de entrada.

Análisis de las ventajas

  • Utiliza dos líneas de equilibrio para determinar la dirección de la tendencia del mercado y evitar la reversión de la entrada inmediatamente después de la parada
  • Los parámetros de las medias móviles son sencillos y razonables, y los resultados de la retrospectiva son buenos.
  • El stop loss es pequeño y puede soportar algunos cambios en el mercado.
  • El mayor margen de amortización permite obtener suficientes ganancias

Análisis de riesgos

  • Las estrategias de doble línea equitativa son fácilmente engañables y tienen una alta probabilidad de pérdidas en caso de fluctuaciones.
  • No se puede seguir la tendencia de manera efectiva y la línea larga tiene una capacidad limitada para generar ganancias.
  • Optimización de parámetros con espacio limitado y fácil optimización excesiva
  • Los parámetros deben ajustarse para las diferentes variedades que se comercializan en una variedad específica.

La dirección de la optimización:

  • Añadir filtros de otros indicadores para evitar señales erróneas
  • Dinámica de los ajustes de las paradas de pérdida
  • Optimización de los parámetros de la media móvil
  • Indicadores de volatilidad para controlar el tamaño de las posiciones

Resumir

Esta estrategia es una estrategia simple de doble línea uniforme, con características de operación simple y fácil de implementar, que puede verificar rápidamente la idea de la estrategia. Sin embargo, su capacidad de soporte y su espacio de ganancia son limitados, y se necesita optimizar los parámetros y las condiciones de filtración para adaptarse a un mayor número de entornos de mercado. Como la primera estrategia de cuantificación para principiantes, contiene los elementos básicos que se pueden mejorar iterablemente como un marco simple.

Código Fuente de la Estrategia
/*backtest
start: 2023-02-19 00:00:00
end: 2024-02-19 00:00:00
period: 2d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Valeria 181 Bot Strategy Mejorado 2.21", overlay=true, margin_long=100, margin_short=100)
 
var float lastLongOrderPrice = na
var float lastShortOrderPrice = na

longCondition = ta.crossover(ta.sma(close, 1), ta.sma(close, 5))
if (longCondition)
    strategy.entry("Long Entry", strategy.long)  // Enter long

shortCondition = ta.crossunder(ta.sma(close, 1), ta.sma(close, 5))
if (shortCondition)
    strategy.entry("Short Entry", strategy.short)  // Enter short

if (longCondition)
    lastLongOrderPrice := close

if (shortCondition)
    lastShortOrderPrice := close

// Calculate stop loss and take profit based on the last executed order's price
stopLossLong = lastLongOrderPrice - 5  // 10 USDT lower than the last long order price
takeProfitLong = lastLongOrderPrice + 151  // 100 USDT higher than the last long order price
stopLossShort = lastShortOrderPrice + 5  // 10 USDT higher than the last short order price
takeProfitShort = lastShortOrderPrice - 150  // 100 USDT lower than the last short order price

// Apply stop loss and take profit to long positions
strategy.exit("Long Exit", from_entry="Long Entry", stop=stopLossLong, limit=takeProfitLong)

// Apply stop loss and take profit to short positions
strategy.exit("Short Exit", from_entry="Short Entry", stop=stopLossShort, limit=takeProfitShort)