Cette stratégie juge le mouvement futur des prix en analysant la différence entre les prix de clôture de deux jours consécutifs, dans le but de mettre en œuvre le trading à court terme.
La logique de base de cette stratégie consiste à comparer le prix de clôture d'aujourd'hui avec le prix de clôture d'hier.
La clé ici est de fixer un seuil raisonnable. Si le seuil est trop grand, il manquera de plus petites fluctuations de prix. Si le seuil est trop petit, il déclenchera un trading excessivement irrationnel en raison de fluctuations normales. La stratégie adopte une conception de seuil réglable avec une valeur par défaut de 0,004 et une étape de 0,001. Des seuils appropriés peuvent être sélectionnés par backtesting basé sur des données historiques.
En résumé, cette stratégie capture les variations de prix entre deux jours de négociation consécutifs, juge les éventuelles tendances futures des prix en filtrant les fluctuations normales à travers les seuils et mène ainsi des transactions à court terme.
Pour lutter contre ces risques, considérez:
La stratégie peut être optimisée dans les aspects suivants:
Test en arrière-plan à plusieurs délais- Utiliser des délais différents (quotidien, de 4 heures, d'une heure, etc.) pour tester les paramètres en arrière-plan et sélectionner les délais et paramètres optimaux.
Indicateurs de volatilité combinés- Ajouter des indicateurs qui tiennent compte de la volatilité des prix, tels que l'ATR, pour mieux établir les seuils dynamiques.
Ajouter une logique de stop-loss- Fixez des points de stop-loss raisonnables pour contrôler les pertes uniques.
Optimiser la gestion des positions- Optimiser la taille des positions initiales et les règles additionnelles pour augmenter la rentabilité tout en assurant un stop loss.
Considérez les coûts de négociation- Ajoutez les coûts de négociation comme les commissions et les glissades dans le backtesting pour être plus proche du trading en direct.
Introduire l'apprentissage automatique- Appliquer des algorithmes d'apprentissage automatique pour extraire plus de fonctionnalités et créer des signaux de trading plus forts.
Cette stratégie juge les tendances futures des prix en fonction des différences de prix de clôture, en utilisant une approche simple et intuitive pour concevoir des stratégies de trading à court terme. La stratégie est facile à mettre en œuvre et adaptée aux opérations à court terme, mais peut comporter certains risques de perte.
/*backtest start: 2023-08-28 00:00:00 end: 2023-09-27 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Daily Close Comparison Strategy (by ChartArt) repainting results", 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 repainting results", type=float, defval=0.004, 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)