
Cette stratégie est une stratégie de trading inversée dynamique basée sur l’indicateur MACD. Elle génère l’indicateur MACD en calculant la différence entre les moyennes mobiles rapides et les moyennes mobiles lentes.
L’indicateur central de cette stratégie est le MACD, composé d’une moyenne mobile rapide, d’une moyenne mobile lente et d’une ligne de signaux. On calcule d’abord l’EMA rapide et l’EMA lente, en fixant les paramètres de l’EMA rapide à 12 jours et de l’EMA lente à 26 jours, puis on calcule la différence entre les deux en tant qu’indicateur MACD.
Pour filtrer le bruit, cette stratégie introduit l’indicateur de ligne de signal, pour un traitement plus lisse du MACD. Le paramètre de ligne de signal est réglé sur l’EMA de 9 jours. Enfin, le différentiel entre le MACD et la ligne de signal est calculé comme un signal de transaction.
Les principaux avantages de cette stratégie sont les suivants:
L’indicateur MACD est utilisé pour déterminer les points de retournement des cours des actions et pour saisir les opportunités de retournement des cours des actions à court terme.
Le traitement de la ligne de signaux en douceur permet de filtrer une partie du signal de transaction bruyant et de réduire les faux signaux.
Les paramètres de la stratégie sont réglables librement, permettant aux traders d’ajuster les paramètres en fonction de la situation réelle et de répondre de manière flexible aux changements du marché.
La logique de calcul est simple et claire, facile à comprendre, adaptée aux débutants dans l’apprentissage de la recherche.
La combinaison des indicateurs et des signaux est variée, la stratégie peut être optimisée et l’expansion est très forte.
Cette stratégie comporte aussi des risques:
La fréquence et le coût des transactions peuvent être augmentés en raison du suivi des fluctuations à court terme des cours des actions.
L’indicateur MACD est susceptible de produire de faux signaux dans le cadre d’une hausse ou d’une baisse unilatérale à long terme des cours des actions.
Si le paramètre est incorrect, le signal est retardé et peut manquer le meilleur point d’entrée.
La stratégie est simple, et les effets de la transaction sont réduits dans des conditions de marché complexes.
Les risques mentionnés ci-dessus peuvent être améliorés par:
Optimiser les paramètres pour réduire la fréquence des transactions. Par exemple, augmenter les paramètres de cycle de la ligne de signal.
Ajouter des conditions de filtrage pour éviter d’être pris au piège dans les tendances à long terme. Par exemple, en combinant avec d’autres indicateurs de suivi pour juger des tendances à court terme.
Utilisez des listes de prix pour suivre les meilleurs prix.
L’ajout d’autres facteurs pour juger de l’état du marché, afin d’éviter de négocier sur des marchés anormaux.
Cette stratégie peut être optimisée dans les domaines suivants:
Optimiser les paramètres MACD et les paramètres de ligne de signal pour trouver la meilleure combinaison de paramètres.
Ajouter d’autres indicateurs auxiliaires pour juger des tendances à court et à long terme et éviter les transactions à contre-courant. Par exemple, ajouter des indicateurs de moyennes mobiles, des indicateurs de bandes de Bollinger, etc.
Combinez les indicateurs de volume de transactions, tels que l’indicateur de marée énergétique, pour éviter les fausses percées.
Les paramètres sont regroupés en fonction des caractéristiques des différentes actions, ce qui rend la stratégie plus adaptable.
Augmentation de la fixation des prix stop-loss et stop-limit, et contrôle des niveaux de pertes et de bénéfices individuels.
Évaluer la qualité des actions, par exemple les indicateurs financiers, les changements de notation, etc., et sélectionner des pools d’actions de qualité.
Ces initiatives d’optimisation peuvent améliorer la stabilité, la rentabilité et le niveau de rentabilité de la stratégie. Elles constituent également une base pour le développement et l’amélioration continus de la stratégie.
Cette stratégie est une stratégie typique de trading de revers à court terme. Elle utilise un indicateur simple et clair du MACD pour refléter les variations de la dynamique des actions et est complétée par une ligne de signal pour déterminer le point d’entrée spécifique. Avec les paramètres appropriés, il est possible de saisir les opportunités de revers à court terme et de tirer un profit supplémentaire.
Bien sûr, aucun indicateur unique et aucune stratégie simple ne s’adaptent parfaitement à une variété de situations de marché complexes. Les investisseurs doivent être attentifs aux risques, choisir des stratégies en fonction de leur situation et de leurs préférences en matière de risque, tout en restant constamment attentifs aux conditions du marché, à l’optimisation des paramètres de la stratégie et des règles de négociation.
/*backtest
start: 2023-11-20 00:00:00
end: 2023-12-20 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//study(title="MACD Strategy by Sedkur", shorttitle="MACD Strategy by Sedkur")
strategy (title="MACD Strategy by Sedkur", shorttitle="MACD Strategy by Sedkur")
// Getting inputs
dyear = input(title="Year", type=input.integer, defval=2017, minval=1950, maxval=2500)
fast_length = input(title="Fast Length", type=input.integer, defval=12)
slow_length = input(title="Slow Length", type=input.integer, defval=26)
buyh = input(title="Buy histogram value", type=input.float, defval=0.0, minval=-1000, maxval=1000, step=0.1)
sellh = input(title="Sell histogram value", type=input.float, defval=0.0, minval=-1000, maxval=1000, step=0.1)
src = input(title="Source", type=input.source, defval=close)
signal_length = input(title="Signal Smoothing", type=input.integer, minval = 1, maxval = 50, defval = 9)
sma_source = input(title="Simple MA(Oscillator)", type=input.bool, defval=false)
sma_signal = input(title="Simple MA(Signal Line)", type=input.bool, defval=false)
// Plot colors
col_grow_above = #26A69A
col_grow_below = #FFCDD2
col_fall_above = #B2DFDB
col_fall_below = #EF5350
col_macd = #0094ff
col_signal = #ff6a00
// Calculating
fast_ma = sma_source ? sma(src, fast_length) : ema(src, fast_length)
slow_ma = sma_source ? sma(src, slow_length) : ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal ? sma(macd, signal_length) : ema(macd, signal_length)
hist = macd - signal
plot(hist, title="Histogram", style=plot.style_columns, color=(hist>=0 ? (hist[1] < hist ? col_grow_above : col_fall_above) : (hist[1] < hist ? col_grow_below : col_fall_below) ), transp=0 )
plot(macd, title="MACD", color=col_macd, transp=0)
plot(signal, title="Signal", color=col_signal, transp=0)
strategy.entry("buy", strategy.long, comment="buy", when = hist[1] <= hist and buyh<=hist and year>=dyear)
strategy.entry("sell", strategy.short, comment="sell", when = hist[1] >= hist and sellh>=hist and year>=dyear)