Stratégie d'inversion de tendance à long terme

Auteur:ChaoZhang est là., Date: le 13 novembre 2023 à 10h51
Les étiquettes:

img

Résumé

La stratégie d'inversion de tendance à long terme est un système de trading mécanique qui combine le suivi de tendance et les inversions à court terme. Il utilise le plus haut et le plus bas de 7 jours pour construire un canal et la moyenne mobile de 200 jours pour déterminer la direction de la tendance à long terme.

La logique de la stratégie

La stratégie repose principalement sur les principes suivants:

  1. Utilisez le record de 7 jours pour juger de la hausse et de la baisse de la semaine dernière.

  2. La moyenne mobile à 200 jours détermine la direction de la tendance à long terme.

  3. Lorsque le prix dépasse le plus bas de 7 jours et dépasse la moyenne mobile de 200 jours, un signal d'achat est généré. Cela indique la fin de la correction à la baisse à court terme et la tendance peut être inversée à la hausse.

  4. Lorsque le prix dépasse le sommet de 7 jours et est inférieur à la moyenne mobile de 200 jours, un signal de vente est généré.

  5. Utiliser 2x ATR stop loss pour contrôler le risque par transaction.

La clé est de considérer à la fois les délais à court et à long terme. Le canal de 7 jours juge l'action récente des prix et le MA de 200 jours juge la tendance sur plusieurs mois. Les signaux de trading ne sont générés que lorsque les deux indiquent la même direction. Cela évite les faux signaux des corrections à court terme.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. Des signaux simples et clairs basés sur le prix et la moyenne mobile.

  2. Considère les tendances à court et à long terme, filtre efficacement le bruit.

  3. Le suivi de la tendance et l'inversion moyenne combinés assurent des rendements plus doux.

  4. L'ATR contrôle le risque, réduit le tirage maximal.

  5. Applicable aux actions, aux devises et aux cryptos sur tous les marchés.

  6. Peut fonctionner dans des environnements à haute et basse fréquence.

Analyse des risques

Les principaux risques sont les suivants:

  1. Peut manquer de grandes tendances dans les marchés à forte tendance.

  2. Le stop loss peut être déclenché fréquemment sur des marchés agités.

  3. Des paramètres inappropriés peuvent conduire à une survente.

  4. Des indicateurs de tendance à court et à long terme inappropriés peuvent filtrer trop de signaux.

  5. Échec du modèle dû à l'absence de données d'échantillonnage.

Les principales techniques de gestion des risques:

  1. Optimiser les paramètres pour un stop loss et une fréquence de trading raisonnables.

  2. Un backtesting robuste sur les marchés et les délais.

  3. Diversification du portefeuille pour réduire le risque lié à la stratégie unique.

  4. L'exposition au risque est calculée sur la base de la valeur de l'échange.

Directions d'optimisation

La stratégie peut être améliorée:

  1. Optimiser la longueur du canal pour une meilleure mesure de la tendance à court terme.

  2. Optimiser la longueur MA pour une meilleure mesure de la tendance à long terme.

  3. Essayez d'autres techniques de stop-loss comme le pourcentage, le trailing.

  4. Les renversements de tendance entraînent souvent une augmentation du volume.

  5. L'apprentissage automatique pour trouver des paramètres optimaux à court et à long terme.

  6. Des règles de sortie dynamiques basées sur les fondamentaux et le sentiment.

  7. Optimiser le stop-loss pour les algorithmes de verrouillage des profits ou exponentiels.

L'optimisation des paramètres et les combinaisons peuvent encore améliorer les résultats et les indicateurs de risque.

Résumé

La stratégie d'inversion de tendance à long terme combine à la fois le suivi de tendance et la réversion moyenne. En jugeant les tendances à court et à long terme, elle génère des signaux aux points d'inversion de tendance. Par rapport aux stratégies de tendance pure ou de réversion moyenne, elle filtre le bruit du marché et réalise des rendements stables et un contrôle des risques. Dans l'ensemble, cette stratégie convient aux traders algos avec des vues sur le marché et fournit des performances stables pour les portefeuilles quantitatifs.


/*backtest
start: 2023-11-05 00:00:00
end: 2023-11-12 00:00:00
period: 45m
basePeriod: 5m
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/
// © racer8
//@version=4
// This Algo Strategy Has Only 3 rules and 62% Win Rate (Youtube) 

strategy("Trend Bounce", overlay=true)

nn = input(7,"Channel Length")
hi = highest(high,nn)
lo = lowest(low,nn)
n2 = input(200,"Ma Length")
ma = sma(close,n2)

if close>ma and close<lo[1]
    strategy.entry("Buy",strategy.long)
if close>hi[1]
    strategy.close("Buy") 
    
if close<ma and close>hi[1]
    strategy.entry("Sell",strategy.short)
if close<lo[1]
    strategy.close("Sell")


plot(hi,"high",color=color.aqua)
plot(lo,"low",color=color.aqua)
plot(ma,"sma",color=color.yellow)       

//-----------------------------------------Stop Loss-------------------------------------------------------

atr = sma(tr,10)[1]
bought = strategy.position_size[0] > strategy.position_size[1]
sold = strategy.position_size[0] < strategy.position_size[1]
slm = input(2.0,"ATR Stop Loss",minval=0)
StopPrice_Long  = strategy.position_avg_price - slm*atr              // determines stop loss's price 
StopPrice_Short  = strategy.position_avg_price + slm*atr              // determines stop loss's price 
FixedStopPrice_Long = valuewhen(bought,StopPrice_Long,0)                  // stores original StopPrice  
FixedStopPrice_Short = valuewhen(sold,StopPrice_Short,0)                  // stores original StopPrice  
plot(FixedStopPrice_Long,"ATR Stop Loss Long",color=color.blue,linewidth=1,style=plot.style_cross)
plot(FixedStopPrice_Short,"ATR Stop Loss Short",color=color.red,linewidth=1,style=plot.style_cross)
if strategy.position_size > 0
    strategy.exit(id="Stop", stop=FixedStopPrice_Long)    // commands stop loss order to exit!
if strategy.position_size < 0
    strategy.exit(id="Stop", stop=FixedStopPrice_Short)    // commands stop loss order to exit!



Plus de