Super tendance suivant une stratégie basée sur des moyennes mobiles

Auteur:ChaoZhang est là., Date: 2024-02-05 11:10:41 Je vous en prie.
Les étiquettes:

img

Résumé

Cette stratégie est une stratégie typique de suivi de tendance. Elle utilise plusieurs ensembles de moyennes mobiles avec différentes périodes pour déterminer la tendance du marché. Elle entre sur le marché lorsque la tendance est établie et sort lorsque la tendance à court terme s'inverse.

Principe de stratégie

La stratégie utilise 4 groupes de moyennes mobiles: les lignes à 9 jours, 21 jours, 50 jours et 200 jours.

Lorsque la moyenne mobile à court terme traverse la moyenne mobile à long terme vers le haut, on détermine que le marché entre dans une tendance haussière.

La stratégie utilise l'AM de 9 jours comme référence pour observer l'alignement des autres AM, et ainsi juger de l'orientation générale de la tendance.

Conditions d'entrée à long terme: Fermer > MA de 9 jours et MA de 9 jours > MA de 21 jours et MA de 21 jours > MA de 50 jours et MA de 50 jours > MA de 200 jours.

Conditions d'entrée à court terme: MA proche < 9 jours et MA de 9 jours < 21 jours et MA de 21 jours < 50 jours et MA de 50 jours < 200 jours.

Ici, la relation entre le prix de clôture et le MA de 9 jours détermine la tendance à court terme, tandis que celle entre le MA de 9 et 21 jours juge la tendance à court terme, la tendance à moyen terme de 21 jours et 50 jours, la tendance à long terme de 50 jours et 200 jours.

Conditions de sortie: prix de clôture inférieur à 21 jours MA, plafond de toutes les positions longues; prix supérieur à 21 jours MA, plafond de toutes les positions courtes.

Les avantages de la stratégie

  1. L'adoption de plusieurs MAs pour déterminer la tendance peut filtrer les bruits du marché des mouvements non traditionnels et capturer les tendances à moyen et à long terme.

  2. Des conditions d'entrée strictes exigent des jugements valables sur différentes périodes, évitant d'être pris au piège par des corrections à court terme.

  3. Un arrêt-perte rapide aide à contrôler efficacement les risques.

Risques et solutions

  1. Dans les marchés à long terme, des signaux erronés excessifs peuvent se produire et augmenter les risques de négociation.

  2. Pendant les tendances violentes, des croisements de MA se produisent fréquemment. D'autres facteurs sont alors nécessaires pour déterminer la tendance réelle, par exemple la combinaison d'indicateurs tels que le RSI et le MACD pour la confirmation, au cas où des mouvements forts seraient manqués.

Directions d'optimisation

  1. Optimisation des paramètres. Testez différentes combinaisons de paramètres pour trouver l'optimum. Par exemple, ajuster les périodes de MA, ajouter ou modifier les critères de stop loss, etc.

  2. Améliorer le filtre de qualité. Par exemple, vérifier si le volume augmente à l'entrée pour éviter une dynamique insuffisante, ou examiner la volatilité pour éviter les oscillations.

  3. Introduire une confirmation à partir d'indicateurs plus techniques pour éviter de faux signaux au milieu de mouvements féroces du marché.

Résumé

Dans l'ensemble, il s'agit d'une stratégie de suivi de tendance typique et pratique. Il adopte plusieurs MAs pour déterminer les tendances, a des règles d'entrée strictes pour verrouiller les tendances à moyen et long terme. Avec un stop loss rapide, il aide à contrôler les risques. Des améliorations supplémentaires de la stabilité et de la rentabilité peuvent être obtenues par des moyens tels que l'optimisation des paramètres et l'ajout d'indicateurs de confirmation.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
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/
// © shayak1

//@version=5
strategy('Super SR', overlay=true)

r = input.int(14,"rsi-length",1,100)
rsi = ta.rsi(close,r)

len1 = 9
len2 = 21
len3 = 50
len4 = 200

ema1 = ta.ema(close, len1)
ema2 = ta.ema(close, len2)
ema3 = ta.ema(close, len3)
ema4 = ta.ema(close, len4)

plot(ema1,color= color.green)
plot(ema2,color= color.yellow)
plot(ema3,color= color.orange)
plot(ema4,color= color.red)


// *** entries 
Long1 = close > ema1
Long2 = ema1 > ema2
Long3 = ema2 > ema3
Long4 = ema3 > ema4
buy_condition = Long1 and Long2 and Long3 and Long4 and strategy.position_size == 0

if (buy_condition and strategy.position_size <= 1)
    strategy.entry("B", strategy.long)

Short1 = close < ema1
Short2 = ema1< ema2
Short3 = ema2< ema3
Short4 = ema3< ema4
sell_condition = Short1 and Short2 and Short3 and Short4 and strategy.position_size == 0

//if (sell_condition)
//    strategy.entry("S", strategy.short)

// trailing SL
//Long_sl = min(strategy.position_avg_price * 0.95, strategy.pos


//EXIT CONDITIONS

exit_long = ta.crossunder(close, ema2)
exit_short = ta.crossover(close, ema2)

if(exit_long)
    strategy.close("B", "LE", qty_percent=100)
if(exit_short)
    strategy.close("S", "SE", qty_percent=100)

//==============================================================================
//INSERT SECTION
//This section is where users will be required to insert the indicators they
//would like to use for their NNFX Strategy.
//==============================================================================
//INSERT - CONFIRMATION INDICATOR 1
//==============================================================================


//==============================================================================
//INSERT - CONFIRMATION INDICATOR 2
//==============================================================================


//==============================================================================
//INSERT - VOLUME INDICATOR
//==============================================================================


//==============================================================================
//INSERT - BASELINE INDICATOR
//==============================================================================


//==============================================================================
//INSERT - EXIT INDICATOR
//==============================================================================


//==============================================================================
//INSERT - CONTINUATION TRADES INDICATOR
//==============================================================================


//==============================================================================
//COMPLETED SECTION
//This section has been optimised to work with the above indicators the user
//has inserted above. The user does not require to change any code below and
//is completed and optimised for the full NNFX strategy. Users may wish to 
//customise this section of code if they wish to alter the NNFX strategy.
//==============================================================================
//COMPLETE - BACKTEST DATE RANGE
//==============================================================================
// start_day = input.int(1,"start day",1,31)
// start_month = input.int(1,"start month",1,12)
// start_year = input.int(1,"start year",2010,2023)



//==============================================================================
//COMPLETE - CURRENCY CONVERSION
//==============================================================================


//==============================================================================
//COMPLETE - ATR MONEY MANAGEMENT
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C1
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C2
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Vol
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Bl
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Exit
//==============================================================================


//==============================================================================
//COMPLETE - CONTINUATION TRADES
//==============================================================================


//==============================================================================
//COMPLETE - ONE CANDLE RULE
//==============================================================================


//==============================================================================
//COMPLETE - BRIDGE TOO FAR
//==============================================================================


//==============================================================================
//COMPLETE - BASELINE AND ATR RULE
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - TAKE PROFIT AND STOP LOSS CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - EXIT ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - CLOSE ORDERS
//==============================================================================


//==============================================================================

Plus de