Cet article présente principalement une stratégie de trading quantitative basée sur le RSI et la WMA. La stratégie génère des signaux d'achat et de vente en calculant les valeurs du RSI et de la WMA pour découvrir les points d'inversion des cours des actions, visant à acheter bas et à vendre haut.
Les indicateurs de base de cette stratégie comprennent le RSI et le WMA. Le RSI (Relative Strength Index) est un indicateur de volatilité utilisé pour mesurer le changement de la vitesse des hausses et baisses de prix récentes.
Le signal d'achat de la stratégie est généré lorsque le RSI franchit le niveau supérieur de la WMA, indiquant un renversement de prix et un début possible d'une tendance à la hausse.
Plus précisément, la stratégie calcule d'abord le RSI de 14 jours, puis le WMA de 45 jours. Si le RSI dépasse le WMA, un signal d'achat est généré. Si le RSI dépasse le WMA, un signal de vente est généré.
Cette stratégie présente les avantages suivants:
Les risques incluent:
Ces risques peuvent être atténués par la régulation des paramètres, le stop loss, le filtrage des risques de marché, etc.
La stratégie peut être optimisée par les aspects suivants:
Cette stratégie intègre RSI et WMA pour capturer les croisements pour les signaux commerciaux, permettant un trading algos simple et efficace.
/*backtest start: 2024-01-05 00:00:00 end: 2024-02-04 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI WMA Strategy", overlay=true) // Input parameters rsiLength = input(14, title="RSI Length") wmaLength = input(45, title="WMA Length") // Calculate RSI and WMA rsiValue = ta.rsi(close, rsiLength) wmaValue = ta.wma(rsiValue, wmaLength) // Define overbought and oversold levels for RSI overboughtLevel = 70 oversoldLevel = 30 // Strategy logic longCondition = ta.crossover(rsiValue, wmaValue) shortCondition = ta.crossunder(rsiValue, wmaValue) // Execute trades if (longCondition) strategy.entry("Long", strategy.long, comment="BUY") if (shortCondition) strategy.entry("Short", strategy.short, comment="SELL") // Plotting for visualization plot(rsiValue, title="RSI", color=color.blue) plot(wmaValue, title="WMA", color=color.orange) hline(overboughtLevel, "Overbought Level", color=color.red) hline(oversoldLevel, "Oversold Level", color=color.green) // Plot buy and sell signals on the chart plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar) plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)