les indicateurs techniques multiples Stratégie de rupture de l'élan

Auteur:ChaoZhang est là., Date: 2023-11-22 15:56:43
Les étiquettes:

img

Résumé

Cette stratégie prend en compte plusieurs indicateurs techniques de manière exhaustive et prend une position longue lorsque le marché est jugé avoir une forte dynamique haussière. Plus précisément, cette stratégie prend en compte les 5 indicateurs MACD, RSI, ADX, Stochastic et Bollinger Band. Elle génère des signaux d'achat lorsque tous ces indicateurs répondent simultanément aux critères haussiers.

La logique de la stratégie

La logique de base de cette stratégie est d'acheter lorsque le marché est déterminé à avoir une forte dynamique haussière.

  1. Les barres actuelles MACD des graphiques de 5 minutes, 15 minutes et 60 minutes sont en hausse.
  2. Le RSI est supérieur à 60
  3. ADX est supérieur à 12
  4. Le stochastique %K dépasse %D
  5. La bande supérieure de Bollinger Band augmente

Lorsque toutes les 5 conditions ci-dessus sont remplies, le marché est considéré comme ayant une forte dynamique haussière.

La règle de sortie est de fermer la position en cours lorsque le prix de clôture de 5 minutes dépasse la EMA de 5 minutes.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. La combinaison de plusieurs indicateurs permet d'éviter d'être trompé par un seul
  2. L' utilisation d' indicateurs à travers les délais évalue la viabilité de la dynamique haussière
  3. Un mécanisme de sortie strict prévient les pertes accrues
  4. Fréquence de négociation appropriée sans sur-trading

En général, cette stratégie présente un jugement précis, un contrôle des risques approprié et est adaptée pour détecter les tendances haussières à court terme.

Analyse des risques

Cette stratégie comporte également des risques:

  1. La combinaison de plusieurs indicateurs augmente la probabilité d'une saisie erronée
  2. Le mécanisme de sortie peut être trop strict, ce qui entraîne une sortie prématurée des bonnes transactions
  3. Une fréquence de négociation élevée augmente le fardeau des commissions

En résumé, les principaux risques de cette stratégie résident dans l'entrée erronée et la sortie prématurée, qui doivent être atténués par un ajustement des paramètres et des règles.

Directions d'optimisation

Cette stratégie peut être optimisée dans les aspects suivants:

  1. Optimiser les paramètres MACD pour trouver des combinaisons mieux adaptées au marché
  2. Ajuster les paramètres de l'indice de volatilité pour mieux localiser les zones de surachat/de survente
  3. Optimiser les paramètres stochastiques pour de meilleurs croisements
  4. Paramètres des bandes de Bollinger afin de mieux refléter la volatilité du marché
  5. Optimiser ou remplacer les règles de sortie pour réduire les sorties prématurées

Grâce à l'optimisation des paramètres et des règles, la rentabilité et la capacité de contrôle des risques de cette stratégie peuvent être encore améliorées.

Conclusion

Cette stratégie juge la tendance haussière en combinant plusieurs indicateurs avec des sorties relativement strictes. Elle a un jugement précis, capable de capturer les tendances à court terme et un contrôle approprié des risques. L'optimisation continue des paramètres et des règles de trading peut améliorer davantage la stratégie. En résumé, il s'agit d'une stratégie pratique avec une forte facilité d'utilisation.


/*backtest
start: 2022-11-15 00:00:00
end: 2023-11-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © makarandpatil

// This strategy is for Bank Nifty instrument and for intraday purpose only
// It checks for various indicators and gives a buy signal when all conditions are met 
// Bank Nifty when in momentum gives 100-200 points in spot in 5-15 min which is how long the trade duration should be
// Issues - The custom script as per TradingView Pinescripting has an issue of repaint
// More information on repainting issue in this link - https://www.tradingview.com/pine-script-docs/en/v5/concepts/Repainting.html
// Use the script alert only to get notified, however check all the parameters individually before taking the trade
// Also, please perform a backtesting and deep backtesting of this strategy to see if the strategy gave correct buy signals in the past
// The script is made for testing purposes only and is in beta mode. Please use at own risk.

//@version=5
strategy("BankNifty_Bullish_Intraday", overlay=true, margin_long = 100, margin_short = 100)

// Variables
StochLength = input(14, title="Stochastic Length")
smoothK = input(3, title="%K Smoothing")
smoothD = input(3, title="%D Smoothing")
 
 
//INDICATOR CALCULATIONS
 
// 1. MACD
[macdLine, signalLine, histLine] = ta.macd(close[0],12,26,9)
 
macd5 = request.security(syminfo.tickerid, "5", macdLine)
macd15 = request.security(syminfo.tickerid,"15",macdLine)
macd60 = request.security(syminfo.tickerid,"60",macdLine)
 
// 2. RSI Calculation
xRSI = ta.rsi(close, 14)
 
// 3. ADX calculation
[diplus, diminus, adx] = ta.dmi(14,14)
// plot(adx,color = color.black)
 
// 4. Stochastic Calculation
k = ta.sma(ta.stoch(close, high, low, StochLength), smoothK)
d = ta.sma(k, smoothD)
 
// 5. Bollinger Band calculation
[middle, upper, lower] = ta.bb(close, 20, 2)
 
 
//CONDITIONS
 
// 1. Conditions for MACD
macd5Uptick = macd5[0] > macd5[1]
macd15Uptick = macd15[0] > macd15[1]
macd60Uptick = macd60[0] >= macd60[1]
 
// 2. Condition for xRSI
RSIStrong = xRSI > 60
 
// 3. Condition for ADX
ADXUngali = adx >= 12
 
// 4. Condition for Stochastic
StochPCO = k > d
 
// 5. Condition for Bollinger Band
BBCU = upper > upper [1]
 
//Evaluate the long condition
// longCondition = macd5Uptick and macd15Uptick and RSIStrong and ADXUngali and StochPCO and BBCU
longCondition = macd5Uptick and macd15Uptick and macd60Uptick and RSIStrong and ADXUngali and StochPCO and BBCU
// longCondition = macd5Uptick and macd15Uptick and RSIStrong and ADXUngali and StochPCO and BBCU

if (longCondition)
    strategy.entry("Buy", strategy.long,alert_message = "BankNifty_Buy_Momentum")

shortCondition = close < ta.ema(close,5)
if (shortCondition)
    strategy.entry("BuySquareoff", strategy.short, alert_message = "BankNifty_Closed_Below_5EMA")


Plus de