Stratégie de volatilité à long terme basée sur l'identification des points hauts et bas


Date de création: 2024-02-18 09:57:11 Dernière modification: 2024-02-18 09:57:11
Copier: 0 Nombre de clics: 617
1
Suivre
1617
Abonnés

Stratégie de volatilité à long terme basée sur l’identification des points hauts et bas

Aperçu

Une stratégie de rupture de hautes et basses est une stratégie de volatilité à long terme basée sur l’identification de hautes et basses. La stratégie est orientée dans le sens des paramètres de la direction de la stratégie, faisant plus lorsque le prix le plus élevé de la dernière période de fenêtre spécifique est franchi et faisant moins lorsque le prix le plus bas de la dernière période de fenêtre spécifique est franchi.

Principe de stratégie

La stratégie utilise des paramètres d’entrée pour afficher le prix le plus élevé et le prix le plus bas de la ligne N à la racine K la plus proche, c’est-à-dire les hauts et les bas de la fluctuation, pour déterminer la direction de la stratégie en fonction des paramètres de direction. En cas de surenchère, l’entrée en bourse est effectuée en fonction de l’arrêt de gain lorsque le prix franchit le point le plus élevé de la ligne N à la racine K la plus proche. En cas de chute du prix au-dessous de la ligne N à la racine K la plus proche, l’entrée en bourse est annulée en fonction de l’arrêt de perte.

En outre, la stratégie définit également un stop-loss. Après avoir ouvert une position, le stop-loss est placé près du prix le plus bas; après la clôture, le stop-loss est placé près du prix le plus élevé. Cela permet d’éviter efficacement les pertes énormes causées par des actions unilatérales.

Analyse des avantages

Le plus grand avantage de cette stratégie est qu’elle permet de saisir les fluctuations clés près des hauts et des bas et, par conséquent, de réaliser des gains. De plus, la mise en place d’une ligne de stop-loss maîtrise efficacement le risque.

Voici quelques avantages:

  1. La stratégie est claire, les entrées et sorties sont jugées en franchissant les hauts et les bas.

  2. C’est une pratique classique de l’analyse technique qui utilise les hauts et les bas des oscillations pour trouver des opportunités de reprise.

  3. Le système de stop-loss est mis en place pour contrôler les risques et éviter les pertes massives causées par des actions unilatérales.

  4. La structure du code est claire, facile à comprendre et à modifier.

  5. Différents paramètres peuvent être entrés pour optimiser la stratégie, comme l’ajustement du nombre de cycles de points maximaux et minimaux.

Analyse des risques

Les principaux risques de cette stratégie résident dans les transactions erronées qui peuvent être effectuées à des niveaux élevés ou bas. Les risques spécifiques incluent:

  1. Les points les plus élevés et les plus bas sont susceptibles de provoquer une erreur de pénétration entraînant une erreur d’entrée.

  2. Un grand blocage pourrait être déclenché près du point de rupture.

  3. Les variétés tendances sont faciles à trouver et coûtent cher à déterminer leur prix.

  4. Une mauvaise configuration des paramètres peut également affecter les performances de la stratégie.

Parmi les solutions envisagées:

  1. Paramètres d’optimisation, nombre de cycles pour ajuster le jugement de la plus haute et de la plus basse valeur.

  2. Le nombre de personnes qui ont participé à l’attaque a augmenté.

  3. Distinguer les caractéristiques de la variété et éviter de l’utiliser dans les variétés tendances.

  4. Paramètres d’optimisation dynamique utilisant une méthode d’apprentissage automatique.

Orientation de l’optimisation de la stratégie

Cette stratégie peut être optimisée dans les directions suivantes:

  1. Optimisation du nombre de cycles maximum et minimum: le nombre de cycles actuellement fixé peut être modifié en optimisation dynamique pour éviter l’optimisation excessive du mode fixe.

  2. Augmentation de l’optimisation de l’arrêt de perte: l’amplitude de l’arrêt peut être ajustée dynamiquement en fonction d’indicateurs tels que l’ATR et la volatilité.

  3. Combinaison de plusieurs cycles de temps: les tendances peuvent être déterminées dans les cycles de temps plus élevés, les cycles de temps plus bas déterminent l’entrée.

  4. Augmentation de l’apprentissage automatique: utilisation de méthodes telles que les réseaux neuronaux pour prédire la probabilité de rupture de points potentiels de hauts et de bas, améliorer l’efficacité.

  5. Optimisation des algorithmes de stop-loss: amélioration des algorithmes pour minimiser le nombre de cas de stop-loss inefficaces déclenchés dans le cadre d’un stop-loss garanti.

Résumer

L’ensemble de la stratégie de rupture des hauts et des bas est une stratégie de quantification de longue ligne très pratique. Elle profite en capturant des opportunités de reprise près des hauts et des bas et en mettant en place des arrêts-pertes pour contrôler les risques, garantissant ainsi un retour sur investissement tout en contrôlant le retrait. La stratégie est recommandée pour une stratégie dont les paramètres sont flexibles et dont l’idée est claire.

Code source de la stratégie
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 4h
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/
// © tweakerID

// Long term strategy for managing a Crypto investment with Swing Trades of more than 1 day. The strategy buys with a 
// stop order at the Swing High price (green line) and sells with a stop order at the Swing Low price (red line). 
// The direction of the strategy can be adjusted in the Inputs panel.

//@version=4
strategy("Swing Points Breakouts", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=10000, commission_value=0.04)

direction = input(0, title = "Strategy Direction", type=input.integer, minval=-1, maxval=1)
strategy.risk.allow_entry_in(direction == 0 ? strategy.direction.all : (direction < 0 ? strategy.direction.short : strategy.direction.long))

//Inputss
i_SL=input(true, title="Use Swing Lo/Hi Stop Loss & Take Profit")
i_SwingLow=input(10, title="Swing Low Lookback")
i_SwingHigh=input(10, title="Swing High Lookback")
i_reverse=input(false, "Reverse Trades")
i_SLExpander=input(defval=0, step=1, title="SL Expander")

//Strategy Calculations
SwingLow=lowest(i_SwingLow)
SwingHigh=highest(i_SwingHigh)

//SL & TP Calculations
bought=strategy.position_size != strategy.position_size[1]
LSL=valuewhen(bought, SwingLow, 0)-((valuewhen(bought, atr(14), 0)/5)*i_SLExpander)
SSL=valuewhen(bought, SwingHigh, 0)+((valuewhen(bought, atr(14), 0)/5)*i_SLExpander)
islong=strategy.position_size > 0
isshort=strategy.position_size < 0
SL= islong ? LSL : isshort ? SSL : na

//Entries and Exits
strategy.entry("long", true, stop=i_reverse?na:SwingHigh, limit=i_reverse?SwingLow:na)
strategy.entry("short", false, stop=i_reverse?na:SwingLow, limit=i_reverse?SwingHigh:na)

if i_SL
    strategy.exit("longexit", "long", stop=LSL)
    strategy.exit("shortexit", "short", stop=SSL)

//Plots
plot(i_SL ? SL : na, color=color.red, style=plot.style_cross, title="SL")
plot(SwingLow, color=color.red)
plot(SwingHigh, color=color.green)