
La stratégie consiste à calculer les moyennes mobiles de l’indice EMA et l’indice MACD, en combinant les signaux croisés des deux pour juger de l’entrée et de la sortie. Faites plus lorsque le prix traverse la ligne EMA et la ligne MACD sur la ligne de signal et faites moins lorsque le prix traverse la ligne EMA et la ligne MACD sur la ligne de signal.
La stratégie utilise les moyennes mobiles de l’indice EMA pour juger de la direction de la tendance actuelle. Elle utilise également les croisements bi-équivalents de l’indicateur MACD pour générer des signaux d’achat et de vente. Le signal de la fourche dorée du MACD n’est jugé que lorsque le prix franchit la ligne EMA. Cela permet d’éviter les faux signaux.
Cette stratégie est basée sur les avantages de la stratégie de négociation en moyenne mobile par rapport à la stratégie de négociation en MACD. Les moyennes mobiles permettent de mieux juger de la direction de la tendance. La croisée des lignes rapides et lentes de l’indice MACD avec une moyenne mobile lisse peut indiquer des points d’achat et de vente.
Cette stratégie, combinée à la double évaluation des indicateurs EMA et MACD, permet de filtrer efficacement certains signaux erronés et d’améliorer la qualité des signaux. En même temps, l’EMA évalue la tendance principale et le MACD évalue le point d’achat et de vente spécifique.
En outre, la stratégie ne prend en compte les signaux MACD que lorsque le prix franchit la ligne moyenne EMA, ce qui évite les erreurs de trading dans des conditions de choc. Cela renforce également la stabilité de la stratégie.
Le risque principal de cette stratégie réside dans la configuration des paramètres. Si les paramètres de l’EMA et du MACD sont mal configurés, le signal sera manqué ou un faux signal sera produit. En outre, si la tendance du marché se retourne, la stratégie entraînera des pertes.
Pour réduire le risque, il convient d’ajuster les paramètres de manière à ce que les paramètres de l’EMA et du MACD correspondent au cycle actuel du marché. Il est également recommandé d’utiliser des arrêts de perte pour contrôler les pertes individuelles.
Cette stratégie peut être optimisée dans les domaines suivants:
Optimisation dynamique des paramètres, permettant aux paramètres de l’EMA et du MACD de s’adapter aux conditions et cycles en temps réel pour assurer leur validité
Ajout d’autres combinaisons d’indicateurs, tels que le canal BOLL ou l’indicateur KD, pour enrichir le signal stratégique
Optimiser automatiquement les paramètres de la stratégie à l’aide de méthodes d’apprentissage automatique et les ajuster en fonction des résultats des retours
Déterminez l’intensité de la direction lors d’une rupture de la ligne moyenne de l’EMA pour éviter une fausse rupture
Augmentation des stratégies de stop-loss pour verrouiller les bénéfices et réduire les pertes
Cette stratégie de quantification croisée équilibrée, combinée à des indices doubles EMA et MACD, peut produire efficacement un signal de haute qualité. L’optimisation des paramètres, l’ajout d’un stop loss, l’ajout d’autres indicateurs peuvent améliorer la stabilité et la rentabilité de la stratégie.
/*backtest
start: 2022-12-15 00:00:00
end: 2023-12-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("LONERTESTV2", overlay=true)
// Input definitions
fastLength = input(12, title="Fast Length")
slowlength = input(26, title="Slow Length")
MACDLength = input(9, title="MACD Length")
emaLength = input(13, title="EMA Length")
//smaLength = input(200, title="SMA Length")
// SMA Indicator - Are we in a Bull or Bear market according to 200 SMA?
//SMA = ta.ema(close, smaLength)
// EMA Indicator - Are we in a rally or not?
EMA = ta.ema(close, emaLength)
// MACD Indicator - Is the MACD bullish or bearish?
MACD = ta.ema(close, fastLength) // - ta.ema(close, slowlength)
aMACD = ta.ema(MACD, MACDLength)
delta = MACD - aMACD
// Set Buy/Sell conditions
buy_entry = close > EMA and delta > 5 ? true : close > EMA and delta > -5
sell_entry = close < EMA and delta < -5 ? true : close < EMA and delta < 5
if buy_entry
strategy.entry(id='EL', direction=strategy.long)
if sell_entry
strategy.entry(id='ES', direction=strategy.short)
// strategy.entry("Buy", strategy.long)
// strategy.entry("Sell", strategy.short)