量的な取引戦略 - 量的なトレンド追跡の開設

作者: リン・ハーンチャオチャン開催日:2024年1月12日 14:46:04
タグ:

img

概要

この戦略は,価格動向の傾向を追跡し,取引量の変化と組み合わせて,量動向の発見の自動開拓操作を実現する.この戦略は,価格変化傾向を判断するために移動平均システムを使用して,開通確認信号と同じ方向での取引量変化を組み合わせます.

戦略原則

定量取引戦略の基本論理は,価格動向トレンド開通と取引量の変化のマッチング関係を追跡することに基づいています.具体的には,戦略は,閉値と開値の間の差を価格変化として使用し,その日の取引量に倍増して価格と取引量の合同曲線を得ます.この合同曲線は価格変化トレンドを反映し,取引量は同時に関係に伴います.その後,この合同曲線の移動平均を定量トレンドベンチマークとして計算します.合同曲線が移動平均を貫通すると,購入信号が生成されます.移動平均を下回ると,販売信号が生成され,価格動向の変化の定量追跡の開業操作を実現します.

利点分析

この戦略は,価格動向の傾向と取引量の変化を組み合わせ,価格に敏感でない偽動向を効果的にフィルタリングし,開設リスクを軽減し,開設精度を向上させる.純粋な価格技術指標と比較して,定量的な追跡効果が優れている.この戦略は,動向平均系を使用して動的ベンチマークラインを設定し,市場の状況の変化に自動的に適応し,柔軟性が高い.

リスク分析

この戦略は,定量的傾向の合理性を決定するために主に価格・量関係に依存する.価格と量間の関係が不一致になれば,判断の誤差のリスクが増加する.また,移動平均パラメータの不適切な設定も戦略の有効性に影響を与える.さまざまな品種と市場環境のために最適化およびテストする必要があります.

最適化方向

戦略を最適化するために,変動指標を使用してトレンド品質を決定する,センチメント指標を導入して市場心理を決定するなど,より多くのフィルターを統合することを検討する.また,最適なパラメータポートフォリオを見つけるために異なる移動平均システムの下で戦略の有効性の変化をテストすることも可能です. ルール判断に機械学習モデルトレーニングを追加することはフォローアップ最適化の方向でもあります.

概要

この定量的な取引戦略は,価格動向と取引量関係を追跡し判断する上で自動開通を実現し,価格動向と取引熱意のマッチングを定量化することで,無効なシグナルを効果的にフィルタリングし,開通の成功率を向上させることができます.戦略の最適化にはまだ多くの余地があり,継続的な研究と改善に値します.


/*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 )) 



もっと