Stratégie à double indicateur

Auteur:ChaoZhang est là., Date: 2023-11-02 15h30 et 54 min
Les étiquettes:

img

Résumé

La stratégie du double indicateur est une stratégie de trading quantitative qui combine les indicateurs de moyenne mobile simple (SMA) et de convergence moyenne mobile divergence (MACD).

La logique de la stratégie

Le cœur de la stratégie du double indicateur repose sur deux indicateurs: la SMA et le MACD. La stratégie adopte des SMA à 7-, 15 et 60 périodes, ainsi que le paramètre MACD standard 12/26/9.

Lorsque la SMA de 7 périodes est supérieure aux SMA de 15 et 60 périodes et que la SMA de 15 périodes est supérieure à la SMA de 60 périodes, elle est considérée comme un signal haussier de l'indicateur SMA, avec une probabilité de 0,5.

Dans le même temps, lorsque la ligne MACD traverse au-dessus de la ligne de signal, elle est considérée comme un signal haussier de l'indicateur MACD, également avec une probabilité de 0,5.

Lorsque les probabilités de signaux haussiers des deux indicateurs s'élèvent à 1, une position longue sera ouverte.

À l'inverse, lorsque la SMA à 7 périodes tombe en dessous de la SMA à 15 et 60 périodes, et que la SMA à 15 périodes est en dessous de la SMA à 60 périodes, elle est considérée comme un signal baissier de l'indicateur SMA, avec une probabilité de 0,5.

Pendant ce temps, lorsque la ligne MACD traverse en dessous de la ligne de signal, elle est considérée comme un signal baissier de l'indicateur MACD, avec une probabilité de 0,5.

Lorsque les probabilités de signaux baissiers des deux indicateurs s'élèvent à 1, une position courte est ouverte.

En outre, la stratégie adopte deux points de prise de profit différents: fermer 50% de la position lorsque le prix augmente ou diminue de 9% et fermer la position restante lorsque le prix augmente ou diminue de 21%.

Si un signal contraire à la position actuelle se produit, la position actuelle sera fermée en premier avant d'ouvrir une nouvelle position basée sur le nouveau signal.

Analyse des avantages

Le plus grand avantage de la stratégie du double indicateur est qu'elle utilise les forces des deux indicateurs SMA et MACD. SMA peut effectivement suivre les changements de tendance des prix et filtrer le bruit du marché, tandis que MACD peut identifier les opportunités d'inversion de tendance à court terme.

En outre, l'adoption de SMA avec des paramètres différents permet de discerner les tendances à long terme et à moyen terme, tandis que la stratégie de prise de bénéfices se limite à des bénéfices partiels et maîtrise les risques.

Analyse des risques

Il convient de noter certains risques potentiels de la stratégie à double indicateur. Comme elle repose uniquement sur des indicateurs techniques, des signaux incorrects peuvent se produire. De plus, des paramètres de prise de profit inappropriés pourraient entraîner une sortie prématurée, manquant des tendances majeures.

La stratégie peut être optimisée en ajustant les paramètres de la période SMA ou en incorporant des indicateurs de filtrage supplémentaires pour assurer des signaux plus fiables.

Directions d'optimisation

Certains aspects de la stratégie à double indicateur peuvent être encore optimisés:

  1. Testez en ajoutant d'autres indicateurs techniques tels que le RSI, les bandes de Bollinger pour le filtrage multi-indicateurs.

  2. Essayez des algorithmes d'apprentissage automatique pour construire des modèles de jugement de signal en utilisant plusieurs variables.

  3. Effectuer le réglage des paramètres en fonction des différents produits et des délais.

  4. Incorporer un stop loss pour contrôler strictement les pertes d'une seule transaction.

  5. Optimiser la stratégie de prise de profit pour suivre les tendances soutenues.

Grâce à un backtesting et à une optimisation systématiques, la stabilité et la rentabilité de la stratégie peuvent être continuellement améliorées.

Conclusion

La stratégie du double indicateur combine les atouts de SMA et MACD pour améliorer la précision du signal tout en contrôlant efficacement les risques.


/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("SMA & MACD Dual Direction Strategy", shorttitle="SMDDS", overlay=true, initial_capital=1000)

// SMA settings
sma7_length = input.int(7, title="7 Candle SMA Length")
sma15_length = input.int(15, title="15 Candle SMA Length")
sma60_length = input.int(60, title="60 Candle SMA Length")

// MACD settings
fast_length = input.int(12, title="Fast Length")
slow_length = input.int(26, title="Slow Length")
signal_length = input.int(9, title="Signal Length")

// Leverage
leverage = 10

// Calculate the SMAs
sma7 = ta.sma(close, sma7_length)
sma15 = ta.sma(close, sma15_length)
sma60 = ta.sma(close, sma60_length)

// Calculate the MACD line and Signal line
[macdLine, signalLine, _] = ta.macd(close, fast_length, slow_length, signal_length)

// SMA-based Probabilities
smaBullishProb = (sma7 > sma15 and sma7 > sma60 and sma15 > sma60) ? 0.5 : 0.0
smaBearishProb = (sma7 < sma15 and sma7 < sma60 and sma15 < sma60) ? 0.5 : 0.0

// MACD-based Probabilities
macdBullishProb = ta.crossover(macdLine, signalLine) ? 0.5 : 0.0
macdBearishProb = ta.crossunder(macdLine, signalLine) ? 0.5 : 0.0

// Combined Probabilities
combinedBullishProb = smaBullishProb + macdBullishProb
combinedBearishProb = smaBearishProb + macdBearishProb

// Trade logic using `if` conditions
if combinedBullishProb == 1.0
    strategy.close("Short")
    strategy.entry("Long", strategy.long, qty=leverage)

if combinedBearishProb == 1.0
    strategy.close("Long")
    strategy.entry("Short", strategy.short, qty=leverage)

// Exit conditions based on profit points
longTargetProfit1 = close * 1.09
longTargetProfit2 = close * 1.21

shortTargetProfit1 = close * 0.91
shortTargetProfit2 = close * 0.79

strategy.exit("Long TP1", from_entry="Long", limit=longTargetProfit1, qty_percent=0.5)
strategy.exit("Long TP2", from_entry="Long", limit=longTargetProfit2)

strategy.exit("Short TP1", from_entry="Short", limit=shortTargetProfit1, qty_percent=0.5)
strategy.exit("Short TP2", from_entry="Short", limit=shortTargetProfit2)

// Visualization (optional)
plot(sma7, color=color.green, title="7 Candle SMA")
plot(sma15, color=color.blue, title="15 Candle SMA")
plot(sma60, color=color.red, title="60 Candle SMA")
hline(0, "Zero Line", color=color.gray)
plot(macdLine - signalLine, color=color.blue, title="MACD Histogram")


Plus de