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.
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.
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.
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.
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.
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.
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
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
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
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.
/*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)