Cette stratégie combine les lignes EMA, l'indicateur MACD et le gain sur une journée pour identifier les signaux de percée du marché et mettre en œuvre une stratégie de trading dynamique pour acheter à bas prix et vendre à haut prix.
Lorsque la ligne EMA rapide traverse la ligne EMA lente, on considère que le marché est en tendance haussière et un signal d'achat est généré.
En outre, si le prix de clôture d'une journée augmente de plus de 10% par rapport au prix d'ouverture, un signal d'achat sera également généré pour suivre la tendance de rupture du marché.
Après l'ouverture des positions, si le prix chute de plus de 10%, le stop loss sera déclenché.
Il s'agit d'une stratégie de suivi de tendance typique qui peut capturer la tendance haussière après une forte percée de l'élan, avec un grand potentiel de profit.
Bien qu'il ait été conçu de manière raisonnable, certains risques subsistent:
Pour réduire les risques ci-dessus, nous pouvons envisager d'optimiser la stratégie de stop loss en mouvement ou d'ajouter d'autres indicateurs tels que le volume aux signaux filtrés.
Il y a encore une marge d'optimisation:
La stabilité et la rentabilité de cette stratégie peuvent être considérablement améliorées grâce à l'ajustement des paramètres, à la combinaison des indicateurs et à d'autres méthodes.
En général, cette stratégie est simple, pratique et avec un grand potentiel de profit. En jugeant les points de rupture du marché, elle peut capturer efficacement les tendances haussières et le contrôle de la baisse est également raisonnable. Dans l'optimisation future, l'amélioration continue de l'ajustement des paramètres et la conception stop loss / take profit peuvent en faire une stratégie de trading quantitative à long terme rentable.
/*backtest start: 2023-01-11 00:00:00 end: 2024-01-17 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Alt Coins", overlay=true) //Simple Alt Coin Trading Strategy// // by @ShanghaiCrypto // ////EMA//// fastLength = input(5) slowLength = input(12) baseLength = input(50) price = close emafast = ema(price, fastLength) emaslow = ema(price, slowLength) emabase = ema(price, baseLength) ///MACD//// MACDLength = input(9) MACDfast = input(12) MACDslow = input(26) MACD = ema(close, MACDfast) - ema(close, MACDslow) aMACD = ema(MACD, MACDLength) delta = MACD - aMACD ////PUMP//// OneCandleIncrease = input(10, title='Gain %') pump = OneCandleIncrease/100 ////Profit Capture and Stop Loss////// stop = input(10.0, title='Stop Loss %', type=float)/100 profit = input(45.0, title='Profit %', type=float)/100 stop_level = strategy.position_avg_price * (1 - stop) take_level = strategy.position_avg_price * (1 + profit) ////Entries///// if crossover(emafast, emaslow) strategy.entry("Cross", strategy.long, comment="BUY") if (crossover(delta, 0)) strategy.entry("MACD", strategy.long, comment="BUY") if close > (open + open*pump) strategy.entry("Pump", strategy.long, comment="BUY") /////Exits///// strategy.exit("SELL","Cross", stop=stop_level, limit=take_level) strategy.exit("SELL","MACD", stop=stop_level, limit=take_level) strategy.exit("SELL","Pump", stop=stop_level, limit=take_level) ////Plots//// plot(emafast, color=green) plot(emaslow, color=red) plot(emabase, color=yellow) plot(take_level, color=blue) plot(stop_level, color=orange)