Stratégie de négociation rapide à faible décalage triple moyenne mobile

Auteur:ChaoZhang est là., Date: 2023-12-25 14h24 et 38 min
Les étiquettes:

La stratégie s'appelle Low Lag Triple Moving Average Fast Trading Strategy. Son idée principale est de déterminer les entrées et les sorties basées sur la croix d'or et la croix de la mort de trois moyennes mobiles avec des paramètres différents et une conception à faible décalage.

Principe de stratégie

La stratégie utilise trois moyennes mobiles à faible décalage, y compris 12-, 26-, et 55-période TEMA à faible décalage. Ces trois MA représentent des MA rapides, moyens et lents. Lorsque le MA rapide traverse le MA moyen, un signal d'achat est généré. Lorsque le MA rapide traverse le MA moyen, un signal de vente est généré. En utilisant le croisement des trois MA pour déterminer les points d'entrée et de sortie du marché, un trading à haute fréquence peut être réalisé.

La fonction modèle tema() est définie dans le code pour calculer le TEMA à faible décalage. Sa formule de calcul est: TEMA = 2*EMA - EMA(EMA). Elle utilise la moyenne mobile exponentielle double EWMA pour le calcul.

Plus précisément, les règles d'entrée de cette stratégie sont les suivantes: lorsque le MA rapide traverse le MA moyen et que le MA rapide est au-dessus du MA lent, un signal d'achat est généré.

Analyse des avantages

Le plus grand avantage de cette stratégie est que les entrées et les sorties sont déterminées rapidement et avec précision. La conception à faible décalage des trois MA réduit considérablement l'effet de retard afin qu'ils puissent réagir rapidement aux changements de prix.

En outre, cette stratégie est adaptée au trading à haute fréquence pour capturer les bénéfices des fluctuations de prix à court terme.

Analyse des risques

Le plus grand risque est que des coups de fouet à très court terme puissent se produire. En raison de la grande sensibilité aux changements de prix de la conception à faible décalage, certains marchés peuvent connaître des oscillations à haute fréquence.

En outre, le trading à haute fréquence nécessite de payer des commissions et des coûts de glissement relativement élevés.

En outre, cette stratégie exige que le trader dispose de capacités de surveillance solides en temps réel pour mettre à jour le stop loss et réaliser des bénéfices en temps opportun.

Directions d'optimisation

La stratégie peut être optimisée par les aspects suivants:

  1. Optimiser les paramètres de la période des trois AP afin de mieux s'adapter aux différentes caractéristiques du marché.

  2. Ajoutez des indicateurs de volatilité ou des indicateurs de volume pour confirmer les signaux et éviter les sautes d'humeur sur les marchés en évolution.

  3. Incorporer plus de facteurs pour mettre en place des mécanismes dynamiques d'arrêt de traînée.

  4. Optimiser la taille des positions afin de contrôler les risques liés aux transactions uniques grâce à des techniques de gestion de fonds.

  5. Incorporer des algorithmes d'apprentissage automatique pour optimiser dynamiquement les paramètres de stratégie.

Conclusion

Il s'agit d'une stratégie de trading rapide à faible décalage. Grâce à sa conception à faible décalage, des entrées et des sorties rapides peuvent être réalisées, ce qui convient au trading à haute fréquence pour saisir les opportunités à court terme. Le plus grand avantage de cette stratégie est que sa détermination des signaux est rapide et précise. Le plus grand inconvénient est qu'elle est sujette à être étouffée dans les marchés variés. Cet article résume de manière exhaustive cette stratégie de trading grâce à une analyse détaillée de sa logique, de ses avantages, de ses risques et de ses directions d'optimisation.
Je ne sais pas.


/*backtest
start: 2023-11-24 00:00:00
end: 2023-12-24 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("scalping low lag tema etal", shorttitle="Scalping tema",initial_capital=10000, overlay=true)
mav = input(title="Moving Average Type", defval="temadelay", options=["nkclose", "ema", "emadelay", "fastema", "tema", "temadelay"])
lenb = 3
N = input(8)
K = input(1.2)
fracCap = input(1.0)
in = close + K*mom(close,N)
source = close
length = 8
sigma  = 12.0
offset = 0.9
p = 4
// length = 10
// sigma  = 6.0
// offset = 0.85
tema(src,len) => fastemaOut = 2*ema(src, len) - ema(ema(src, len), len)


a = 0.0
b = 0.0
c = 0.0
if mav == "nkclose"
    a := ema(in, 12)
    b := a[1]
    c := a[2]
if mav == "ema"
    a := ema(close, 12)
    b := ema(close, 26)
    c := ema(close, 55)
if mav == "emadelay"
    a := ema(close, 12)
    b := a[1]
    c := a[2]
if mav == "fastema"
    a := ema(in, 12)
    b := ema(in, 26)
    c := ema(in, 55)
if mav == "tema"
    a := tema(close, 12)
    b := tema(close, 26)
    c := tema(close, 55)
if mav == "temadelay"
    a := tema(close, 12)
    b := a[1]
    c := a[2]

TP = input(200)
SL = input(130)
TS = input(1)
// TP = input(50)
// SL = input(110)
// TS = input(1)

orderSize = floor((fracCap * strategy.equity) / close)
long = cross(a, c) and a > b
short = cross(a, c) and a < b
plot(a, title="12", color=color.red, linewidth=1)
plot(b, title="26", color=color.blue, linewidth=1)
plot(c, title="55", color=color.green, linewidth=1)

strategy.entry("Long", strategy.long, qty=orderSize,  when=long)
strategy.entry("Short", strategy.short, qty=orderSize,  when=short)
// strategy.entry("Long", strategy.long,  100.0, when=long)
// strategy.entry("Short", strategy.short,  100.0, when=short)
// strategy.entry("Long", strategy.long, 100.0, when=long)
// strategy.entry("Short", strategy.short, 100.0, when=short)
// strategy.entry("Long", strategy.long, 1.0, when=long)
// strategy.entry("Short", strategy.short, 1.0, when=short)

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na
// strategy.exit("Close Short", "Short", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP, when=long)
// strategy.exit("Close Long", "Long", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP, when=short)
// strategy.exit("Close Long", "Long", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP, when=long[1])
// strategy.exit("Close Short", "Short", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP, when=short[1])
strategy.exit("Close Long", "Long", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Close Short", "Short", qty_percent=100, profit=TPP, loss=SLP, trail_points=TSP)


Plus de