
La stratégie de suivi des doubles virages permet de générer des signaux de négociation en suivant les doubles virages des prix. Lorsque les prix forment de nouveaux sommets, la stratégie entre en position vide; lorsque les prix forment de nouveaux bas, la stratégie entre en position multiple. Ce suivi en temps réel des virages des prix permet de capturer en temps réel le renversement de l’élan du marché.
La stratégie de suivi du double revirement utilise deux types de jugements de forme pour générer un signal de transaction, y compris le mode de revirement de haut prix (HHS) et le mode de revirement de bas prix (LLB). Sa formule de jugement est la suivante:
Si les conditions ci-dessus sont remplies, l’index et le prix des barres HHS et LLB sont formés. Ensuite, la stratégie surveille en temps réel si le prix a franchi le prix de revers enregistré. Lorsque le prix franchit le pic de revers HHS, indiquant que le modèle de prix a été inversé en baisse, la stratégie ouvre une position vide.
La stratégie fonctionne également en dessinant des marqueurs et des couleurs de fond pour visualiser la forme de HHS, LLB et les ruptures de prix. Cela est très utile pour juger de manière intuitive de la structure du marché et pour vérifier le fonctionnement de la stratégie.
Les avantages de la stratégie de double suivi des virages sont les suivants:
Le suivi en temps réel des variations de prix permet de saisir rapidement les occasions de revirement du marché. La stratégie est plus réactive que d’autres stratégies qui suivent des indicateurs tels que les moyennes mobiles.
L’utilisation des caractéristiques de rotation du prix lui-même pour générer des signaux de négociation, sans trop de paramètres nécessitant un ajustement optimisé, une mise en œuvre simple et directe.
Il est facile de visualiser le fonctionnement de la stratégie et de vérifier son efficacité.
Les stratégies de mise en œuvre sont peu codées, faciles à comprendre et à développer en seconde main. Elles peuvent être apprises comme une stratégie d’entrée pour les transactions quantifiées.
Dans l’ensemble, les stratégies de suivi des doubles revers sont relativement simples, mais elles sont efficaces pour capturer les revers de prix et méritent d’être utilisées comme stratégies de suivi rapide.
Les stratégies de double suivi des virements présentent également des risques, notamment:
Les jugements de retournement de prix reposent sur des informations ponctuelles, ce qui peut entraîner une plus grande probabilité d’erreur de jugement. Il est possible de configurer un suivi efficace des seuils après la rupture des prix pour réduire la probabilité d’erreur de jugement.
Sans tenir compte des tendances de prix à grande échelle, il est toujours possible de générer de faux signaux de vide de position lors d’une vague majeure. Un filtre de tendance peut être ajouté pour éviter ce risque.
Il n’y a pas de mécanisme de coupe de perte pour contrôler les pertes individuelles. Il est nécessaire de définir une stratégie de coupe de perte raisonnable dans le réel pour contrôler les pertes individuelles dans des limites acceptables.
Les données de réévaluation présentent des écarts d’optimisation, et la performance du disque peut être inférieure à celle du résultat de la réévaluation. La vérification du disque est essentielle.
Dans l’ensemble, la stratégie est simple à mettre en œuvre en tant que stratégie d’inversion rapide, mais il existe un risque de malentendu avec une certaine probabilité. En ajoutant des modules tels que le filtrage de tendance et la stratégie de stop loss, le risque peut être réduit efficacement, ce qui en fait une stratégie stable et fiable pour le terrain.
Afin de réduire la probabilité d’erreurs de jugement et d’améliorer la stabilité, la stratégie peut être optimisée en ce qui concerne:
Le prix d’entrée est déterminé par la rupture effective, si la position est ouverte après que le prix a chuté d’une certaine proportion du point de basculement.
Ajout d’un module de jugement de tendance à grande échelle, pour éviter les erreurs de blanchiment lors de la montée des vagues principales. Des indicateurs tels que les moyennes mobiles de l’indicateur peuvent être utilisés pour juger des tendances.
Augmenter les stratégies de stop loss, telles que le stop tracking et le stop intervalle, afin de limiter les pertes individuelles.
L’optimisation des positions algorithmiques permet d’ajuster la taille des positions en fonction de la volatilité du marché et de réduire les positions individuelles en cas de forte volatilité.
Test des données sur disque dur sur des périodes plus longues, évaluer la stabilité des paramètres et effectuer plusieurs optimisations par itération.
En optimisant les ajustements dans les directions ci-dessus, on peut améliorer considérablement la performance et la stabilité de la stratégie sur le terrain.
La stratégie de suivi du double revirement capte les opportunités de revirement en surveillant les points de revirement des prix en temps réel. Elle est simple à juger, à exécuter directement et à ouvrir rapidement des positions de revers. Mais la stratégie présente également un risque de jugement erroné avec une certaine probabilité.
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 6h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy(title="Rev. FO", shorttitle="Rev. FO", overlay=true, pyramiding=0,calc_on_order_fills=true,calc_on_every_tick=true,default_qty_type=strategy.percent_of_equity,default_qty_value=50,initial_capital=1000,currency="USD",commission_type=strategy.commission.percent,commission_value=0.2,process_orders_on_close=false)
HHS = close[0] < close[1] and high[0] > high[1]
LLB = close[0] > close[1] and low[0] < low[1]
var trade_long = false
var text_status = "Awaiting Trade..."
var index_hhs = 0
var index_llb = 0
var price_hhs = 0.0
var price_llb = 0.0
if (HHS)
trade_long := false
text_status := "Trade in Short"
index_hhs := bar_index
price_hhs := high
if (LLB)
trade_long := true
text_status := "Trade in Long"
index_llb := bar_index
price_llb := low
plotshape(HHS, style=shape.labeldown, title="HHS", location=location.abovebar, color=color.red, text="HHS", textcolor=color.white,size=size.tiny)
plotshape(LLB, style=shape.labelup, title="LLB", location=location.belowbar, color=color.white, text="LLB", textcolor=color.white,size=size.tiny)
// HHS_top = line.new(index_hhs-1,price_hhs,bar_index,price_hhs,extend=extend.right,style=line.style_solid,width=1,color=color.red)
// LLB_bot = line.new(index_llb-1,price_llb,bar_index,price_llb,extend=extend.right,style=line.style_solid,width=1,color=color.white)
// line.delete(HHS_top[1])
// line.delete(LLB_bot[1])
//Calculates how far the signal is painted to right.
hours = 5
lapos_x = timenow+1000*60*60*hours
lapos_y = highest(20)
// lb = label.new(lapos_x, lapos_y, text=text_status,color=trade_long?color.white:color.red,xloc = xloc.bar_time,style=label.style_diamond,textcolor=trade_long?color.white:color.red,size=size.small)
// label.delete(lb[1])
breakout_hhs = crossover(high,price_hhs)
breakout_llb = crossunder(low,price_llb)
bgcolor(breakout_hhs?color.lime:na,transp=50,title="BO HHS")
bgcolor(breakout_llb?color.maroon:na,transp=50,title="BO LLB")
long_condition = breakout_hhs
long_close = close < price_hhs or breakout_llb
short_condition = breakout_llb
short_close = close > price_llb or breakout_hhs
strategy.entry(id="long",long=true,comment="L",when=long_condition)
strategy.close(id="long",when=long_close)
strategy.entry(id="short",long=false,comment="S",when=short_condition)
strategy.close(id="short",when=short_close)