Stratégie de trading quantitative basée sur la moyenne de Fibonacci K-line et la moyenne mobile


Date de création: 2024-01-19 14:36:45 Dernière modification: 2024-01-19 14:36:45
Copier: 1 Nombre de clics: 666
1
Suivre
1617
Abonnés

Stratégie de trading quantitative basée sur la moyenne de Fibonacci K-line et la moyenne mobile

Aperçu

Cette stratégie permet de réaliser des transactions quantitatives sans faire de plus ou de moins en construisant des moyennes K et des moyennes mobiles basées sur des calculs de séries de Fibonacci, en combinaison avec plusieurs règles d’indicateurs techniques de prix. Des tests préliminaires ont montré que la stratégie fonctionnait mieux sur des graphiques à grands cycles.

Principe de stratégie

La stratégie est principalement réalisée par les étapes suivantes:

  1. En utilisant la suite de Fibonacci, on calcule la moyenne des prix de clôture, des prix les plus élevés, des prix les plus bas et des prix d’ouverture des 10 derniers cycles de Fibonacci pour construire une ligne K moyenne.

  2. Pour le prix de clôture moyen, calculer les moyennes mobiles des cycles 1, 2, 3, 5, 8, 13, 21, 34 et 55 (EMA) et calculer la moyenne de ces 9 EMA pour obtenir une EMA moyenne.

  3. Configurer une position plus calme lorsque la forme moyenne de la ligne K affiche un signal à plusieurs têtes ((clin d’oeil, coupe-coupe, etc.) et que le prix de clôture est supérieur à l’EMA moyenne.

En calculant la moyenne des fluctuations de prix de filtrage de la ligne K, et en combinant les indicateurs de la ligne moyenne pour émettre un signal de négociation, il est possible d’identifier efficacement les tendances et de contrôler les risques de négociation.

Avantages stratégiques

  1. La ligne K moyenne, calculée à partir de la suite des nombres de Fibonacci, permet de filtrer efficacement les fluctuations de prix aléatoires et d’identifier les signaux de tendance.

  2. Plusieurs moyennes EMA permettent de construire une moyenne EMA, ce qui améliore la stabilité des points de résistance supportés et la qualité du signal.

  3. Le simple fait de ne pas être en position libre peut réduire le nombre de transactions, réduire les coûts de transaction et les effets des points de glissement.

  4. Il fonctionne mieux sur des circuits plus grands et convient aux opérations sur des lignes moyennes et longues.

Risque stratégique

  1. Les stratégies qui ne font qu’augmenter peuvent subir des pertes plus importantes sur les marchés à ciel ouvert.

  2. La moyenne EMA est sujette à des retards et peut manquer les meilleurs moments d’entrée.

  3. Si vous cherchez trop à faire des opérations à grande périodicité, vous risquez de manquer des opportunités de courte et moyenne durée.

  4. L’espace d’optimisation des paramètres est limité et la performance du disque peut être inférieure aux résultats des tests d’optimisation des paramètres.

Direction d’optimisation

  1. Il est possible de tester et d’ajouter des stratégies de stop-loss appropriées, en cas d’expansion des pertes.

  2. Il peut être combiné avec des indicateurs de volatilité tels que l’ATR et un ajustement dynamique de la taille de la position.

  3. Il est possible de tester la possibilité d’intervenir de manière appropriée dans la baisse de la tendance, pour augmenter les gains de la stratégie.

  4. Les paramètres périodiques de l’EMA peuvent être optimisés pour trouver la combinaison optimale de paramètres.

Résumer

Cette stratégie permet de quantifier les transactions en construisant des indices de K et de la moyenne de Fibonacci, en identifiant les signaux de tendance. La stratégie a l’avantage de calculer les fluctuations de prix de la moyenne de la ligne K et de réduire les coûts de transaction en effectuant seulement plusieurs opérations.

Code source de la stratégie
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © SoftKill21

//@version=4
strategy("Fibonacci candle", overlay=false  )


//plot of our fibonacci candle
// Fibonacci 
// Fn = Fn-1 + Fn-2
// F10 = 55
// 0 1 2 3 5 8 13 21 34 55

avg_close = (close[0] + close[1] + close[2] + close[3] +close[5] + close[8] + close[13]+ close[21] + close[34] + close[55]) / 10
avg_high = (high[0] + high[1] + high[2] + high[3] +high[5] + high[8] + high[13]+ high[21] + high[34] + high[55]) / 10
avg_low = (low[0] + low[1] + low[2] + low[3] +low[5] + low[8] + low[13]+ low[21] + low[34] + low[55]) / 10
avg_open = (open[0] + open[1] + open[2] + open[3] +open[5] + open[8] + open[13]+ open[21] + open[34] + open[55]) / 10


src = avg_close//input(avg_close, title="Source")


out55 = ema(src, 55)
out1 = ema(src, 1)
out2 = ema(src, 2)
out3 = ema(src, 3)
out5 = ema(src, 5)
out8 = ema(src, 8)
out13 = ema(src, 13)
out21 = ema(src, 21)
out34 = ema(src, 34)

avg_ema = (out55 + out1 + out2 + out3+ out5 + out8 + out13 + out21 + out34)/9

plot(avg_ema)

plotcandle(avg_open, avg_high, avg_low, avg_close, title='Title', color = avg_open < avg_close ? color.green : color.red, wickcolor=color.white)

long = avg_open < avg_close and avg_close > avg_close[1] and avg_high > avg_high[1] and  avg_close[1] > avg_close[2] and avg_high[1] > avg_high[2]
short = avg_open > avg_close and avg_close < avg_close[1] and avg_low < avg_low[1] and avg_close[1] < avg_close[2] and avg_low[1] < avg_low[2]

strategy.entry("long",1,when=long and avg_close > avg_ema)
strategy.close('long',when=short and avg_close < avg_ema)