Tendencia siguiendo la estrategia basada en el cruce de la EMA

El autor:¿ Qué pasa?, Fecha: 15 de septiembre de 2023 11:51:34
Las etiquetas:

Este artículo explica en detalle una estrategia de seguimiento de tendencias que utiliza el cruce de la EMA para generar señales comerciales.

I. Lógica de la estrategia

Las reglas básicas son:

  1. Configurar una EMA rápida y una EMA lenta, con una EMA rápida para la sensibilidad al cambio de precios y una EMA lenta para la tendencia.

  2. En el caso de los valores de la EMA, el valor de los valores de la EMA debe ser el valor de los valores de la EMA, y el valor de los valores de la EMA debe ser el valor de la EMA.

  3. Establecer el coeficiente de EMA cuando el período lento sea ≥ 3 veces el período rápido, para reducir las falsas señales.

  4. Opción para el modo largo solo para evitar operaciones contra tendencia.

  5. Período de prueba posterior personalizable para la optimización de parámetros.

Al ajustar los parámetros de la EMA, se puede equilibrar la sensibilidad y la estabilidad para capitalizar las tendencias.

II. Ventajas de la Estrategia

La mayor ventaja es la simplicidad para la facilidad de uso, adecuada para los comerciantes con tiempo limitado.

Otra ventaja es la capacidad de reducir las flechas a través de la optimización de parámetros.

Por último, el modo largo solo evita operaciones contra tendencia y se adapta a ciertos mercados como las acciones.

III. Posibles debilidades

Sin embargo, existen algunos problemas:

En primer lugar, las EMA tienen inherentemente retrasos de emisión, causando entradas óptimas perdidas.

En segundo lugar, las configuraciones incorrectas pueden filtrar en exceso causando operaciones perdidas.

Por último, los mecanismos de stop loss y take profit necesitan mejoras.

IV. Resumen

En resumen, este artículo ha explicado una estrategia de seguimiento de tendencias basada en los cruces de la EMA. Su objetivo es mejorar la robustez ajustando los parámetros de la EMA. Con reglas simples y claras, es fácil de implementar, pero los riesgos como el retraso de la EMA necesitan prevención.


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

//@version=4
// 
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © gregoirejohnb
//
// Moving average crossover systems measure drift in the market. They are great strategies for time-limited people.
// So, why don't more people use them?
// 
// I think it's due to poor choice in choosing EMA lengths: Market Wizard Ed Seykota has a guideline for moving average crossovers: the slow line should be at least 3x the fast line.
// This removes a lot of the whipsaws inherent in moving average systems, which means greater profitability.
// His other piece of advice: long-only strategies are best in stock markets where there's a lot more upside potential.
//
// Using these simple rules, we can reduce a lot of the whipsaws and low profitability trades! This strategy was made so you can see for yourself before trading.
//
// === HOW TO USE THIS INDICATOR ===
// 1) Choose your market and timeframe.
// 2) Choose the length.
// 3) Choose the multiplier.
// 4) Choose if the strategy is long-only or bidirectional. 
//
// Don't overthink the above! We don't know the best answers, that's why this strategy exists! We're going to test and find out.
//  After you find a good combination, set up an alert system with the default Exponential Moving Average indicators provided by TradingView.
//
// === TIPS ===
// Increase the multiplier to reduce whipsaws (back and forth trades).
// Increase the length to take fewer trades, decrease the length to take more trades.
// Try a Long-Only strategy to see if that performs better.
//
strategy(title="EMA Crossover Strategy", shorttitle="EMA COS", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=10, currency=currency.USD,commission_type=strategy.commission.percent,commission_value=0.1)

// === GENERAL INPUTS ===
//strategy start date
start_year = input(defval=2020, title="Backtest Start Year")

// === LOGIC ===
length = input(type=input.integer,defval=20,minval=1,title="Length")
ratio = input(type=input.integer,defval=3,title="Multiplier (3x length, 4x length, etc)",options=[3,4,5,6,7,8,9,10])
longOnly = input(type=input.bool,defval=false,title="Long Only")
fast = ema(hl2,length)
slow = ema(hl2,length * ratio)
plot(fast,linewidth=2,color=color.orange,title="Fast")
plot(slow,linewidth=2,color=color.blue,title="Slow")

longEntry = crossover(fast,slow)
shortEntry = crossunder(fast,slow)

plotshape(longEntry ? close : na,style=shape.triangleup,color=color.green,location=location.belowbar,size=size.small,title="Long Triangle")
plotshape(shortEntry and not longOnly ? close : na,style=shape.triangledown,color=color.red,location=location.abovebar,size=size.small,title="Short Triangle")
plotshape(shortEntry and longOnly ? close : na,style=shape.xcross,color=color.black,location=location.abovebar,size=size.small,title="Exit Sign")

// === STRATEGY - LONG POSITION EXECUTION ===
enterLong() =>
    crossover(fast,slow) and 
       time > timestamp(start_year, 1, 1, 01, 01)
exitLong() =>
    longOnly and crossunder(fast,slow)
strategy.entry(id="Long", long=strategy.long, when=enterLong())
strategy.close(id="Long", when=exitLong())
// === STRATEGY - SHORT POSITION EXECUTION ===
enterShort() =>
    not longOnly and crossunder(fast,slow) and 
       time > timestamp(start_year, 1, 1, 01, 01)
exitShort() =>
    false
strategy.entry(id="Short", long=strategy.short, when=enterShort())
strategy.close(id="Short", when=exitShort())

Más.