La estrategia EMA 200 basada en el trailing take profit y el trailing stop loss es una estrategia de negociación que utiliza la EMA 200 como punto de referencia, combinada con los mecanismos de trailing stop loss y trailing take profit.
La estrategia primero calcula la EMA de 200 períodos como indicador para juzgar la tendencia general. Sólo va largo cuando el precio está por encima de la EMA 200 y sólo va corto cuando el precio está por debajo de la EMA 200, asegurando así el comercio en la dirección de la tendencia.
Después de ingresar al mercado, la estrategia utiliza el indicador ATR para calcular incrementos razonables de stop loss y take profit, que se suman al último máximo y último mínimo para formar el tren superior e inferior. Cuando el precio excede el tren superior, tome ganancias para órdenes largas; cuando el precio rompe el tren inferior, tome ganancias para órdenes cortas. A medida que el precio se mueve, los niveles de stop loss y take profit también se ajustarán dinámicamente, logrando así la pérdida de stop trailing y la ganancia de trailing.
La mayor ventaja de esta estrategia es evitar el comercio contra la tendencia al juzgar la tendencia con la EMA 200. Al mismo tiempo, los niveles de stop loss y take profit siguen el movimiento del precio para un stop loss y una take profit oportunos, controlando efectivamente los riesgos.
Además, el ATR stop loss and take profit es una evaluación de la volatilidad del mercado y puede establecer niveles razonables de stop loss y take profit, en lugar de ser demasiado flexible o demasiado agresivo.
En general, esta estrategia combina tendencia y stop loss/take profit, buscando obtener el máximo beneficio mientras se controlan los riesgos, por lo que es una estrategia muy equilibrada.
El principal riesgo de esta estrategia es que el EMA 200 puede no ser capaz de determinar con precisión la tendencia completamente, y podría haber falsas rupturas.
Además, aunque el ATR stop loss and take profit tiene alguna base científica y ventajas, todavía pueden ocurrir situaciones que exceden el rango de volatilidad normal.
Para mitigar estos riesgos, considere combinar otros indicadores para confirmar la tendencia y la volatilidad, como bandas de Bollinger, RSI, etc., para evitar señales erróneas.
La estrategia se puede optimizar en los siguientes aspectos:
Al probar diferentes parámetros, seleccionar mejores parámetros, agregar otros indicadores para el juicio, optimizar el mecanismo de stop loss y más, la estabilidad y la rentabilidad de la estrategia pueden mejorarse en gran medida.
La estrategia de stop loss y take profit basada en la EMA 200 juzga la tendencia general con la EMA y utiliza ATR calculado razonable stop loss / take profit para controlar los riesgos. Es una estrategia de negociación equilibrada con la ventaja de determinar la tendencia, trailing stop loss / profit y control de riesgos, pero también tiene ciertos riesgos de false breakout.
/*backtest start: 2023-12-08 00:00:00 end: 2024-01-07 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © ozgurhan //@version=5 strategy("EMA 200 Based Trailing Take Profit", overlay=true, margin_long=100, margin_short=100, default_qty_value=1, initial_capital=100) // EMA 200 tanımı ema200 = ta.ema(close, 200) // Orijinal long ve short koşulları longConditionOriginal = ta.crossover(ta.sma(close, 14), ta.sma(close, 28)) shortConditionOriginal = ta.crossunder(ta.sma(close, 14), ta.sma(close, 28)) // EMA 200'ün üzerinde ve altında long ve short koşulları longCondition = longConditionOriginal and close > ema200 shortCondition = shortConditionOriginal and close < ema200 if longCondition strategy.entry("Long", strategy.long, comment="Long", alert_message="Long") if shortCondition strategy.entry("Short", strategy.short, comment="Short", alert_message="Short") atr_length=input.int(7, title="ATR Length") atr_multiplier = input.float(1.5, title="ATR Multiplier") atr_multiplied = atr_multiplier * ta.atr(atr_length) ttp_top_bracket = strategy.position_size > 0 ? high[1] + atr_multiplied : na ttp_bottom_bracket = strategy.position_size < 0 ? low[1] - atr_multiplied : na plot(ttp_top_bracket, title="TTP Top Bracket", color=color.lime, style=plot.style_linebr, offset=1) plot(ttp_bottom_bracket, title="TTP Bottom Bracket", color=color.red, style=plot.style_linebr, offset=1) strategy.exit("Close Long", from_entry="Long", limit=ttp_top_bracket, alert_message="Close Long") strategy.exit("Close Short", from_entry="Short", limit=ttp_bottom_bracket, alert_message="Close Short")