Estrategia SMA y PSAR para el comercio al contado

El autor:¿ Qué pasa?, Fecha: 2023-12-18 10:31:31
Las etiquetas:

img

Resumen general

Esta estrategia se llama SMA y PSAR Spot Trading Strategy. Combina las ventajas de Simple Moving Average (SMA) y Parabolic SAR (PSAR) para determinar la dirección de la tendencia del mercado y generar señales comerciales. Cuando SMA muestra una tendencia al alza y PSAR está por debajo del precio, se considera como un momento de compra. Cuando SMA muestra una tendencia a la baja y PSAR está por encima del precio, se considera como un momento de venta.

Estrategia lógica

La estrategia utiliza un SMA de 100 períodos para determinar la dirección general de la tendencia. Cuando el precio de cierre rompe el SMA 100 hacia arriba, se define como una tendencia al alza. Cuando el precio de cierre rompe el SMA 100 hacia abajo, se define como una tendencia a la baja.

Al mismo tiempo, el indicador PSAR se calcula para determinar puntos de entrada detallados. El valor inicial de PSAR se establece en 0.02, el valor de incremento es 0.01, y el valor máximo es 0.2.

En resumen, cuando se juzga como una tendencia al alza, si el PSAR es inferior al precio de cierre, se genera una señal de compra.

Para reducir el riesgo comercial, la estrategia también establece salidas de tiempo para cerrar posiciones después de 5 minutos.

Análisis de ventajas

Esta estrategia combina los indicadores SMA y PSAR para determinar tendencias y puntos de entrada, lo que puede utilizar eficazmente las ventajas de ambos indicadores para mejorar la precisión de la decisión.

Además, el ajuste de las salidas de tiempo ayuda a controlar los riesgos de las operaciones individuales y evitar pérdidas excesivas.

Análisis de riesgos

  • La SMA y el PSAR pueden generar señales incorrectas, lo que puede dar lugar a pérdidas comerciales innecesarias.

  • La configuración de tiempo de salida es corta, puede no capturar completamente los movimientos de tendencia.

  • Las configuraciones de parámetros (como el período SMA, los parámetros PSAR, etc.) pueden no adaptarse a algunos productos específicos, por lo que necesitan una optimización.

  • Los riesgos de ajuste de la curva de backtest. Los entornos del mercado cambian en el comercio en vivo, el rendimiento de la estrategia puede no ser tan bueno como el backtest.

Direcciones de optimización

  • Prueba diferentes parámetros de período SMA para encontrar valores más adecuados para productos específicos.

  • Prueba y optimiza los parámetros de PSAR para que juzgue las entradas detalladas con mayor precisión.

  • Extender los parámetros de salida de tiempo, aumentando adecuadamente el tiempo de retención con la premisa de obtener suficientes ganancias.

  • Añadir estrategias de stop loss para controlar mejor la pérdida máxima por operación.

Conclusión

Esta estrategia utiliza ampliamente indicadores como SMA y PSAR para determinar las tendencias del mercado y los puntos de entrada, que es estable y confiable, adecuado para la mayoría de los entornos del mercado. Mientras tanto, establecer salidas de tiempo ayuda a controlar los riesgos.


/*backtest
start: 2023-12-10 00:00:00
end: 2023-12-17 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(title="SMA and Parabolic SAR Strategy with Time-Based Exit", shorttitle="SMA+PSAR", overlay=true)

// Define the parameters for the Parabolic SAR
psarStart = 0.02
psarIncrement = 0.01
psarMax = 0.2

// Calculate the 100-period SMA
sma100 = sma(close, 1000)

// Calculate the Parabolic SAR
sar = sar(psarStart, psarIncrement, psarMax)

// Determine the trend direction
isUpTrend = close < sma100

// Buy condition: Up trend and SAR below price
buyCondition = isUpTrend and sar < close

// Sell condition: Down trend and SAR above price
sellCondition = not isUpTrend and sar > close

// Plot the SMA and Parabolic SAR
plot(sma100, color=color.blue, title="100-period SMA")
plot(sar, color=color.red, title="Parabolic SAR")

// Plot buy and sell signals
plotshape(series=buyCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=sellCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Strategy entry
strategy.entry("Buy", strategy.long, when = buyCondition)

// Time-based exit after 5 minutes
strategy.exit("Close Buy", from_entry = "Buy", when = time[0] > timestamp(year, month, dayofmonth, hour, minute + 5))

strategy.entry("Sell", strategy.short, when = sellCondition)

// Time-based exit after 5 minutes
strategy.exit("Close Sell", from_entry = "Sell", when = time[0] > timestamp(year, month, dayofmonth, hour, minute + 5))


Más.