En este artículo se detalla una estrategia de seguimiento de tendencias que utiliza el cruce de la línea media de la EMA para formar señales de negociación. La estrategia optimiza la combinación de parámetros de la línea media para mejorar la estabilidad de la estrategia.
El principio de la estrategia
La estrategia sigue principalmente las siguientes reglas centrales:
Configuración de EMA de línea rápida y EMA de línea lenta, cambio de precio de reacción de la línea rápida, tendencia de juicio de la línea lenta;
En la línea rápida, se hace más de lo que se hace en la línea lenta, y en la línea baja, se hace más de lo que no se hace.
Configurar la proporción de los parámetros EMA con un ciclo de línea lenta ≥ 3 veces el de la línea rápida para reducir las señales falsas;
Se puede optar por hacer solo múltiples modos, evitando el comercio en contra.
Se pueden personalizar los ciclos de retroalimentación para las pruebas de optimización de parámetros.
Al ajustar los parámetros de la línea media de la EMA, se puede aumentar la estabilidad y bloquear las oportunidades de negociación de tendencia, mientras se mantiene la sensibilidad.
Dos, las ventajas estratégicas
La mayor ventaja de esta estrategia es que las reglas son simples, fáciles de implementar y adecuadas para los operadores con un tiempo limitado.
Otra ventaja es que se puede reducir la frecuencia de las transacciones no válidas a través de la optimización de parámetros.
Finalmente, se puede optar por hacer solo múltiples modos, sin necesidad de negociar en contra, adecuado para variedades como el mercado de valores.
Tercero, el riesgo potencial.
Pero la estrategia también tiene sus problemas:
En primer lugar, la propia línea media de la EMA tiene problemas de retraso y podría perderse el punto óptimo.
En segundo lugar, la configuración incorrecta de los parámetros puede causar filtros excesivos en las hojas de fuga.
Por último, el mecanismo de detención de pérdidas debe ser mejorado y optimizado.
Cuatro contenido, resumen
Este artículo detalla una estrategia de negociación de tendencias basada en el cruce de la línea media de la EMA. Se trata de una estrategia de negociación de tendencias basada en el cruce de la línea media de la EMA.
/*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())