Stratégie de contre-test dynamique des points pivot

Auteur:ChaoZhang est là., Date: 2023-12-29 15h50 et 57 min
Les étiquettes:

img

Résumé

Cette stratégie crée des positions longues ou courtes basées sur les niveaux de support et de résistance calculés à partir des prix les plus élevés, les plus bas et de clôture de la journée de négociation précédente.

Principe de stratégie

  1. Calculer le niveau de support S1, le niveau de résistance R1 et le point pivot vPP de la journée en cours sur la base du prix le plus élevé xHigh, le prix le plus bas xLow et le prix de clôture xClose de la journée de négociation précédente.

    vPP = (xHigh+xLow+xClose) / 3

    Le nombre de points de contact est le nombre de points de contact de l'appareil.

    Le nombre de points de contact doit être le même que le nombre de points de contact.

  2. Déterminez si le prix dépasse vR1 ou vS1. Allez long si le prix dépasse vR1 et allez court si le prix dépasse vS1.

    pos = iff(close > vR1, 1, si (close < vS1, -1, nz(pos[1], 0)))

  3. Possig enregistre la direction réelle du trading. Si le reverse trading est activé avec reverse=true, le signal de trading est inversé.

  4. Allez long quand vR1 est cassé et allez court quand vS1 est cassé selon le signal possig.

Les avantages de la stratégie

  1. La stratégie utilise des niveaux de support et de résistance dynamiques pour capturer les mouvements de tendance.
  2. Les niveaux de support et de résistance sont mis à jour quotidiennement, ce qui les rend dynamiques.
  3. Les transactions longues et courtes sont configurables pour s'adapter à différents environnements de marché.
  4. La logique de la stratégie est simple et claire pour une compréhension et une mise en œuvre faciles.
  5. Les visualisations des niveaux de support et de résistance permettent une détection intuitive des changements de tendance.

Analyse des risques

  1. Des signaux d'achat et de vente inutiles peuvent être déclenchés si le marché est dans une fourchette.
  2. Si des mouvements de tendance extrêmes se produisent, le support/résistance brisé peut s'étendre continuellement, entraînant des pertes.
  3. Le calcul du point de pivotement et du support/résistance est simple et nécessite une optimisation supplémentaire.

Gestion des risques:

  1. Ajustez la taille des positions pour limiter les pertes d'une seule transaction.
  2. Le montant de l'obligation est calculé sur la base de l'indice de risque.
  3. Ajoutez des filtres basés sur d'autres indicateurs pour éviter une survente sur des marchés variés.

Des possibilités d'amélioration

  1. Optimiser le calcul du support et de la résistance pour améliorer la prévisibilité.
  2. Incorporer des indicateurs de tendance et de dynamique pour éviter les transactions inutiles.
  3. Ajouter une stratégie de stop loss pour contrôler les pertes uniques et maximales.
  4. Utiliser l'apprentissage automatique pour optimiser dynamiquement les niveaux de support/résistance.

Résumé

Cette stratégie permet de réaliser des transactions longues ou courtes en fonction des niveaux de support et de résistance dynamiques de rupture de prix. La logique est simple à comprendre et à mettre en œuvre tout en étant capable d'identifier efficacement les renversements de tendance. Cependant, des risques existent et des optimisations supplémentaires avec des indicateurs supplémentaires sont nécessaires pour générer des signaux de trading plus fiables. Dans l'ensemble, la stratégie sert bien d'indicateur d'assistance ou de bloc de construction de base dans les systèmes de trading quantitatif.


//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 14/06/2018
// This Pivot points is calculated on the current day.
// Pivot points simply took the high, low, and closing price from the previous period and 
// divided by 3 to find the pivot. From this pivot, traders would then base their 
// calculations for three support, and three resistance levels. The calculation for the most 
// basic flavor of pivot points, known as ‘floor-trader pivots’, along with their support and 
// resistance levels.
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Dynamic Pivot Point Backtest", shorttitle="Dynamic Pivot Point", overlay = true)
reverse = input(false, title="Trade reverse")
xHigh  = request.security(syminfo.tickerid,"D", high[1])
xLow   = request.security(syminfo.tickerid,"D", low[1])
xClose = request.security(syminfo.tickerid,"D", close[1])
vPP = (xHigh+xLow+xClose) / 3
vR1 = vPP+(vPP-xLow)
vS1 = vPP-(xHigh - vPP)
pos = iff(close > vR1, 1,
       iff(close < vS1, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(vS1, color=#ff0000, title="S1", style = circles, linewidth = 1)
plot(vR1, color=#009600, title="R1", style = circles, linewidth = 1)

Plus de