Cette stratégie juge les grandes tendances en intégrant plusieurs indicateurs et en générant des décisions de négociation en fonction de la variation de la direction de la combinaison des signaux. La stratégie combine la vitesse moyenne mobile, l’indicateur STOCH et l’indicateur MACD pour former un mécanisme de suivi de tendance plus complet et plus robuste.
La stratégie est principalement basée sur les indicateurs suivants pour évaluer les tendances:
La vitesse de la moyenne mobile: un indicateur de tendance qui reflète la vitesse de variation des prix.
L’indicateur STOCH: sur-achat sur-vente dans la région de la courbe.
Indicateur MACD: la différence entre les deux moyennes reflète le changement de tendance.
Les règles de transaction sont les suivantes:
La vitesse de la moyenne mobile vers le haut donne plus de signaux.
L’indicateur STOCH est entré dans la zone de survente et a donné un signal de creux.
La ligne moyenne du MACD est en croisement, ce qui donne un signal plus fort.
Lorsque deux signaux d’indicateur sont synchronisés, une décision d’entrée est prise.
Les signaux de l’indicateur ont changé, mais le jeu est resté en équilibre.
La stratégie a été synthétisée en tenant compte de plusieurs facteurs de tendance et en combinant des signaux filtrant les facteurs trompeurs pour former un système de négociation stable avec un fort pouvoir de confirmation.
La stratégie combinée présente les avantages suivants par rapport à une seule mesure:
Le jugement global améliore la précision.
Le filtrage combiné réduit les erreurs de trading.
Le rapport de l’OMS sur la situation des prix de l’électricité a été publié dans le journal Le Monde.
La force de confirmation du signal est aussi forte, ce qui permet d’éviter une fausse percée.
Les règles sont simples, claires et faciles à mettre en œuvre.
Les paramètres sont flexibles et adaptatifs.
Les cycles de temps varient et sont très répandus.
On peut introduire des poids pour les indicateurs d’entraînement de l’apprentissage machine.
La stabilité globale et la rentabilité sont supérieures à un seul indicateur.
Bien que cette stratégie présente de nombreux avantages, les risques suivants doivent être pris en compte:
Les multiples indicateurs augmentent la complexité de la stratégie.
L’optimisation des paramètres et la définition des poids sont plus difficiles.
Il peut y avoir des signaux contradictoires entre les différents indicateurs.
Le gouvernement a décidé d’éliminer les effets de la crise sur la santé publique, mais il n’y a pas eu de réaction immédiate.
La période de détention des positions unilatérales est incertaine, il y a un élément de chance.
Les signaux combinés n’éliminent pas la surveillance inhérente à la négociation de tendances.
La fréquence élevée des transactions est sujette aux frais de transaction.
Il est nécessaire de se concentrer sur le ratio de rétractation des revenus.
D’après l’analyse ci-dessus, la stratégie pourrait être améliorée:
Évaluer l’efficacité des différents indicateurs sur différents marchés.
Augmentation des tests de stabilité des paramètres pour éviter une optimisation excessive.
Optimiser le réglage des poids des indicateurs pour réduire les conflits de signaux.
Il est possible de mettre en place un stop loss pour éviter des pertes importantes.
Les exits temporels sont utilisés pour contrôler les positions unilatérales sans cible.
Évaluer l’impact de la fréquence des transactions sur les frais de transaction.
La mise en place d’une contrainte sur les indicateurs de risque.
Test de robustesse pour plusieurs marchés.
La stratégie doit être vérifiée en permanence pour éviter qu’elle ne devienne obsolète.
Cette stratégie utilise l’intégration de multiples indicateurs pour juger des tendances, formant un système de signaux combinés stable. Cependant, toute stratégie nécessite une optimisation et une amélioration constantes, en se concentrant sur les indicateurs de risque et en évitant les suradaptations.
/*backtest
start: 2022-09-16 00:00:00
end: 2023-09-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// By TradeStation
//@version=5
strategy("Mov Avg Speed Strategy", overlay=true)
src = input(close, title="Source")
// MA Speed
avg_len = input.int(50, minval=1, title="Avg Length", group="MA Speed")
roc_len = input.int(1, minval=1, title="Rate of Change Length", group="MA Speed")
avg_roc_len = input.int(10, minval=1, title="Avg Rate of Change Length", group="MA Speed")
// Stochastic
stoch_len = input.int(14, minval=1, title="Stochastic Length", group="Stochastic")
smooth_k = input.int(3, minval=1, title="Stochastic Smooth K", group="Stochastic")
overbought = input.float(80, title="Stochastic Overbought", group="Stochastic")
oversold = input.float(20, title="Stochastic Oversold", group="Stochastic")
// MACD
fast_length = input(12, title="Fast Length", group="MACD")
slow_length = input(26, title="Slow Length", group="MACD")
macd_avg_length = input.int(9, title="MACD Avg Length", minval=1, group="MACD")
// MA Speed
avg = ta.sma(src, avg_len)
roc = ta.roc(avg, roc_len)
avg_roc = ta.sma(roc, avg_roc_len)
avg_roc_signal = avg_roc > 0 ? 1 : avg_roc < 0 ? -1 : 0
// Stochastic k
k = ta.sma(ta.stoch(close, high, low, stoch_len), smooth_k)
stochastic_signal = k <= oversold ? 1 : k >= overbought ? -1 : 0
// MACD
fast_ma = ta.ema(src, fast_length)
slow_ma = ta.ema(src, slow_length)
macd = fast_ma - slow_ma
macd_avg = ta.ema(macd, macd_avg_length)
macd_signal = macd_avg > macd_avg[1] ? 1 : macd_avg < macd_avg[1] ? -1 : 0
// set the signal couint
long_count = 0
short_count = 0
if macd_signal == 1
long_count += 1
else if macd_signal == -1
short_count += 1
if stochastic_signal == 1
long_count += 1
else if stochastic_signal == -1
short_count += 1
if avg_roc_signal == 1
long_count += 1
else if avg_roc_signal == -1
short_count += 1
if (long_count >= 2)
strategy.entry("Long", strategy.long)
if (short_count >= 2)
strategy.entry("Short", strategy.short)