Stratégie de grande montée et de grande chute

Auteur:ChaoZhang est là., Date: 2023-11-06 15h48 et 22h
Les étiquettes:

img

Résumé

La stratégie Big Surge Big Fall détecte d'énormes bougies haussières et baissières pour entrer dans des positions. Elle court lorsqu'elle détecte une énorme bougie haussière et court lorsqu'elle détecte une énorme bougie baissière. Le stop loss est placé en dessous du bas de la bougie de signal (et vice versa pour long), et le profit est défini à 1 fois le stop loss. Les utilisateurs peuvent définir la taille minimale des bougies haussières / baissières et le multiple de la plage de barres moyenne sur certaines périodes.

La logique de la stratégie

La logique de base de cette stratégie est la suivante:

  1. Calculer la fourchette actuelle de chandeliers (haut - bas) et la taille du corps du chandelier (positif si la fermeture > ouverte, négatif si la fermeture < ouverte)

  2. Calculer la plage moyenne sur les N bougies précédentes

  3. Vérifiez si le chandelier actuel satisfait: gamme >= gamme moyenne x multiple ET taille du corps >= gamme x coefficient de taille du corps min

  4. Si les conditions ci-dessus sont remplies, un signal est déclenché: allez court sur le chandelier haussier, allez long sur le chandelier baissier

  5. Option permettant le stop loss et le profit: stop loss à faible plus coefficient de stop loss x plage; profit au 1 x stop loss

Le filtrage de la taille du corps exclut le doji. La plage moyenne dynamique s'adapte aux changements du marché. Le stop loss et le take profit permettent un contrôle raisonnable du retrait.

Les avantages

L'avantage majeur de cette stratégie est de capter des signaux d'inversion de tendance de haute qualité, basés sur deux jugements:

  1. L'énorme chandelier haussier/baissier indique probablement qu'une tendance est épuisée après un mouvement prolongé

  2. L'écart anormalement important qui dépasse la moyenne dynamique confirme la signification de la

En outre, les paramètres stop loss et take profit sont raisonnables, ce qui permet un contrôle efficace des pertes sans poursuite.

Dans l'ensemble, cette stratégie permet d'identifier des points de basculement structurels de haute qualité, ce qui permet une exécution efficace.

Les risques

Les principaux risques proviennent de deux aspects:

  1. Des barres énormes pourraient être une chasse au stop loss, créant de faux signaux.

  2. Le stop loss peut être trop large pour contrôler efficacement les pertes

Pour le premier risque, l'ajout de filtres de taille minimale peut réduire les faux signaux mais aussi manquer des opportunités.

Pour le deuxième risque, ajuster le coefficient de stop loss peut optimiser les arrêts près des supports sans être trop serré.

Des possibilités d'amélioration

Il existe plusieurs façons d'améliorer cette stratégie:

  1. Ajouter un filtre de direction de tendance pour éviter les transactions contre-tendance

  2. Optimiser les paramètres par le backtesting pour trouver la meilleure combinaison

  3. Ajouter un filtre de volume pour assurer un volume élevé sur les chandeliers énormes

  4. Considérez des filtres supplémentaires comme la moyenne mobile, les bandes de Bollinger pour réduire les faux signaux

  5. Paramètres d'essai pour différents produits en vue d'une optimisation

  6. Ajouter un stop loss pour l'ajustement dynamique basé sur l'action des prix

  7. Évaluer les possibilités de réentrée après le stop loss initial

Avec les améliorations ci-dessus, cette stratégie peut devenir beaucoup plus efficace et améliorer la probabilité de profit.

Conclusion

La stratégie Big Surge Big Fall profite d'énormes renversements de bougies avec stop loss et take profit management. Elle permet d'identifier avec succès des points tournants structurels de haute qualité, fournissant des informations précieuses aux traders de tendance. Avec l'optimisation des paramètres et de la logique, cette stratégie peut devenir un outil de décision pratique. Sa logique simple et son économie intuitive la rendent également facile à comprendre et à appliquer.


/*backtest
start: 2023-10-06 00:00:00
end: 2023-11-05 00:00:00
period: 1h
basePeriod: 15m
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/
// © tweakerID

// This strategy detects and uses big bars to enter a position. When the Big Bar 
// is bearish (red candle) the position will be long and viceversa
// for short positions. The stop loss (optional) is placed on the low of the 
// candle used to trigger the position and user inputs allow you to modify the
// size of the SL. Take profit is placed on a reward ratio of 1. User can also modify 
// the size of the bar body used to determine if we have a real Big Bar and
// filter out Doji bars. Big Bars are determined relative to the previous X period size, 
// which can also be modified, as well as the required size of the Big Bar relative to this period average.

//@version=4
strategy("Big Bar Strategy", overlay=false)

direction = input(0, title = "Direction (Long=1, Both=0, Short=-1 ", type=input.integer, minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))

//Inputs
barsizemult=input(1, step=.1, title="SL Mult")
TPbarsizemult=input(1, step=.1, title="TP Mult")
barsizeThreshold=input(.5, step=.1, minval=.5, maxval=.9, title="Bar Body Size")
period=input(10)
mult=input(2, step=.2, title="Big Size Avg Mult to determine Big Bar")
i_reverse=input(false, title="Reverse Trades")
SLon=input(false, title="Use SL / TP")

//Calculations
barsize=high-low
barbodysize=close>open?(open-close)*-1:(open-close)
barsizeavg=sum(barsize, period)/period
bigbar=barsize >= barsizeavg*mult and barbodysize>barsize*barsizeThreshold

//Entry Logic
longCondition = close < open and bigbar //and strategy.position_size==0
shortCondition = close > open and bigbar //and strategy.position_size==0

//SL & TP Calculations
longTP=strategy.position_avg_price + (valuewhen(longCondition,barsize,0)*TPbarsizemult)
longSL=strategy.position_avg_price - (valuewhen(longCondition,barsize,0)*barsizemult)
shortTP=strategy.position_avg_price - (valuewhen(shortCondition,barsize,0)*TPbarsizemult)
shortSL=strategy.position_avg_price + (valuewhen(shortCondition,barsize,0)*barsizemult)
TP=strategy.position_size>0?longTP:shortTP
SL=strategy.position_size>0?longSL:shortSL

//Entries
if (longCondition)
    strategy.entry("long", long=not i_reverse?true:false)
    alert("Big Bar")
if (shortCondition)
    strategy.entry("short", long=not i_reverse?false:true)
    alert("Big Bar")
if SLon
    strategy.exit("SL & TP", "long", stop=SL, limit=TP)
    strategy.exit("SL & TP", "short", stop=SL, limit=TP)
    
// Plots
barcolor(bigbar ? color.white : na)
plot(barsizeavg, transp=100, title="Barsize Avg")
plot(barsize, transp=100, title="Bar Size")
plot(barbodysize, transp=100, title="Bar Body Size")
plot(SLon?TP:na, color=color.green, style=plot.style_cross, title="TP")
plot(SLon?SL:na, color=color.red, style=plot.style_cross, title="SL")
plotshape(longCondition ? 1 : na, style=shape.triangleup, location=location.belowbar, color=color.green, title="Bullish Setup")
plotshape(shortCondition ? 1 : na, style=shape.triangledown, location=location.abovebar, color=color.red, title="Bearish Setup")



Plus de