Estrategia de compra y venta de acciones de Golden Cross


Fecha de creación: 2023-11-01 17:02:14 Última modificación: 2023-11-01 17:02:14
Copiar: 0 Número de Visitas: 656
1
Seguir
1617
Seguidores

Estrategia de compra y venta de acciones de Golden Cross

Descripción general

Esta estrategia es una estrategia típica de seguimiento de tendencias. Se utiliza para mercados con una clara tendencia ascendente, que se puede seguir y, por lo tanto, se multiplica en la tendencia ascendente y se detiene a tiempo cuando la tendencia se invierte.

Principio de estrategia

La estrategia se basa principalmente en calcular las medias móviles a corto plazo y las medias móviles a largo plazo y observar su cruce para determinar la tendencia del mercado. La lógica específica es la siguiente:

  1. Calcula el promedio móvil simple de 3 días short_ma como promedio móvil a corto plazo

  2. Calcula el promedio móvil simple de 19 días long_ma como promedio móvil de largo plazo

  3. Cuando las medias móviles a corto plazo se cruzan con las medias móviles a largo plazo, se emite una señal de multiplicación para entrar en posiciones largas.

  4. Cuando los precios aumentan más que el precio de entrada*Cuando el valor de la posición sea igual a 1 + Stop Loss %, se borrará toda la posición.

  5. Cuando el promedio móvil a corto plazo se cruza por debajo del promedio móvil a largo plazo, se emite una señal de vacío y se entra en la posición vacía

  6. Limitar el rango de tiempo de ejecución de la estrategia haciendo retrospectivas en un rango de fechas específicas

  7. El comercio solo se realiza cuando la tendencia general es al alza, calculando un promedio móvil simple de 100 días como indicador de la tendencia general.

La estrategia aprovecha el principio de la cruz dorada de los promedios móviles, en una tendencia ascendente continua del índice, entrar en posiciones extras al atravesar los promedios móviles a corto plazo en el promedio móvil a largo plazo, para poder capturar efectivamente las oportunidades en la tendencia; salir de las posiciones extras y entrar en posiciones en blanco al atravesar los promedios móviles a largo plazo por debajo de los promedios móviles a corto plazo, para poder controlar eficazmente el riesgo.

Análisis de las ventajas

La estrategia tiene las siguientes ventajas:

  1. La estrategia es clara y fácil de entender, y la dirección de la tendencia es fácil de dominar a través de la medias móviles cruzadas.

  2. Las reglas de evaluación de entrada son sencillas y efectivas, pueden ser controladas de manera eficiente y efectiva.

  3. Establece un punto de parada para bloquear ganancias y puede detener los pérdidas en el momento en que la situación cambia.

  4. El hecho de que las operaciones se realicen sólo en la parte superior de una gran tendencia puede filtrar las señales falsas de la mayor parte de los períodos de convulsión.

  5. Los parámetros de la media móvil se pueden personalizar para adaptarse a las características de los diferentes mercados.

  6. Se puede configurar un rango de tiempo de detección para que la verificación se realice en un período de tiempo específico.

Análisis de riesgos

La estrategia también tiene sus riesgos:

  1. Las estrategias de medias móviles son sensibles a los parámetros, y diferentes configuraciones de parámetros pueden afectar el rendimiento de las estrategias.

  2. La curva de ajuste se ha hecho solo con datos históricos y no se pueden manejar anomalías.

  3. La incapacidad de manejar eficazmente el alza de los precios puede conducir a la superación de los puntos de parada.

  4. En situaciones de conmoción, es fácil que se encuentre en una situación de riesgo, por lo que es necesario establecer un punto de parada razonable.

  5. Solo se aplica a un entorno de mercado con una tendencia evidente, no es adecuado para un mercado de oscilación horizontal.

  6. La elección del rango de tiempo de detección puede influir en los resultados de la verificación de la estrategia.

Dirección de optimización

La estrategia puede ser optimizada en los siguientes aspectos:

  1. Prueba diferentes combinaciones de parámetros para encontrar el mejor, como el número de períodos de la media móvil.

  2. Añadir otros indicadores técnicos para el juicio integral, como MACD, Bollinger Bands, etc., para mejorar la eficacia de la toma de decisiones.

  3. Configurar un stop loss de seguimiento dinámico para controlar mejor el riesgo.

  4. Optimización de la entrada, lógica de deterioro, como la consideración de romper el punto más alto de la entrada anterior, etc.

  5. Para evaluar la estabilidad de las estrategias, se pueden probar diferentes datos del entorno del mercado.

  6. Considere la inclusión de modelos como el aprendizaje automático para la optimización de parámetros o el juicio de señales.

  7. Aumentar el manejo de situaciones excepcionales en las que los precios se disparen o se detengan las colchas.

Resumir

Esta estrategia capta las tendencias al alza, establece un punto de parada para controlar el riesgo y obtiene mejores ganancias en mercados con una tendencia evidente a través de un principio simple y eficaz de cruce de medias móviles. Sin embargo, la estrategia también tiene ciertas limitaciones, y se necesita continuar la prueba de optimización para que la estrategia sea más estable y eficiente.

Código Fuente de la Estrategia
/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-31 00:00:00
period: 1h
basePeriod: 15m
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/
// © Ta3MooChi
//@version=5
strategy("전략", overlay=true,process_orders_on_close = true, pyramiding = 100)

short_ma = ta.sma(close,input.int(3, "단기 이평", minval = 1))
long_ma = ta.sma(close, input.int(19,"장기 이평", minval = 1))

trend_ma = ta.sma(close, input.int(100," 추세 이평", minval = 20, group = "추세 이평"))
up_trend = (trend_ma > trend_ma[1])
use_trend_ma = input.bool(true, title = "추세용 이평 사용", group = "추세 이평" )
inTrendMa = not use_trend_ma or up_trend

useDateFilter = input.bool(true, title = "특정 기간 백테스트", group = "기간 백테스트")
backtestStartDate = input(timestamp("1 Jan 2021"), title = "시작날짜", group = "기간 백테스트")
backtestEndDate = input(timestamp("1 Jan 2022"), title = "종료날짜", group = "기간 백테스트")
inTradeWindow = true

longStopPerc = 1 + input.float(3, "최소수익률%", minval = 1)*0.01

longcondition = ta.crossover(short_ma, long_ma)
shortcondition = ta.crossunder(short_ma, long_ma)

if (longcondition) and inTradeWindow and inTrendMa
    strategy.entry("long", strategy.long)

if (shortcondition) and (close > strategy.position_avg_price*longStopPerc) and inTradeWindow
    strategy.close_all()

if not inTradeWindow and inTradeWindow[1]
    strategy.cancel_all()
    strategy.close_all(comment = "매매 종료")

plot(short_ma,color = color.yellow)
plot(long_ma,color = color.blue)
plot(trend_ma,color = color.gray)