Esta estrategia combina las EMA de 8 días, 13 días, 21 días y 55 días y genera señales largas y cortas cuando se produce un cruce entre ellas, con el objetivo de captar las tendencias a medio y largo plazo.
Las EMA de 8 días, 13 días, 21 días y 55 días se calcularán.
Cuando los EMA de 8 días, 13 días y 21 días se cruzan por encima del EMA de 55 días, se activa la señal larga.
Cuando las EMA de 8 días, 13 días y 21 días cruzan todas por debajo de la EMA de 55 días, se activa la señal corta.
Ir largo en la cruz dorada, ir corto en la cruz de la muerte.
Posición cercana en el cruce de marcha atrás.
Múltiples combinaciones de EMA eficaces para filtrar las falsas rupturas.
La EMA de 55 días como ancla evita quedar atrapado.
La prueba de retroceso muestra rendimientos anuales constantes en los últimos 10 años.
Cruce visual, fácil de operar, para principiantes.
Es posible que los parámetros fijos no se adapten a todos los productos y mercados, por lo que se necesita una optimización independiente.
Ineficaz en mercados variados, corre el riesgo de problemas y paradas frecuentes.
No hay stop loss incapaz de limitar la pérdida de una sola operación.
La frecuencia de comercio puede ser demasiado alta o baja, se necesita ajustar los parámetros.
La muestra de 10 años es limitada, necesitamos datos más grandes para verificar la robustez.
Prueba las combinaciones de periodos de EMA para encontrar la mejor coincidencia.
Agregue el filtro de volumen para evitar falsos brotes.
Implementar un stop loss fijo o móvil.
Optimizar el tamaño de las posiciones para reducir el riesgo por operación.
Cambia tanto el lado largo como el corto.
Ampliar las pruebas en más productos y un plazo más largo.
Esta estrategia identifica las tendencias a medio y largo plazo utilizando cruces EMA de manera visual intuitiva. Las fortalezas son la visibilidad y la simplicidad. Pero los parámetros necesitan más optimización y carecen de control de riesgos. Se deben introducir más indicadores técnicos para filtrar señales y paradas agregadas para limitar las pérdidas. También requiere grandes pruebas de muestra a través de productos y tiempo para refinar y verificar, para convertirse en un sistema robusto de seguimiento de tendencias.
/*backtest start: 2023-08-21 00:00:00 end: 2023-09-20 00:00:00 period: 6h 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/ // © ColinMccann18 //@version=4 // +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ // --------------------------------------------------------------RULES------------------------------------------------------------------------------ // - VISUALLY REPRESENTS THE CROSSING OF 8,13,21,55 EMA'S FROM KROWNS PROGRAM strategy(title="CM EMA Trend Cross STRAT", shorttitle="CM EMA Strat", overlay=true) ema8 = ema(close,8) ema13 = ema(close, 13) ema21 = ema(close, 21) ema55 = ema(close, 55) //PLOT plot(ema8, title="EMA 1",linewidth=2, color=#00eeff) plot(ema13, title="EMA 2",linewidth=2, color=#fff900) plot(ema21, title="EMA 3",linewidth=2, color=#42ff0f) plot(ema55, title="EMA 4",linewidth=2, color=#8b49ff) //LOGIC--------------------------------------------------------------------------------------------------------------------------------- emacrossover = crossover(ema21, ema55) and ema8 and ema13 > ema55 emacrossunder = crossunder(ema21, ema55) and ema8 and ema13 < ema55 //Long---------------------------------------------------------------------------------------------------------------------------------- longCondition = emacrossover closelongCondition = emacrossunder strategy.entry("Long", strategy.long, qty=na, when=longCondition) strategy.close("Close Long", when=closelongCondition) //Short---------------------------------------------------------------------------------------------------------------------------------- shortCondition = emacrossunder closeshortCondition = emacrossover strategy.entry("Short", strategy.short,qty=na, when=shortCondition) strategy.close("Close Short", when=closeshortCondition)