この戦略は"指数移動平均とボリューム重量化に基づく定量戦略"と呼ばれる.この戦略は主に指数移動平均とボリューム重量化という2つの要因を組み合わせて定量取引を実施する.この戦略は価格動向,ボリューム情報,最新の価格情報などを包括的に考慮し,市場の機会を効果的に把握し,一定の利点を持っています.
この戦略の主な指標は,指数的な移動平均値xMAVolPrice,ボリュームの指数的な移動平均値xMAVolと最新の閉値を組み合わせた nResで,次の式で計算されます.
xMAVolPrice = ema(volume * close, length)
xMAVol = ema(volume, length)
nRes = xMAVolPrice / xMAVol
if (nRes < close[1])
long
if (nRes > close[1])
short
nResが最後の閉店価格よりも低い場合,売り信号である最後の価格よりも低くなっていることを意味し,nResが最新の閉店価格よりも大きい場合,売り信号である最新の価格よりも高いことを意味します.
総括すると,戦略は,容量調整価格指標 nRes と最新の閉場価格を比較して,典型的な定量的な取引戦略であるロングとショートポジションの方向性を決定します.
この戦略の主な利点は以下の通りです.
多因子情報を組み合わせる.この戦略は,価格情報だけでなく,量情報も組み合わせて,市場の動向をより正確に判断するために,多因子特性を最大限に活用します.
誤った信号を減らす.ボリュームの重さは,不十分なボリュームによって引き起こされる誤ったブレイクをフィルタリングすることができます.これは不必要な取引を効果的に削減し,罠にはまりないようにすることができます.
簡単な移動平均と比較して,この戦略の指数的な移動平均は最新のデータにより敏感で,最近の市場変化を迅速に把握することができます.
戦略のアイデアはシンプルで明確で,理解し実行しやすいし,定量取引の要件を満たしています.
この戦略にはいくつかの利点がありますが,次のリスクも伴います.
音量情報は信頼性がない.音量指標は操作されやすいし安定性がないため,誤解を招く可能性があります.
長期および短期判断の機会が少ない. 単純なトレンドフォロー戦略と比較して,この戦略が判断する機会は比較的小さいため,容易には不十分な取引につながる可能性があります.
パラメータ選択の難しさ.移動平均日長などのパラメータの選択は戦略のパフォーマンスに大きな影響を与えます.不適切な選択は収益を大幅に低下させることがあります.
激動する市場では,指標計算が最新の価格に間に合うことができず,最良の取引ポイントが見逃される可能性があります.
対応する解決策:パラメータ設定を最適化し,ポジションサイズを厳格に制御し,ストップ損失と利益を取ることを設定し,検証のための他の要因指標を組み合わせ,ポジション保持頻度を適切に調整する.
この戦略を最適化するための主な方向は以下の通りです.
より柔軟なオープンポジション論理. nRes と閉じる価格の差が特定の
ポジション管理のメカニズムを増強し,市場の変動に応じて,リスクを効果的に制御するために,それぞれの取引のサイズを動的に調整する.
他の要因を組み合わせる.戦略判断をより包括的にするために,感情指標,基本要素など,より多くの要因を追加することができます.
アダプティブパラメータ最適化アルゴリズム.長さなどのパラメータを自動的に最適化するためにアルゴリズムを確立することができ,異なるサイクル市場の特徴に応じて適応的に調整できます.
機械学習モデルを使用する.RNNおよび他のディープラーニングモデルは,エンドツーエンド非線形戦略を達成するために多変形機能モデリングに使用することができます.
この戦略は,価格とボリュームなどの要因を包括的に考慮し,取引方向を決定するために,ボリューム調整価格指標を最新の閉店価格と比較する.単一の指標と比較して,より豊富な情報と誤った信号の削減の利点があります.しかし,ボリューム操作や判断タイミングの減少などのリスクにも直面しています.将来,開設ポジション論理,ポジション管理,より多くの要因を組み込むなどの側面は,戦略をより効果的にするために改善することができます.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 06/03/2017 // The related article is copyrighted material from Stocks & Commodities 2009 Oct // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="Combining Exponential And Volume Weighting", overlay=true) length = input(22, minval=1) reverse = input(false, title="Trade reverse") xMAVolPrice = ema(volume * close, length) xMAVol = ema(volume, length) nRes = xMAVolPrice / xMAVol pos = iff(nRes < close[1], 1, iff(nRes > close[1], -1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1 ) strategy.entry("Long", strategy.long) if (possig == -1 ) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(nRes, color=blue)