Estrategia de tendencia bajista basada en EMA y retrocesos de Fibonacci


Fecha de creación: 2023-09-21 21:36:16 Última modificación: 2023-09-21 21:36:16
Copiar: 1 Número de Visitas: 827
1
Seguir
1617
Seguidores

Descripción general

Esta estrategia utiliza el indicador EMA para determinar la dirección de la tendencia y, en combinación con la recuperación de Fibonacci, determina automáticamente el punto de inflexión para lograr una venta baja y una venta alta y capturar la tendencia bajista. La estrategia opera con frecuencia y es adecuada para operaciones en línea corta.

Principio de estrategia

  1. Utiliza el EMA de 9 días y el EMA de 21 días para formar el forquillo dorado y determinar la dirección de la tendencia. El EMA de 21 días a través del EMA de 55 días se considera una señal de inicio de tendencia bajista.

  2. Configuración de un indicador de retracción de Fibonacci adaptado a la longitud de 100 ciclos para determinar automáticamente el porcentaje de retracción clave en función de la amplitud de las fluctuaciones de precios recientes.

  3. Cuando el precio supera la retracción de Fibonacci de 0.236, se considera una señal de reversión y se mantiene la posición en la posición de liquidación.

  4. Cuando el 9o EMA está por debajo del 21o EMA, y el precio está por debajo del máximo de Fibonacci adaptado, se hace una entrada en blanco.

  5. La condición de salida de la ganancia múltiple es romper el EMA de 200 días. La condición de salida de la parada de pérdidas aéreas es romper la retracción de Fibonacci de 0.236.

Ventajas estratégicas

  • Utiliza EMA para determinar la dirección de la tendencia, las señales de operación son simples y claras

  • Adaptación a la retirada de Fibonacci sin necesidad de determinar manualmente los parámetros

  • Las operaciones de la estrategia son frecuentes, pueden capturar cambios en la línea corta y implementar políticas de alta frecuencia

  • Utiliza puntos de retiro clave para determinar la reversión y detener los daños a tiempo

  • Parámetros configurables, estrategias de optimización para adaptarse a diferentes ciclos

Riesgo estratégico

  • El retraso de los indicadores de la EMA debe ser confirmado por otros indicadores combinados

  • Adaptación a Fibonacci puede ser sobre-optimizada, el punto de retracción es inestable

  • Las transacciones de alta frecuencia aumentan los costos de transacción y los costos de deslizamiento

  • No se puede filtrar la tendencia de las convulsiones, hay demasiadas señales falsas

  • La gestión de retiros y el control de la relación de ganancias y pérdidas deben mejorarse

Dirección de optimización de la estrategia

  • Incrementar el indicador de energía y evitar la señal errónea causada por la desviación del precio de la cantidad

  • Optimización de los parámetros del ciclo EMA para que se ajusten mejor al entorno actual del mercado

  • Configuración de pérdidas dinámicas para un mejor control de los riesgos

  • Indicadores de tendencias fuertes y débiles para evitar repeticiones de operaciones en tiempos de crisis

  • Tener en cuenta el impacto de los costos reales de las transacciones y establecer un límite mínimo de fluctuación

Resumir

Esta estrategia utiliza EMA para determinar la dirección de la tendencia y utiliza la dinámica de retroceso de Fibonacci de adaptación para determinar el punto de inflexión y se adapta automáticamente a los diferentes cambios en el mercado. Sin embargo, la estrategia depende más de los indicadores, carece de segmentación de tendencia y lógica de juicio de ondas, con un gran espacio para la optimización. En general, como una estrategia de comercio de línea corta de alta frecuencia, puede capturar cambios de precios más rápidos, pero requiere que los comerciantes asuman el riesgo que conlleva el paro frecuente de pérdidas y la prevención de exceso de comercio.

Código Fuente de la Estrategia
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 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/
// © CheatCode1

//@version=5
strategy("CC-Trend strategy 2", overlay=true, initial_capital = 10000, commission_type = strategy.commission.percent, commission_value = 0.01, default_qty_type =  strategy.percent_of_equity, default_qty_value = 100 )
ema9 = ta.ema(close, 9)
ema21 = ta.ema(close, 21)
ema55 = ta.ema(close, 55)
ema200 = ta.ema(close, 200)


plot(ema200, '22', color.blue, 2)

FibL = input.int(100, 'Fibonacci Length', 1, 500, group = 'Automatic Fibonacci Retracement')
len1 = input.int(1, 'Show Last', 0, 1000, group = 'Automatic Fibonacci Retracement')
len2 = input.int(5, 'Offset Length', 0, 1000, group = 'Automatic Fibonacci Retracement')

highF = ta.highest(ema55 >= ema9 ? ema55:ema9, FibL)
lowF = ta.lowest(ema55 >= ema9 ? ema9:ema55, FibL)
AvgFib = highF - lowF

//Fibonacci Executions
LL2 = highF + .618 * AvgFib
LL1 = highF + .272 * AvgFib
L1 = highF
L236 = highF - 0.236 * AvgFib
L382 = highF - 0.382 * AvgFib
Mid =  highF - 0.50 * AvgFib
S382 = lowF + 0.382 * AvgFib
S236 = lowF + 0.236 * AvgFib
S1 = lowF
SS1 = lowF - .272 * AvgFib
SS2 = lowF - .618 * AvgFib
//Fibonacci Plot's


high2FP = plot(LL2, 'Highe2', color.red,offset = len2, show_last = len1, trackprice = true)
high1FP = plot(LL1, 'Highe1', color.red,offset = len2, show_last = len1, trackprice = true)
highFP = plot(highF, 'High', color.red,offset = len2, show_last = len1, trackprice = true)
L236P = plot(L236, "0.764", #ED381C, offset = len2, show_last = len1, trackprice = true )
L382P = plot(L382, "0.618", color.white,offset = len2, show_last = len1, trackprice = true )
MidP = plot(Mid, "0.5", color.orange,offset = len2, show_last = len1, trackprice = true )
S382P = plot(S382, "0.382", color.yellow ,offset = len2, show_last = len1, trackprice = true)
S236P = plot(S236, "0.236", color.lime ,offset = len2, show_last = len1, trackprice = true)
lowFP = plot(lowF, 'Low', color.green,offset = len2, show_last = len1, trackprice = true)
low1FP = plot(SS1, 'Lowe1', color.green,offset = len2, show_last = len1, trackprice = true)
low2FP = plot(SS2, 'Lowe2', color.green,offset = len2, show_last = len1, trackprice = true)

plot(ema9, '22', color.yellow, 2)

plot(ema55, '55', color.aqua, 2)

plot(ema200, '200', color.maroon, 2)



shortCondition = close[1] < highF and ema21 < ema55
if (shortCondition)
    strategy.entry("Short", strategy.short)

shorttp = ta.crossover(close, ema200) and strategy.openprofit >= 0
if (shorttp)
    strategy.close('Short', 'Short TP', qty_percent = 100)

shortclose2 = close[1] > L236 and not (shortCondition) 
if(shortclose2)
    strategy.close('Short', 'Short RM', qty_percent = 100)