La stratégie de trading composite multi-indicateur intègre quatre indicateurs majeurs: la divergence de convergence moyenne mobile (MACD), l'indice de force relative (RSI), l'indice de canal de marchandises (CCI) et l'indice de force relative stochastique (StochRSI).
Cette stratégie élabore principalement des jugements basés sur quatre indicateurs:
MACD: Calcule la différence entre les moyennes mobiles rapides et lentes pour juger de l'élan et des tendances des prix. Un signal d'achat est généré lorsque la ligne rapide traverse au-dessus de la ligne lente.
RSI: Calcule l'ampleur des variations de prix sur une période de temps. Un RSI supérieur à 70 indique des conditions de surachat et inférieur à 30 de survente. Cette stratégie utilise 70 et 30 comme seuils.
CCI: mesure la dynamique des prix en calculant l'écart en pourcentage du prix par rapport à sa moyenne mobile.
StochRSI: Combine le stochastique et le RSI. Une croix dorée entre les lignes StochRSI %K et %D indique un achat, tandis qu'une croix de mort indique une vente.
Ce n'est que lorsque les quatre indicateurs répondent simultanément aux critères qu'un signal d'achat ou de vente réel sera généré.
Les principaux avantages de cette stratégie multi-indicateurs sont les suivants:
Filtre les faux signaux en exigeant l'accord de tous les indicateurs, en évitant de poursuivre les sommets ou de paniquer les bas de vente.
Capture les principales tendances à travers différentes dimensions en combinant différentes perspectives d'indicateurs.
Un grand espace d'optimisation des paramètres pour ajuster chaque indicateur pour une performance globale optimale.
Les pondérations peuvent être ajustées en fonction des marchés haussiers ou baissiers pour se concentrer sur les stratégies de tendance ou de réversion moyenne.
Les principaux risques sont les suivants:
Les indicateurs peuvent générer simultanément de faux signaux, déclenchant des transactions incorrectes.
Les prix peuvent bouger assez violemment pour des faux signaux simultanés entre les indicateurs.
Des signaux d'achat retardés à mesure que les indicateurs s'alignent.
Difficile d'optimiser de nombreux paramètres, peut-être en surpoids.
Les atténuations comprennent le réglage des paramètres, les arrêts de perte et le contrôle de la dimension de position.
Possibilités d'amélioration:
Testez des combinaisons avec plus d'indicateurs comme KD, Bollinger Bands pour trouver un portefeuille optimal.
Optimiser les paramètres pour des performances globales élevées, peut-être par apprentissage automatique.
Personnaliser les paramètres pour les différents stocks et secteurs.
Ajoutez des mécanismes de stop loss dans le code de stratégie, comme vendre lorsque le prix dépasse le support.
Sélectionner les actions présentant de bonnes performances dans les secteurs pour améliorer les rendements du portefeuille.
Cette stratégie intègre des signaux à travers quatre indicateurs majeurs
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("MACD RSI CCI StochRSI Strategy", shorttitle="MRCSS", overlay=true) // MACD göstergesi fastLength = input(12, title="Fast Length") slowLength = input(26, title="Slow Length") signalLength = input(9, title="Signal Length") [macdLine, signalLine, _] = macd(close, fastLength, slowLength, signalLength) // RSI göstergesi rsiLength = input(14, title="RSI Length") rsiLevel = input(70, title="RSI Overbought Level") rsiValue = rsi(close, rsiLength) // CCI göstergesi cciLength = input(8, title="CCI Length") cciLevel = input(100, title="CCI Overbought Level") cciValue = cci(close, cciLength) // Stochastic Oscillator göstergesi stochLength = input(14, title="Stoch Length") stochK = input(3, title="Stoch K") stochD = input(3, title="Stoch D") stochValue = stoch(close, high, low, stochLength) stochDValue = sma(stochValue, stochD) // Alış ve Satış Sinyalleri buySignal = crossover(macdLine, signalLine) and rsiValue < rsiLevel and cciValue < cciLevel and stochValue > stochDValue sellSignal = crossunder(macdLine, signalLine) and rsiValue > (100 - rsiLevel) and cciValue > (100 - cciLevel) and stochValue < stochDValue // Ticaret stratejisi uygula strategy.entry("Buy", strategy.long, when = buySignal) strategy.close("Buy", when = sellSignal) strategy.entry("Sell", strategy.short, when = sellSignal) strategy.close("Sell", when = buySignal) // Göstergeleri çiz hline(rsiLevel, "RSI Overbought", color=color.red) hline(100 - rsiLevel, "RSI Oversold", color=color.green) hline(cciLevel, "CCI Overbought", color=color.red) hline(100 - cciLevel, "CCI Oversold", color=color.green) // Grafik üzerinde sinyal okları çiz plotshape(series=buySignal, title="Buy Signal", color=color.green, style=shape.triangleup, location=location.belowbar, size=size.small) plotshape(series=sellSignal, title="Sell Signal", color=color.red, style=shape.triangledown, location=location.abovebar, size=size.small)