
La stratégie de revers de double ombre est une stratégie de négociation de courte ligne basée sur la forme de la ligne K. La stratégie permet de juger des opportunités de revers possibles en identifiant des formes spéciales de la ligne K dans lesquelles les deux lignes K successives n’existent pas. L’avantage de la stratégie est simple et facile à mettre en œuvre, mais il existe également des risques à prendre en compte.
La logique centrale de la stratégie est d’identifier les formes de coupe de double ombre. Plus précisément, la stratégie juge si la ligne K actuelle satisfait à la condition que le prix d’ouverture soit égal au prix le plus bas et le prix de clôture soit égal au prix le plus élevé, c’est-à-dire qu’il n’y a pas de ligne descendante et de ligne ascendante, cette ligne K est appelée ligne d’ombre.
Selon la théorie de l’analyse technique, cette forme de double ombre est généralement un signe que la tendance actuelle est sur le point de s’inverser. Comme les deux lignes K successives oscillent dans une zone très étroite, cela indique que les forces des acheteurs et des vendeurs tendent à s’équilibrer, ce qui indique la possibilité d’une inversion.
Après avoir détecté la forme de double ombre, la stratégie va entrer en position de plus ou de moins au prix de clôture lors de l’ouverture de la ligne K suivante.
La stratégie est claire et compréhensible, les jugements sont simples et faciles à mettre en œuvre.
Il utilise la forme classique de l’inversion de la double ombre, avec une base d’analyse technique.
La fréquence d’opération est faible, ce qui permet de réduire les coûts et les risques de transaction.
Il est possible d’ajouter des fonctionnalités de rétro-mesure et d’optimiser les paramètres.
Les échanges de formes reposent sur des probabilités historiques graphiques et statistiques qui ne peuvent pas être totalement évités.
Bien que les doubles ombres annoncent une inversion, l’inversion ne se produit pas forcément ou ne se maintient pas.
Il est difficile de régler un intervalle de freinage fixe pour un fonctionnement rapide.
Il n’y a qu’une ou deux lignes de K qui permettent d’être trop radicaux.
Les indicateurs de tendance peuvent être combinés pour éviter les opérations de revers.
Il est possible d’entrer par Wait for Confirm, en attendant le signal de confirmation.
Le stop-loss est basé sur les paramètres ATR dynamiques, et non sur un nombre de jours fixe.
L’apprentissage automatique peut être utilisé pour déterminer quelles formes de double ombre sont les plus fiables.
La stratégie d’inversion de la double ombre utilise le concept classique de la transaction de la forme, l’idée est simple et intuitive, elle convient à la fois à l’apprentissage des débutants et peut être utilisée comme un module de robot. Cependant, il faut toujours faire attention au contrôle des risques, qui peut être amélioré en optimisant le timing d’entrée et la méthode d’arrêt.
/*backtest
start: 2023-10-30 00:00:00
end: 2023-11-06 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy("No Shadow Candles", overlay=true)
//set inputs
bars_until_close_trade = input(1,"Bars Until Close", minval = 1)
backtest_option = input(true,"Backtest on Twice alert?", bool)
//set conditions
up = close > close[1] and low >= open and high <= close
down = close < close[1] and low >= close and high <= open
up2 = (close > close[1] and low >= open and high <= close) and (close[1] > close[2] and low[1] >= open[1] and high[1] <= close[1])
down2 = (close < close[1] and low >= close and high <= open) and (close[1] < close[2] and low[1] >= close[1] and high[1] <= open[1])
close_trade = barssince(up or down) == bars_until_close_trade
close_trade2 = barssince(up2 or down2) == bars_until_close_trade
//plot indicators
plotshape(up,"Up Marker", shape.triangleup, location.belowbar, color = olive, size = size.tiny, transp = 50)
plotshape(down,"Down Marker", shape.triangledown, location.abovebar, color = orange, size = size.tiny, transp = 50)
plotshape(up2,"Up Twice Marker", shape.triangleup, location.belowbar, color = white, size = size.small)
plotshape(down2,"Down Twice Marker", shape.triangledown, location.abovebar, color = white, size = size.small)
plotshape(close_trade,"Close Trigger", shape.circle, location.belowbar, color = fuchsia, size = size.tiny, transp = 50)
plotshape(close_trade2,"Close Trigger2 (After Twice Alert)", shape.circle, location.belowbar, color = red, size = size.small)
//Strategy Testing
// Component Code Start
// Example usage:
// if testPeriod()
// strategy.entry("LE", strategy.long)
testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(01, "Backtest Start Month")
testStartDay = input(2, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2019, "Backtest Stop Year")
testStopMonth = input(7, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
// A switch to control background coloring of the test period
testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)
testPeriod() => true
// Component Code Stop
//Entry and Close settings
if testPeriod() and backtest_option == true
strategy.entry("up2", true, when = up2, limit = close)
strategy.close("up2", when = close_trade)
if testPeriod() and backtest_option == false
strategy.entry("up", true, when = up, limit = close)
strategy.close("up", when = close_trade)