
La stratégie utilise l’oscillateur stochastique pour déterminer les points de retournement de tendance à court terme, et la combinaison de la période plus longue (le prix le plus élevé - le prix le plus bas) / l’indicateur de prix de clôture pour déterminer la tendance à moyen et long terme, pour déterminer le retournement de tendance à plusieurs dimensions de temps.
La stratégie est composée de deux volets:
Cette section utilise le croisement de la ligne rapide et de la ligne lente de l’oscillateur stochastique pour déterminer un renversement de tendance à court terme. Plus précisément, si le prix de clôture est élevé la veille et que la ligne rapide du stochastique est inférieure à la ligne lente et que la ligne rapide est inférieure à 50, faites plus; si le prix de clôture est bas la veille et que la ligne rapide du stochastique est supérieure à la ligne lente et que la ligne rapide est supérieure à 50, faites moins.
L’indicateur reflète la volatilité de la ligne K actuelle. Si la valeur de l’indicateur est grande, la volatilité actuelle augmente et peut être inversée. Si la valeur de l’indicateur est petite, la volatilité actuelle s’affaiblit et la tendance peut persister.
La combinaison de ces deux indicateurs permet d’évaluer les retournements de tendance à court et à moyen terme, et de réaliser des stratégies de trading à plusieurs échelles temporelles.
La stratégie utilise à la fois des indicateurs à court et moyen terme pour assurer la fiabilité du signal de renversement et éviter les faux signaux causés par un seul indicateur.
Les paramètres de l’oscillateur stochastique et de l’indicateur de prix de clôture peuvent être ajustés en fonction du marché, ce qui rend la stratégie plus flexible.
La stratégie est basée sur le stochastique, avec des jugements de tendance à moyen et long terme, et est structurée de manière simple et claire, facile à comprendre et à modifier.
Le cadre stratégique est simple et universel, permettant d’introduire facilement plus d’indicateurs et de construire des modèles multifactoriels.
La stratégie est basée sur la rétrogradation et peut avoir de mauvaises performances dans un marché en tendance continue. Les paramètres doivent être adaptés de manière appropriée pour s’adapter à un marché en tendance.
Dans des conditions de marché anormales, les stochastiques et les indices de prix (le plus haut prix - le plus bas prix) / prix de clôture peuvent émettre des signaux erronés, il est nécessaire de se prémunir contre le risque de faux signaux.
Les paramètres stochastiques et les indices (prix haut - prix bas) / prix de clôture doivent être optimisés en fonction des conditions du marché, sinon ils peuvent affecter la performance de la stratégie.
La stratégie est inverse, les gains et les pertes peuvent être importants, il faut contrôler les positions et les risques.
Il est possible d’introduire d’autres facteurs dans le cadre existant, tels que le nombre de transactions, d’autres indicateurs de retournement, etc., pour construire des modèles multifonctionnels.
Il est possible de définir un stop mobile ou un stop temporel pour contrôler efficacement les pertes d’une seule transaction.
Les paramètres peuvent être optimisés par des méthodes plus systématiques telles que les algorithmes génétiques.
L’application d’algorithmes d’apprentissage automatique pour la formation de modèles qui détectent le renversement de tendance pourrait améliorer encore la précision.
L’analyse émotionnelle des données non structurées, comme les données sociales, a été introduite pour aider à prévoir les points de basculement.
Cette stratégie intègre des indicateurs à deux dimensions temporelles à court et à moyen terme pour déterminer le renversement de tendance sur plusieurs périodes. C’est un très bon cadre de stratégie de renversement. Elle présente des avantages tels que la flexibilité des paramètres d’indicateur, la simplicité de la structure et l’évolutivité.
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 23/05/2019
// This is combo strategies for get
// a cumulative signal. Result signal will return 1 if two strategies
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50.
// The strategy sells at market, if close price is lower than the previous close price
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This histogram displays (high-low)/close
// Can be applied to any time frame.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
vFast = sma(stoch(close, high, low, Length), KSmoothing)
vSlow = sma(vFast, DLength)
pos = 0.0
pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0)))
pos
HLCHist(input_barsback, input_percentorprice, input_smalength) =>
xPrice = (high-low)/close
xPriceHL = (high-low)
xPrice1 = iff(input_percentorprice, xPrice * 100, xPriceHL)
xPrice1SMA = sma(abs(xPrice1), input_smalength)
pos = 0.0
pos := iff(xPrice1SMA[input_barsback] > abs(xPrice1), 1,
iff(xPrice1SMA[input_barsback] < abs(xPrice1), -1, nz(pos[1], 0)))
pos
strategy(title="Combo Backtest 123 Reversal & (H-L)/C Histogram", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
input_barsback = input(4, title="Look Back")
input_percentorprice = input(false, title="% change")
input_smalength = input(13, title="SMA Length")
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLCHist = HLCHist(input_barsback, input_percentorprice, input_smalength)
pos = iff(posReversal123 == 1 and posHLCHist == 1 , 1,
iff(posReversal123 == -1 and posHLCHist == -1, -1, 0))
possig = iff(reverse and pos == 1, -1,
iff(reverse and pos == -1, 1, pos))
if (possig == 1)
strategy.entry("Long", strategy.long)
if (possig == -1)
strategy.entry("Short", strategy.short)
if (possig == 0)
strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue )