Stratégie de contre-test de l'oscillateur de prévision des points pivots

Auteur:ChaoZhang est là., Date: 2023-12-20 à 13h44.26
Les étiquettes:

img

Résumé

Cette stratégie teste l'oscillateur Pivot Point Forecast développé par Tushar Chande. L'oscillateur calcule la différence en pourcentage entre le prix de clôture et le prix prévu de régression linéaire n-période.

La logique de la stratégie

La stratégie utilise l'oscillateur de prévision de point pivot pour déterminer la direction du marché. Plus précisément, elle calcule la différence en pourcentage entre le prix prévu de régression linéaire n-période et le prix de clôture réel. Lorsque la différence en pourcentage dépasse 0, elle est longue. Lorsque la différence en pourcentage dépasse 0, elle est courte.

  1. Calculer le prix de prévision de régression linéaire n-période xLG
  2. Calculer la différence en pourcentage entre le prix de clôture et le prix prévu xCFO
  3. Déterminer la relation entre xCFO et 0 pour le signal de sortie possig
    1. xCFO > 0 et long est autorisé, possig = 1
    2. xCFO < 0 et court est autorisé, possig = -1
    3. Dans le cas contraire, possig = 0
  4. Allez long ou court basé sur le signal possig

La stratégie est simple et directe, comparant le prix réel avec le prix prévu pour déterminer si le marché est surestimé ou sous-estimé, générant ainsi des signaux de trading.

Analyse des avantages

La stratégie présente les avantages suivants:

  1. Une logique claire, facile à comprendre et à mettre en œuvre.
  2. Peu de paramètres, facile à régler.
  3. Flexibilité dans le choix des délais, adaptabilité aux différents marchés.
  4. C'est pratique pour changer entre long et court.
  5. L'indicateur visuel forme des signaux de trading clairs.

Analyse des risques

La stratégie comporte également certains risques:

  1. La prédiction de la régression linéaire est rapide, mais peut ne pas être efficace.
  2. Une mauvaise sélection de paramètres peut entraîner une survente.
  3. Les événements du cygne noir peuvent provoquer des signaux incorrects.

Les contre-mesures:

  1. Combiner avec d'autres indicateurs pour assurer la validité de la prédiction de régression linéaire.
  2. Optimiser les paramètres pour réduire la fréquence des transactions.
  3. Ajouter un stop loss pour contrôler les pertes d'une seule transaction.

Directions d'optimisation

La stratégie peut être améliorée dans les domaines suivants:

  1. Combiner avec MA et d'autres indicateurs pour enrichir les signaux de négociation.
  2. Ajoutez un stop-loss pour éviter les pertes énormes.
  3. Optimisez les paramètres pour trouver la meilleure combinaison.
  4. Ajoutez des bénéfices automatiques.
  5. Considérez les coûts de négociation, définissez un stop loss raisonnable et profitez.

Conclusion

L'oscillateur de prévision de point pivot est une stratégie de trading quantique utilisant des prix de prévision de régression linéaire. La stratégie a une logique simple et des paramètres flexibles, générant des signaux de trading clairs.


/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 19/03/2018
// The Chande Forecast Oscillator developed by Tushar Chande The Forecast 
// Oscillator plots the percentage difference between the closing price and 
// the n-period linear regression forecasted price. The oscillator is above 
// zero when the forecast price is greater than the closing price and less 
// than zero if it is below.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Chande Forecast Oscillator Backtest", shorttitle="CFO")
Length = input(14, minval=1)
Offset = input(0)
reverse = input(false, title="Trade reverse")
hline(0, color=black, linestyle=line)
xLG = linreg(close, Length, Offset)
xCFO = ((close -xLG) * 100) / close
pos = iff(xCFO > 0, 1,
       iff(xCFO < 0, -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(xCFO, color=red, title="CFO")

Plus de