La stratégie de conversion de la moyenne dynamique MACD (Moving Average Bull Bear Conversion Strategy) calcule les lignes DIFF et DEA de l'indicateur MACD pour déterminer si la tendance du marché s'est inversée, générant ainsi des signaux de trading.
La stratégie est principalement basée sur les lignes DIFF et DEA de l'indicateur MACD. MACD signifie Divergence de convergence moyenne mobile, composée des lignes DIFF, DEA et MACD. Parmi elles, DIFF représente la différence entre EMA à court terme et EMA à long terme, DEA est l'EMA de DIFF utilisé pour vérifier les signaux DIFF, et MACD représente la différence entre DIFF et DEA, utilisé pour identifier les divergences.
Lorsque le DIFF dépasse la DEA, cela signifie que la moyenne mobile à court terme commence à se renforcer et que le marché devient haussier. Lorsque le DIFF dépasse la DEA, cela suggère que la moyenne mobile à court terme devient faible et que le marché devient baissier. Par conséquent, cette stratégie est longue lorsque le DIFF dépasse la DEA et court lorsqu'il dépasse la DEA.
En outre, la stratégie intègre des filtres EMA de prix pour éviter de fausses ruptures. Elle ne va long que lorsque le DIFF dépasse la DEA et que le prix est inférieur au prix long précédent, et ne va court que lorsque le DIFF dépasse la DEA et que le prix est supérieur au prix court précédent.
La stratégie de conversion de la moyenne mobile MACD est une combinaison de l'indicateur MACD et des filtres de l'EMA des prix pour éviter les faux signaux générés uniquement par le MACD, améliorant ainsi les performances des transactions.
Les principaux avantages sont les suivants:
La stratégie de conversion des moyennes mobiles MACD est également sujette à certains risques:
Les principales façons d'optimiser les risques sont les suivantes:
La stratégie de conversion des moyennes mobiles MACD à la hausse peut être encore optimisée dans les dimensions suivantes:
La stratégie de conversion de la moyenne mobile taureau-ours MACD identifie l'entrée de marché haussière/baissière par les signaux croisés DIFF et DEA, et utilise des filtres EMA de prix pour éliminer les faux signaux, déterminant efficacement les points d'inversion de la tendance du marché.
/*backtest start: 2022-12-01 00:00:00 end: 2023-12-07 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("macd_strategy", shorttitle="macd", overlay=true, pyramiding=1, max_bars_back=5000, calc_on_order_fills = false, calc_on_every_tick=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, commission_type =strategy.commission.percent, commission_value=0.00075) [diff, dea, _] = macd(close, 12, 26, 7) dea_close = ema(diff, 3) price = ema(close, 9) plot(price) cross_over_price = na cross_over_signal = na cross_over_price := cross_over_price[1] cross_over_signal := cross_over_signal[1] cross_under_price = na cross_under_signal = na cross_under_price := cross_under_price[1] cross_under_signal := cross_under_signal[1] if (crossover(diff,dea)) cross_over_price := price[1] cross_over_signal := diff if (crossunder(diff,dea)) cross_under_price := price[1] cross_under_signal := diff if dea > 0 cross_over_price = na cross_over_signal = na else cross_under_price = na cross_under_signal = na if diff > 0 if cross_under_price > cross_under_price[1]*1 and cross_under_signal < cross_under_signal[1]*0.95 strategy.entry("S", strategy.short, comment="S") else if cross_over_price < cross_over_price[1]*1 and cross_over_signal > cross_over_signal[1]*0.95 strategy.entry("B", strategy.long, comment="B") // strategy.exit("exit_s", "S", stop = strategy.position_avg_price*1.05, when=strategy.position_size < 0) // strategy.exit("exit_b", "B", stop = strategy.position_avg_price*0.95, when=strategy.position_size > 0) strategy.close_all(when=(strategy.position_size < 0 and (dea < 0 or diff > cross_under_signal*1 or crossover(diff, dea)) or (strategy.position_size > 0 and (dea > 0 or diff < cross_over_signal*1 or crossunder(diff, dea)))))