
この戦略は,価格変化のトレンドを追跡し,取引量の変化を組み合わせて,量化トレンドを発見した自動開場操作を実現する.戦略は均線システムを使用して,価格変化のトレンドを判断し,取引量の同方向変化を組み合わせて,開場確認シグナルとして使用する.
量化取引戦略 - 取引量化トレンドの追跡の核心論理は,価格変化の傾向と取引量変化のマッチング関係に基づいています.具体的には,戦略は,閉盘価格を減算して開盘価格の差を価格変化量として使用し,その日の取引量で価格と量の結合曲線を得ます.この結合曲線は,価格変化の傾向と取引量との関係を同時に反映します.そして,この結合曲線の平均線を計算し,量化トレンドの基准線として使用します.結合曲線上のその線を通るとき,買入シグナルが生じ,その線を通るとき,売り出シグナルが生じ,価格変化の傾向の変化を量化して追跡する営業を開始します.
この戦略は,価格変化の傾向と取引量の変化を組み合わせて,いくつかの量値不一致の偽動向を効果的にフィルタリングし,ポジション開設のリスクを軽減し,ポジション開設の精度を向上させます.純価格技術指標と比較して,量的な追跡効果が優れています.この戦略は,均線システムを使用して動的基準線を設定し,市場環境の変化に自動的に適応し,柔軟性が高くなります.
この戦略は,主に価格と量との関係が量化傾向の合理性を判断することに依存し,価格と量間の不一致が起こると,誤判のリスクが増加する.また,均線パラメータの設定が不適切であることも戦略の効果に影響する.異なる品種と市場環境に対して最適化テストが必要である.
更に多くのフィルター最適化戦略を追加することを考えることができる.例えば,トレンドの質を判断する波動率指標,市場の心理面を判断する感情指標を導入するなどである.さらに,異なる均等線体系の下での戦略効果の変化をテストし,最適なパラメータの組み合わせを探すこともできる.機械学習モデルの訓練判断ルールを追加することも,後続的な最適化方向である.
この量化取引戦略は,価格と取引量関係の追跡判断に基づいて,自動でポジションを開設し,価格の傾向と取引熱度を量的にマッチすることで,無効信号を効果的にフィルターして,ポジション開設の成功率を向上させることができる.戦略の最適化の余地はまだ十分であり,改善を続ける研究に値する.
/*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 ))