Cette stratégie réalise l'opération d'ouverture automatique de la découverte des tendances quantitatives en suivant les tendances du mouvement des prix et combiné avec les changements dans le volume des transactions.
La logique de base de l'ouverture de suivi de tendance quantitative est basée sur le suivi de la relation de correspondance entre les tendances du mouvement des prix et les changements de volume de négociation. Plus précisément, la stratégie utilise la différence entre le prix de clôture et le prix d'ouverture comme changement de prix, puis la multiplie par le volume de négociation de la journée pour obtenir la courbe conjointe prix et volume. Cette courbe conjointe peut refléter la tendance de changement de prix et le volume de négociation accompagne la relation en même temps. Calcule ensuite la moyenne mobile de cette courbe conjointe comme référence de tendance quantitative. Lorsque la courbe conjointe pénètre sa moyenne mobile, un signal d'achat est généré. Lorsqu'elle tombe en dessous de sa moyenne mobile, un signal de vente est généré, réalisant ainsi l'opération d'ouverture du suivi quantitatif des changements de tendance de prix.
Cette stratégie combine les tendances des mouvements de prix et les changements de volume de négociation pour filtrer efficacement certaines fausses tendances insensibles aux prix et réduire les risques d'ouverture et améliorer la précision d'ouverture.
Cette stratégie repose principalement sur la relation prix-volume pour déterminer la raisonnabilité de la tendance quantitative. Si la relation prix-volume devient inégalée, cela entraînera une augmentation des risques de jugement erroné. En outre, un mauvais réglage des paramètres de moyenne mobile affectera également l'efficacité de la stratégie. Il faut optimiser et tester pour différentes variétés et environnements de marché.
Il est également possible de tester le changement d'efficacité de la stratégie sous différents systèmes de moyennes mobiles pour trouver le portefeuille de paramètres optimal. L'ajout de la formation de modèles d'apprentissage automatique pour juger des règles est également la direction de l'optimisation de suivi.
Cette stratégie de trading quantitative réalise une ouverture automatique basée sur le suivi et le jugement de la relation entre la tendance des prix et le volume des transactions, en quantifiant les tendances des prix correspondantes avec l'enthousiasme du trading, elle peut filtrer efficacement les signaux invalides et améliorer le taux de réussite de l'ouverture.
/*backtest start: 2023-12-12 00:00:00 end: 2024-01-11 00:00:00 period: 30m basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © avsr90 //@version=5 strategy(title="Lp-Op vol",shorttitle="LPV", max_bars_back = 5000,overlay=false,format=format.volume ) //Resolutions Resn=input.timeframe(defval="",title="resolution") Resn1=input.timeframe(defval="D",title="resolution") //Intraday Open and Last Price and Last price- Open Price calculations. Last_Price=math.round_to_mintick(close) Open_Price = request.security(syminfo.tickerid ,Resn1,close[1],barmerge.gaps_off, barmerge.lookahead_on) Op_Cl=math.round_to_mintick(Last_Price-Open_Price) //length from Intra Day Open Price Nifnum= ta.change(Open_Price) Length_Intraday=int(math.max(1, nz(ta.barssince(Nifnum)) + 1)) //Input for Length for Volume Length_Vol=input(defval=20, title="L for Vol") // Last Price- Open price Volume, Average Intraday Last price-Open Price Volume //and Volume Bars calculations. Op_Cl_Vol=(Op_Cl*volume) Avg_Vol_Opcl=ta.sma(Op_Cl_Vol,Length_Intraday) Vol_Bars=ta.sma(volume,Length_Vol) //Plots plot(Op_Cl_Vol,color=Op_Cl_Vol>0 ? color.green:color.red,title="OPCLV") plot(Avg_Vol_Opcl, title="Avg Vol", color=color.fuchsia) plot(Vol_Bars, title="Vol Bars", color=color.yellow) //Strategy parameters startst=timestamp(2015,10,1) strategy.entry("lo",strategy.long,when= ta.crossover(Op_Cl_Vol,Avg_Vol_Opcl) and ta.crossover(volume,Vol_Bars)) strategy.entry("sh",strategy.short,when=ta.crossunder(Op_Cl_Vol,Avg_Vol_Opcl)and ta.crossunder(volume,Vol_Bars ))