Stratégie de négociation dans l'ombre

Auteur:ChaoZhang est là., Date: 2023-11-03 16:03:59 Je vous en prie.
Les étiquettes:

img

Résumé

La stratégie de négociation d'ombre identifie la ligne K avec des ombres inférieures ou supérieures longues pour déterminer les opportunités potentielles d'inversion du marché.

La logique de la stratégie

La logique de base de la stratégie de négociation d'ombres est d'identifier les ombres supérieures et inférieures longues dans les lignes K. La stratégie calcule la taille du corps de la ligne K.corpoet par les ombres,pinnaLetpinnaSLorsque la taille de l'ombre est supérieure à la taille du corps d'un certain multiplicateur, il considère qu'il peut y avoir des opportunités d'inversion.

  1. Calculer la taille du corps de la ligne Kcorpo, qui est la valeur absolue de la différence entre le prix d'ouverture et le prix de clôture.
  2. Calculer l'ombre supérieurepinnaL, qui est la valeur absolue de la différence entre le prix le plus élevé et le prix de clôture.
  3. Calculer l' ombre inférieurepinnaS, qui est la valeur absolue de la différence entre le prix le plus bas et le prix de clôture.
  4. Vérifiez si l'ombre supérieure est supérieure à la taille du corps par un multiplicateur, en utilisantpinnaL > (corpo*size), oùsizeest un paramètre réglable.
  5. Vérifiez si l'ombre inférieure est supérieure à la taille du corps par un multiplicateur, en passantpinnaS > (corpo*size).
  6. Si les conditions ci-dessus sont remplies, passez à la ligne K avec ombre (ombre supérieure longue) ou à l'ombre inférieure (ombre inférieure longue).

En outre, la stratégie vérifie également si l'intervalle de la ligne Kdimest supérieure à la valeur minimaleminPour filtrer les lignes K triviales avec une plage négligeable, on utilise le stop loss et le take profit pour sortir.

Analyse des avantages

  • Utilise le principe général de l'inversion de l'ombre, qui est un signal commercial relativement fiable
  • Logie de stratégie simple et claire, paramètres intuitifs, faciles à comprendre
  • Contrôle du risque flexible en ajustant les paramètres en fonction de la fréquence d'entrée
  • Il est possible d'optimiser davantage la tendance, le support/résistance, etc.

Risques et solutions

  • La probabilité de défaillance dans l'inversion de l'ombre existe, peut réduire le risque en ajustant les paramètres
  • Besoins combinés avec jugement de tendance pour éviter les opérations contre tendance
  • Les paramètres doivent être optimisés pour différents produits et peuvent varier selon les produits.
  • Peut combiner d'autres indicateurs pour filtrer les entrées, réduire le taux de gain pour une plus grande rentabilité

Directions d'optimisation

  • Optimiser les paramètres par produit pour améliorer la stabilité
  • Ajouter le jugement de tendance avec des moyennes mobiles, etc. pour éviter une contre-tendance
  • Ajouter des contrôles sur la rupture des points hauts / bas récents pour améliorer l'efficacité
  • Optimiser le stop loss et le profit pour maximiser le profit tout en minimisant les pertes
  • Optimiser la taille de la position, peut varier selon les produits

Conclusion

La stratégie de négociation à l'ombre est une stratégie de négociation à court terme simple et pratique. Elle génère des signaux de négociation en utilisant le principe général des inversions d'ombres. La logique de la stratégie est simple et facile à mettre en œuvre, et peut être ajustée et optimisée en fonction des différences de produit. En même temps, le trading à l'ombre comporte également certains risques. Il doit être combiné avec la tendance et d'autres facteurs de filtration pour réduire les faux trades. Lorsqu'il est utilisé correctement, le trading à l'ombre peut devenir une composante efficace dans un système de trading quantitatif.


/*backtest
start: 2023-10-01 00:00:00
end: 2023-10-11 23:59:59
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Shadow Trading", overlay=true)

size = input(1,type=float)
pinnaL = abs(high - close) 
pinnaS = abs(low-close)
scarto = input(title="Tail Tollerance", type=float, defval=0.0018)
corpo = abs(close - open)
dim = abs(high-low)
min = input(0.001)
shortE = (open + dim)

longE = (open - dim)
barcolor(dim > min and (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto) ? navy : na)

longcond = (dim > min) and (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto)
minimo=low+scarto
massimo=high+scarto
barcolor( dim > min and(close < open) and (pinnaS > (corpo*size)) and (high-open<scarto) ? orange: na)
shortcond = (dim > min) and(close < open) and (pinnaS > (corpo*size)) and (high-open<scarto)
//plot(shortE)
//plot(longE)
//plot(open)
ss= shortcond ? close : na
ll=longcond ? close : na
offset= input(0.00000)

DayClose = 2
closup = barssince(change(strategy.opentrades)>0)  >= DayClose 

longCondition = (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto) 

crossFlag = longcond ? 1 : 0
monthBegin = input(1,maxval = 12)
yearBegin = input(2013, maxval= 2015, minval=2000)

if(month(time)>monthBegin and year(time) >yearBegin)
    if (longcond)
        strategy.entry("short", strategy.short, stop = low - offset)   
//strategy.close("short", when = closup)
shortCondition = (close < open) and (pinnaS > (corpo*size)) and (high-open<scarto)
if(month(time)>monthBegin and year(time) >yearBegin)
    if (shortcond)
        strategy.entry("long", strategy.long, stop = high + offset)
//strategy.close("long", when = closup)

Target =  input(20) 
Stop = input(70) //- 2
Trailing = input(0) 
CQ = 100

TPP = (Target > 0) ? Target*10: na
SLP = (Stop > 0) ? Stop*10 : na
TSP = (Trailing > 0) ? Trailing : na

strategy.exit("Close Long", "long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Close Short", "short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)

Plus de