Stratégie de comparaison quotidienne des prix de clôture

Auteur:ChaoZhang est là., Date: 2023-09-17 18h28 et 31
Les étiquettes:

Résumé

Cette stratégie détermine la direction en comparant le prix de clôture de la barre actuelle au prix de clôture de la barre précédente.

La logique de la stratégie

  1. Calculer la différence en pourcentage entre le prix de clôture des barres actuelles et le prix de clôture des barres précédentes.

  2. Si le pourcentage est supérieur au seuil, cela indique une hausse du prix, allez long.

  3. Si le pourcentage est inférieur au seuil négatif, cela indique une baisse du prix, allez court.

  4. Le seuil est défini à 0, ce qui signifie aller long sur toute hausse et court sur toute baisse.

  5. Aucune logique de stop loss ou de prise de profit, reposant uniquement sur la persistance de la tendance pour la rentabilité.

Analyse des avantages

  1. Méthode de détermination de tendance très simple et intuitive, facile à comprendre et à mettre en œuvre.

  2. Il n'est pas nécessaire de calculer d'indicateurs techniques, ce qui réduit la consommation de ressources.

  3. Se concentre uniquement sur les informations de base sur les prix, en évitant le bruit inutile des indicateurs.

  4. Excellents résultats de backtest mais performance en direct est discutable.

Analyse des risques

  1. Aucun stop-loss n'expose à des risques de perte illimités.

  2. Inefficace sur les marchés agités, prédisposé à être piégé.

  3. Il y a des risques de suradaptation, les performances en direct doivent encore être validées.

  4. Le simple fait de suivre la tendance ne peut pas garantir des profits, les profits réalisés sont limités.

Directions d'optimisation

  1. Ajouter un stop-loss pour contrôler le risque.

  2. Incorporer des mesures de volatilité pour réduire les perturbations sur les marchés instables.

  3. Testez différents paramètres de période pour une robustesse accrue.

  4. Ajouter des indicateurs de détermination de tendance pour éviter les mouvements de prix irrationnels.

  5. Optimiser les bénéfices en prenant comme point de vue le prix le plus élevé pour élargir le potentiel de profit.

Résumé

L'idée de base de la stratégie est simple, mais sa performance en direct est discutable. Des mécanismes de contrôle des risques plus solides et des tests d'optimisation des paramètres sont nécessaires avant l'application réelle.


/*backtest
start: 2023-08-17 00:00:00
end: 2023-09-16 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy("Daily Close Comparison Strategy (by ChartArt)", shorttitle="CA_-_Daily_Close_Strat", overlay=false)

// ChartArt's Daily Close Comparison Strategy
//
// Version 1.0
// Idea by ChartArt on February 28, 2016.
//
// This strategy is equal to the very
// popular "ANN Strategy" coded by sirolf2009,
// but without the Artificial Neural Network (ANN).
//
// Main difference besides stripping out the ANN
// is that I use close prices instead of OHLC4 prices.
// And the default threshold is set to 0 instead of 0.0014
// with a step of 0.001 instead of 0.0001.
//
// This strategy goes long if the close of the current day
// is larger than the close price of the last day.
// If the inverse logic is true, the strategy
// goes short (last close larger current close).
//
// This simple strategy does not have any
// stop loss or take profit money management logic.
//
// List of my work: 
// https://www.tradingview.com/u/ChartArt/
// 
//  __             __  ___       __  ___ 
// /  ` |__|  /\  |__)  |   /\  |__)  |  
// \__, |  | /~~\ |  \  |  /~~\ |  \  |  
// 
// 

threshold = input(title="Price Difference Threshold", type=float, defval=0, step=0.001)

getDiff() =>
    yesterday=security(syminfo.tickerid, 'D', close[1])
    today=security(syminfo.tickerid, 'D', close)
    delta=today-yesterday
    percentage=delta/yesterday
    
closeDiff = getDiff()
 
buying = closeDiff > threshold ? true : closeDiff < -threshold ? false : buying[1]

hline(0, title="zero line")

bgcolor(buying ? green : red, transp=25)
plot(closeDiff, color=silver, style=area, transp=75)
plot(closeDiff, color=aqua, title="prediction")

longCondition = buying
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = buying != true
if (shortCondition)
    strategy.entry("Short", strategy.short)

Plus de