Appuyez sur la stratégie d'inversion

Auteur:ChaoZhang est là., Date: 23:56:32
Les étiquettes:

imgLa Squeeze Momentum on Reversal Strategy est une stratégie de trading technique qui utilise les indicateurs Bollinger Bands (BB) et Keltner Channel (KC) pour identifier les renversements potentiels sur le marché.

La stratégie fonctionne en calculant d'abord les bandes BB et KC pour la longueur spécifiée. La longueur par défaut est de 20 bar. Les bandes BB sont ensuite multipliées par le multiplicateur spécifié, qui est de 2,0 par défaut. Les bandes KC sont ensuite multipliées par le multiplicateur spécifié, qui est de 1,5.

L'étape suivante consiste à vérifier si les bandes BB et KC sont pressées ensemble. Si c'est le cas, la stratégie entrera dans une position longue si le prix est au-dessus de la bande KC et une position courte si le prix est en dessous de la bande KC. La taille de la position sera déterminée par la force d'inversion spécifiée, qui est de 0,0018 par défaut.

La stratégie sortira de la position lorsque les bandes BB et KC s'élargiront. Le signal de sortie sera généré lorsque le prix se déplace en dehors de la bande KC.

La stratégie Squeeze Momentum on Reversal est une stratégie relativement simple à mettre en œuvre, mais elle peut être efficace pour identifier les potentiels retours en arrière sur le marché.

Voici une explication plus détaillée des différentes composantes de la stratégie:

Bollinger Bands (BB): L'indicateur BB est un indicateur de volatilité qui utilise une moyenne mobile et un écart type pour créer des bandes autour du prix. Channel de Keltner (KC): L'indicateur KC est similaire à l'indicateur BB, mais il utilise une moyenne mobile différente et un calcul de l'écart type. La force d'inversion est un paramètre qui détermine la taille de la position qui est prise lorsque la stratégie entre dans un commerce. La stratégie Squeeze Momentum on Reversal est une stratégie polyvalente qui peut être utilisée sur une variété de délais et de marchés. Cependant, il est important de noter que la stratégie est la plus efficace sur les marchés tendance.

Voici quelques conseils pour utiliser le Squeeze Momentum sur la stratégie d'inversion:

Utilisez un stop loss pour protéger vos profits. Utilisez un stop-loss pour obtenir des profits à mesure que le marché évolue en votre faveur. Testez la stratégie sur les données historiques avant de l'utiliser dans le trading en direct. Utiliser une variété d'autres indicateurs pour confirmer les signaux générés par le momentum de compression sur la stratégie d'inversion. Le Squeeze Momentum on Reversal Strategy est un outil puissant qui peut être utilisé pour identifier les revers potentiels sur le marché. Cependant, il est important d'utiliser la stratégie avec sagesse et de comprendre ses limites. En suivant les conseils ci-dessus, vous pouvez augmenter vos chances de succès lors de l'utilisation de cette stratégie.


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

//
// @author Odyssee
// @version=2
//
strategy(shorttitle = "Squeeze MOM", title="Squeeze Momentum on Reversal Strategy", overlay=false)

length = input(20, title="BB Length")
mult = input(2.0,title="BB MultFactor")
lengthKC=input(20, title="KC Length")
multKC = input(1.5, title="KC MultFactor")
strength = input(0.0018, title="Reversal Strength")

useTrueRange = input(true, title="Use TrueRange (KC)", type=bool)

// Calculate BB
source = close
basis = sma(source, length)
dev = multKC * stdev(source, length)
upperBB = basis + dev
lowerBB = basis - dev

// Calculate KC
ma = sma(source, lengthKC)
range = useTrueRange ? tr : (high - low)
rangema = sma(range, lengthKC)
upperKC = ma + rangema * multKC
lowerKC = ma - rangema * multKC

sqzOn  = (lowerBB > lowerKC) and (upperBB < upperKC)
sqzOff = (lowerBB < lowerKC) and (upperBB > upperKC)
noSqz  = (sqzOn == false) and (sqzOff == false)

highest = highest(high, lengthKC)
lowest = lowest(low, lengthKC)
lastsma = sma(close,lengthKC)

valin = linreg(source  -  avg(avg(highest, lowest), lastsma), lengthKC,0)

bcolor = iff( valin > 0, iff( valin > nz(valin[1]), lime, green), iff( valin < nz(valin[1]), red, maroon))
scolor = noSqz ? blue : sqzOn ? black : gray 
plot(valin, color=bcolor, style=histogram, linewidth=4)
plot(0, color=scolor, style=cross, linewidth=2)

shortcondition = valin > strength and valin < nz(valin[1]) // line become green
longcondition = valin < (strength*-1) and valin > nz(valin[1]) // line become maroon

if(longcondition)
    strategy.entry("BUY", strategy.long)
if(shortcondition)
    strategy.entry("SELL", strategy.short)


Plus de