Il atteint son objectif de profit à la fin de la journée.
Sortie courte:Fermer <= 200 EMA et atteindre l'objectif de profit à la fin de la journée
Le stop loss est de 20% de la prime d'option.
II. Avantages
Les principaux avantages de cette stratégie sont les suivants:
III. Les risques
Les principaux risques de cette stratégie sont les suivants:
Les aspects suivants peuvent être optimisés pour réduire les risques susmentionnés:
IV. Directions d'optimisation
Les principales orientations d'optimisation de cette stratégie sont les suivantes:
V. Conclusion
Cet article a analysé en détail la logique, les forces, les faiblesses et les directions d'optimisation de la stratégie de suivi de tendance basée sur la distance entre le prix et la moyenne mobile de 200 jours. Cette stratégie juge la tendance à moyen et long terme en suivant l'écart de prix par rapport à la moyenne mobile à long terme. Les positions sont établies lorsque l'écart dépasse un seuil et fermées lors de l'atteinte des objectifs de stop loss ou de profit. Cette stratégie peut bien suivre la tendance à moyen et long terme, mais a encore une certaine marge d'optimisation des paramètres. Des améliorations futures peuvent être apportées à partir de plusieurs perspectives pour rendre la stratégie plus robuste dans différentes conditions de marché.
/*backtest start: 2024-02-22 00:00:00 end: 2024-02-24 06:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Intraday Price Away from 200 EMA Strategy", overlay=true) // Define inputs emaPeriod = input(200, title="EMA Period") thresholdPercent = input(0.75, title="Threshold Percent", minval=0) // Define the threshold percentage // Calculate 200 EMA ema = ema(close, emaPeriod) // Calculate distance from 200 EMA as a percentage distance_percent = ((close - ema) / ema) * 100 // Track average entry price var float avgEntryPrice = na // Buy conditions buy_condition = close < ema and abs(distance_percent) >= thresholdPercent and close[1] < close[2] // Exit conditions for buy exit_buy_condition = close >= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) <= close // Sell conditions sell_condition = close > ema and abs(distance_percent) >= thresholdPercent and close[1] > close[2] // Exit conditions for sell exit_sell_condition = close <= ema or time_close(timeframe.period) or (avgEntryPrice * 1.5) >= close // Execute buy and sell orders only if there are no open trades if strategy.opentrades == 0 strategy.entry("Buy", strategy.long, when=buy_condition) strategy.entry("Sell", strategy.short, when=sell_condition) // Update average entry price for buy condition if buy_condition avgEntryPrice := close // Update average entry price for sell condition if sell_condition avgEntryPrice := close // Close buy position if exit condition is met strategy.close("Buy", when=exit_buy_condition) // Close sell position if exit condition is met strategy.close("Sell", when=exit_sell_condition) // Plot 200 EMA plot(ema, color=color.blue, linewidth=2) // Plot buy and sell signals plotshape(buy_condition, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small) plotshape(sell_condition, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)