Système d'analyse de stratégie anormale multidimensionnelle du vendredi en or

MA RSI ROC SL TP MACD EMA RISK PNL ATR
Date de création: 2024-12-12 16:32:12 Dernière modification: 2024-12-12 16:32:12
Copier: 0 Nombre de clics: 402
1
Suivre
1617
Abonnés

Système d’analyse de stratégie anormale multidimensionnelle du vendredi en or

Aperçu

Cette stratégie est un système de négociation basé sur des anomalies du marché, qui exploite principalement les caractéristiques du comportement du marché entre la clôture du jeudi soir et la clôture du vendredi. La stratégie utilise des heures d’entrée et de sortie fixes pour vérifier l’efficacité de ce modèle de marché par un test de rétroaction.

Principe de stratégie

La logique fondamentale de la stratégie repose sur les éléments clés suivants :

  1. Conditions d’entrée: Les places sont prises à la clôture du jeudi, une date choisie en fonction de l’analyse des données historiques.
  2. Conditions de sortie: les positions sont libérées à la clôture du vendredi et la durée de leur tenue est fixe.
  3. Gestion des fonds: 10% des fonds du compte sont utilisés pour chaque transaction. Cette gestion conservatrice des positions aide à contrôler les risques.
  4. Exécution de la transaction: l’exécution de l’ordre au cours de clôture permet d’éviter les effets de la forte volatilité de la journée.

Avantages stratégiques

  1. Simplicité et clarté: les règles de négociation sont claires, sans combinaisons complexes d’indicateurs, faciles à comprendre et à exécuter.
  2. Risques maîtrisés: des durées de détention fixes et des programmes de gestion des fonds permettent d’évaluer et de contrôler les risques.
  3. Automatisation élevée: logique stratégique simple, adaptée à la programmation pour automatiser les transactions.
  4. Flexibilité: les paramètres peuvent être ajustés en fonction des différentes conditions du marché.

Risque stratégique

  1. Dépendance sur le temps: la stratégie est fortement dépendante d’une fenêtre de temps spécifique et peut être influencée par des informations importantes en dehors des heures de négociation.
  2. Changement de l’environnement du marché: les lois historiques de la statistique peuvent ne plus fonctionner à l’avenir et nécessitent une surveillance continue de la performance de la stratégie.
  3. Risques d’exécution: La liquidité peut être insuffisante à la clôture, ce qui entraîne une augmentation des points de glissement. Il est recommandé de gérer les risques de la manière suivante:
  • Réglage du stop-loss
  • Modification dynamique du temps de détention
  • Ajout de conditions de filtrage

Orientation de l’optimisation de la stratégie

  1. Introduction d’indicateurs de volatilité: des indicateurs ATR peuvent être ajoutés pour ajuster dynamiquement la taille de la position, ce qui rend la stratégie plus adaptable.
  2. Optimisation de l’horaire d’entrée: la combinaison de la forme des prix et des indicateurs techniques peut améliorer la précision de l’entrée.
  3. Amélioration du contrôle des risques: augmentation du mécanisme de stop-loss dynamique, protection à la fois rentable et avantageuse.
  4. Ajoutez des conditions de filtrage: envisagez d’ajouter un filtre de tendance pour éviter de négocier dans des conditions défavorables.

Résumer

La stratégie est un système de trading classique basé sur des anomalies du marché, qui permet de tirer des bénéfices potentiels grâce à une gestion stricte du temps et une gestion prudente des fonds. Bien que la logique de la stratégie soit simple, il faut néanmoins être attentif aux risques liés aux changements de l’environnement du marché. Il est recommandé d’adopter un contrôle de position plus conservateur et un mécanisme de gestion des risques plus sophistiqué lors des transactions en direct.

Code source de la stratégie
/*backtest
start: 2024-11-11 00:00:00
end: 2024-12-10 08:00:00
period: 4h
basePeriod: 4h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © piirsalu

//@version=5
strategy("Gold Friday Anomaly Strategy", 
     default_qty_type=strategy.percent_of_equity,
     slippage = 1, commission_value=0.0005,
     process_orders_on_close = true,
     initial_capital = 50000,
     default_qty_value=500,
     overlay = true)
     

/////////////////////////////////////////////////////////////////////////////////////
//                                 . USER INPUTS .                                 //
/////////////////////////////////////////////////////////////////////////////////////

// Define backtest start and end dates
st_yr_inp = input(defval=2000, title='Backtest Start Year')
st_mn_inp = input(defval=01, title='Backtest Start Month')
st_dy_inp = input(defval=01, title='Backtest Start Day')
en_yr_inp = input(defval=2025, title='Backtest End Year')
en_mn_inp = input(defval=01, title='Backtest End Month')
en_dy_inp = input(defval=01, title='Backtest End Day')

// Set start and end timestamps for backtesting
start = timestamp(st_yr_inp, st_mn_inp, st_dy_inp, 00, 00)
end = timestamp(en_yr_inp, en_mn_inp, en_dy_inp, 00, 00)

/////////////////////////////////////////////////////////////////////////////////////
//                              . STRATEGY LOGIC .                                 //
/////////////////////////////////////////////////////////////////////////////////////

// Check if the current day is Friday
isFriday = (dayofweek == dayofweek.friday)

// Initialize a candle counter
var int barCounter = 0

// Increment the candle counter on each new bar
barCounter := barCounter + 1

// Define trading session time ranges
pre_mkt = time(timeframe.period, '0400-0800:23456')
mkt_hrs = time(timeframe.period, '0800-1600:23456')
eod = time(timeframe.period, '1200-1600:23456')

/////////////////////////////////////////////////////////////////////////////////////
//                          . STRATEGY ENTRY & EXIT .                              //
/////////////////////////////////////////////////////////////////////////////////////

// Enter a long position on the first candle of Friday within the backtest period
if dayofweek == 4 and time >= start and time <= end
    strategy.entry("BuyOnFriday", strategy.long)

// Close the position after holding it for 4 candles
if (barCounter % 1 == 0)
    strategy.close("BuyOnFriday")