Stratégie de croisement SMA


Date de création: 2024-03-28 17:50:00 Dernière modification: 2024-03-28 17:50:00
Copier: 1 Nombre de clics: 587
1
Suivre
1617
Abonnés

Stratégie de croisement SMA

Aperçu

La stratégie est une simple stratégie de croisement de la moyenne SMA. Elle utilise une moyenne mobile simple de deux périodes différentes (SMA) pour ouvrir des positions plus élevées lorsque la ligne rapide traverse la ligne lente de bas en haut et plus basses lorsque la ligne rapide traverse la ligne lente de haut en bas. La stratégie permet de personnaliser la longueur des deux lignes normales, ainsi que les dates de début et de fin de la réévaluation.

L’idée principale de cette stratégie est d’utiliser les caractéristiques de tendance de la ligne moyenne et les caractéristiques de signaux de croisement de la ligne moyenne pour effectuer des transactions. Lorsque la ligne rapide est au-dessus de la ligne lente, indiquant qu’elle est actuellement en tendance à la hausse, il convient de tenir une position à plusieurs têtes; lorsque la ligne rapide est en dessous de la ligne lente, indiquant qu’elle est actuellement en tendance à la baisse, il convient d’observer une position vide.

Principe de stratégie

  1. Pour calculer le SMA de deux périodes différentes, la longueur de la période peut être personnalisée.
  2. Détermine si le courant est dans la fenêtre de temps de retransmission, et si ce n’est pas le cas, n’effectuez aucune opération.
  3. Si la ligne rapide traverse la ligne lente par le bas vers le haut, il y a plus de place.
  4. Si la ligne rapide traverse la ligne lente par le haut vers le bas, il est égal à toutes les positions multiples.
  5. Dans les autres cas, le stockage est vide et aucune opération n’est effectuée.

Analyse des avantages

  1. Il est facile à comprendre, logiquement clair et conviendra aux débutants.
  2. La ligne moyenne est un indicateur technique largement utilisé qui présente des caractéristiques de tendance plus évidentes et qui reflète mieux les tendances actuelles du marché.
  3. Le croisement de la ligne moyenne est un signal de suivi de tendance classique qui permet de saisir rapidement les changements de tendance.
  4. Il est possible de personnaliser la périodicité de la moyenne et la fenêtre de temps de rétroaction, avec une plus grande flexibilité.
  5. Pour les variétés et les périodes de tendance.

Analyse des risques

  1. Les lignes moyennes ont un certain retard, et des signaux de croisement fréquents peuvent survenir lorsque le marché fluctue fortement et que la tendance se répète, ce qui entraîne un nombre excessif de transactions et une augmentation des frais de traitement.
  2. Cette stratégie ne capte que les tendances à la hausse unilatérale et ne peut rien contre les tendances à la baisse unilatérale et les tendances à la chute.
  3. Le choix des paramètres de la ligne moyenne doit être optimisé en fonction des variétés et des périodes de temps, et les paramètres peuvent varier considérablement.
  4. La stratégie n’a pas de mesures de freinage et peut présenter un risque plus élevé de retrait en cas de forte volatilité.

Direction d’optimisation

  1. Il est possible d’envisager d’ajouter des mesures de stop-loss appropriées, telles que le stop-loss mobile basé sur l’ATR, pour contrôler la perte maximale d’une transaction.
  2. On peut envisager d’ajouter des conditions de filtrage, telles que le volume des transactions, la volatilité, etc., pour filtrer les faux signaux.
  3. L’optimisation des paramètres peut être envisagée, par exemple en utilisant des algorithmes intelligents tels que l’algorithme génétique pour trouver la combinaison optimale de paramètres.
  4. On peut envisager d’associer d’autres indicateurs techniques ou signaux de négociation à la croisée des lignes, comme le MACD, le RSI, etc., pour améliorer la fiabilité et l’efficacité de la stratégie.

Résumer

La stratégie de croisement de ligne SMA est une stratégie de suivi de tendance simple, facile à comprendre et pratique pour les débutants. Elle utilise les caractéristiques de la tendance de la ligne uniforme et les caractéristiques du signal de la ligne uniforme, permettant de capturer rapidement les changements de tendance du marché. Cependant, la stratégie présente également certaines limites et risques, tels que le retard, la fréquence des transactions et le manque de stop-loss.

Code source de la stratégie
/*backtest
start: 2023-03-22 00:00:00
end: 2024-03-27 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/
// © j0secyn

//@version=5
strategy("MA Cross", overlay=true, margin_long=100, margin_short=100, default_qty_value=100, default_qty_type=strategy.percent_of_equity, initial_capital=10000)

// === INPUT BACKTEST RANGE ===
fromDay   = input.int(defval = 1, title = "From Day", minval = 1, maxval = 31)
fromMonth = input.int(defval = 1, title = "From Month", minval = 1, maxval = 12)
fromYear  = input.int(defval = 2018,title = "From Year", minval = 1970)
thruDay   = input.int(defval = 30, title = "Thru Day", minval = 1, maxval = 31)
thruMonth = input.int(defval = 9, title = "Thru Month", minval = 1, maxval = 12)
thruYear  = input.int(defval = 2024, title = "Thru Year", minval = 1970)

slow_ma_length = input.int(defval = 100, title = "Slow MA lenght")
fast_ma_length = input.int(defval = 30, title = "Fast MA lenght")

// === FUNCTION EXAMPLE ===
start     = timestamp(fromYear, fromMonth, fromDay, 00, 00)            // backtest start  window
finish    = timestamp(thruYear, thruMonth, thruDay, 23, 59)            // backtest finish window
window()  => true

// === LOGIC ===
crossOv = ta.crossover(ta.sma(close, fast_ma_length), ta.sma(close, slow_ma_length))
crossUn = ta.crossunder(ta.sma(close, fast_ma_length), ta.sma(close, slow_ma_length))

// === EXECUTION ===
// strategy.entry("L", strategy.long, when = window() and crossOv)        // enter long when "within window of time" AND crossover
// strategy.close("L", when = window() and crossUn)                       // exits long when "within window of time" AND crossunder         
strategy.entry("L", strategy.long, when = window() and crossOv)        // enter long when "within window of time" AND crossover
strategy.close("L", when = window() and crossUn)                       // exits long when "within window of time" AND crossunder