Stratégie de négociation composée à multiples indicateurs

Auteur:ChaoZhang est là., Date: 2024-01-29 10:06:25
Les étiquettes:

img

Résumé

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).

La logique de la stratégie

Cette stratégie élabore principalement des jugements basés sur quatre indicateurs:

  1. 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.

  2. 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.

  3. CCI: mesure la dynamique des prix en calculant l'écart en pourcentage du prix par rapport à sa moyenne mobile.

  4. 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 avantages

Les principaux avantages de cette stratégie multi-indicateurs sont les suivants:

  1. 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.

  2. Capture les principales tendances à travers différentes dimensions en combinant différentes perspectives d'indicateurs.

  3. Un grand espace d'optimisation des paramètres pour ajuster chaque indicateur pour une performance globale optimale.

  4. 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 risques

Les principaux risques sont les suivants:

  1. Les indicateurs peuvent générer simultanément de faux signaux, déclenchant des transactions incorrectes.

  2. Les prix peuvent bouger assez violemment pour des faux signaux simultanés entre les indicateurs.

  3. Des signaux d'achat retardés à mesure que les indicateurs s'alignent.

  4. 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.

Des possibilités d'amélioration

Possibilités d'amélioration:

  1. Testez des combinaisons avec plus d'indicateurs comme KD, Bollinger Bands pour trouver un portefeuille optimal.

  2. Optimiser les paramètres pour des performances globales élevées, peut-être par apprentissage automatique.

  3. Personnaliser les paramètres pour les différents stocks et secteurs.

  4. Ajoutez des mécanismes de stop loss dans le code de stratégie, comme vendre lorsque le prix dépasse le support.

  5. Sélectionner les actions présentant de bonnes performances dans les secteurs pour améliorer les rendements du portefeuille.

Conclusion

Cette stratégie intègre des signaux à travers quatre indicateurs majeurs MACD, RSI, CCI et StochRSI. En établissant des critères d'entrée et de sortie stricts basés sur une analyse de plusieurs délais, elle peut identifier efficacement les points tournants du marché.


/*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)


Plus de