Stratégie d' achat à baisse de prix avec stop loss

Auteur:ChaoZhang est là., Date: 2024-01-05 14:18:05 Je vous en prie.
Les étiquettes:

img

Résumé

Cette stratégie utilise l'indicateur RSI pour déterminer la direction potentielle de la tendance du marché, combiné à l'indicateur Bollinger Bands pour identifier les principales zones de soutien et de résistance, et recherche des opportunités d'absorption faibles sur les marchés de chocs de tendance pour établir des positions longues et réaliser des bénéfices dans les zones de surachat.

La logique de la stratégie

  1. Utilisez l'indicateur RSI pour déterminer la direction potentielle de la tendance du marché. RSI inférieur à 40 est considéré comme une zone de survente où le marché pourrait devenir haussier.

  2. Utilisez l'indicateur Bollinger Bands pour identifier les principales zones de support et de résistance. La bande moyenne des Bollinger Bands est la ligne moyenne mobile du prix, et les bandes supérieure et inférieure forment le canal d'écart type du prix. Les prix qui approchent de la bande inférieure présentent de faibles opportunités d'absorption.

  3. Lorsque le RSI est inférieur à 40 et que le prix s'approche de la bande inférieure de Bollinger, il est déterminé comme une opportunité longue d'absorption faible pour établir une position longue.

  4. Lorsque le RSI est supérieur à 50 ou que les bénéfices dépassent 50%, fermer les positions longues pour réaliser des bénéfices et réduire les pertes.

Analyse des avantages

  1. Utilisez le RSI pour déterminer la direction de la tendance potentielle du marché afin d'éviter de négocier contre la tendance.

  2. Identifier le calendrier d'entrée précis en combinant avec les bandes de Bollinger pour localiser les points d'absorption faibles.

  3. Adopter la méthodologie du choc de tendance pour éviter d'être pris au piège.

  4. Un mécanisme flexible d'arrêt des bénéfices et d'arrêt des pertes pour maximiser les bénéfices.

Analyse des risques

  1. Les paramètres Bollinger incorrects peuvent ne pas localiser correctement la zone de support.

  2. Les percées de tendance ou les faux percées pourraient conduire à des erreurs dans les jugements de surachat et de survente.

  3. Une mauvaise définition des points de stop-profit et de stop-loss peut entraîner une sortie prématurée ou une augmentation des pertes.

Directions d'optimisation

  1. Optimiser les paramètres de Bollinger pour une identification plus précise des zones de support et de résistance.

  2. Incorporer d'autres indicateurs comme MACD et KDJ pour filtrer les faux signaux.

  3. Optimiser dynamiquement les algorithmes de stop profit et stop loss pour maximiser les profits tout en minimisant les pertes.

Résumé

Cette stratégie détermine la direction potentielle de la tendance avec le RSI, combinée avec les bandes de Bollinger pour identifier les zones de soutien, réalisant un achat bas et une vente élevée, ce qui est une stratégie de choc de tendance typique.


/*backtest
start: 2023-12-28 00:00:00
end: 2024-01-04 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("price drop buy in", overlay=true, initial_capital=1000, max_bars_back=24)

// === INPUT BACKTEST RANGE ===
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12)
FromDay   = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear  = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth   = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
ToDay     = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear    = input(defval = 9999, title = "To Year", minval = 2017)

// === FUNCTION EXAMPLE ===
start     = timestamp(FromYear, FromMonth, FromDay, 00, 00)  // backtest start window
finish    = timestamp(ToYear, ToMonth, ToDay, 23, 59)        // backtest finish window
window()  => true // create function "within window of time"


///////////// RSI
RSIlength = input(60,title="RSI Period Length") 
RSIoverSold = 40
RSIoverBought = 50
price = close
vrsi = rsi(close, RSIlength)

smaLong = sma(close,80)
smaShort = sma(close,40)

///////////// Bollinger Bands
BBlength = input(20, minval=1,title="Bollinger Period Length")
BBmult = 2 // input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation")
BBbasis = sma(price, BBlength)
BBdev = BBmult * stdev(price, BBlength)
BBupper = BBbasis + BBdev
BBlower = BBbasis - BBdev

longcondition = (price < BBlower and vrsi < RSIoverSold) 

    // vrsi < RSIoverSold

shortcondition = (RSIoverBought and strategy.openprofit > 50 )  or price > BBupper






if(longcondition)
    strategy.entry('buy', strategy.long, when = window())
    
if(shortcondition)
    strategy.entry('sell', strategy.short, when = window())



Plus de