ポジティブ・ボリューム・インデックス戦略は,昨日のボリュームと今日のボリュームを比較する.ボリュームが拡大してポジティブ・ボリューム・インデックスを形成する日に価格変化を計算し,取引信号を生成するために移動平均と比較する.この戦略は,ボリュームと価格の同時拡大の市場原理に従う.
この戦略は,まず日々の価格変動xROCを計算する.その後,今日のボリュームと昨日のボリュームを比較する[1].今日のボリュームが大きい場合,今日の正のボリュームインデックスnResは昨日のボリュームインデックスnRes[1]プラスxROCである.今日のボリュームが昨日のボリュームより小さいか等しい場合,今日のボリュームインデックスは昨日のボリュームと同じである[1].
ポジティブなボリュームインデックス nRes を計算した後,そのN日移動平均 nResEMA と比較する. nRes が nResEMA より大きい場合,それは長い信号である. nRes が nResEMA より小さい場合,それは短い信号である.
この戦略は,ポジティブなボリュームインデックスと移動平均値の関係に従って取引信号を生成する.インデックスは移動平均値を超えると,購入信号である.インデックスは下を通ると,売却信号である.
この戦略の利点は以下の通りです.
市場動向を記録する 音量変化を観察する
市場が上昇する可能性を示唆している
実行とバックテストの論理はシンプルです
移動平均パラメータを調整することで取引頻度は制御できます.
この戦略の主なリスクは,
量拡大は必ずしも価格拡大を意味するものではありません.差異は起こり得ます.
合理的なストップ・ロスは,損失を制御するために設定されるべきです.
インデックスと移動平均値の値変動からの信号
異常音量や過度に最適化することで 誤った信号が発信されます
戦略は以下の側面で最適化できます.
信号フィルタリングのためにMACD,KDJなどの他の技術指標を追加してテストします.
最適なバランスを確保するために移動平均パラメータを最適化します.
リスクをコントロールするために ストップ・ロスのメカニズムを追加します
リスクを徐々に減らすために ポジションの部分的な出口を検討します
特定の製品のパラメータを最適化して強さを向上させる.
ポジティブ・ボリューム・インデックス戦略は,ボリューム変化に基づいて取引を設計し,一部の市場フォローする能力を有する.しかし,ボリュームと価格の間の差異は注意すべきである.パラメータを最適化し,ストップ・ロスを設定し,インジケーターを追加することによって,リスクを制御し,パフォーマンスを向上させるために戦略を改善することができる.価格・ボリューム関係を調査し,市場のタイミングを支援するのに適している.
/*backtest start: 2023-08-18 00:00:00 end: 2023-09-17 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 11/10/2017 // The theory behind the indexes is as follows: On days of increasing volume, // you can expect prices to increase, and on days of decreasing volume, you can // expect prices to decrease. This goes with the idea of the market being in-gear // and out-of-gear. Both PVI and NVI work in similar fashions: Both are a running // cumulative of values, which means you either keep adding or subtracting price // rate of change each day to the previous day`s sum. In the case of PVI, if today`s // volume is less than yesterday`s, don`t add anything; if today`s volume is greater, // then add today`s price rate of change. For NVI, add today`s price rate of change // only if today`s volume is less than yesterday`s. // // You can change long to short in the Input Settings // WARNING: // - For purpose educate only // - This script to change bars colors. //////////////////////////////////////////////////////////// strategy(title="Positive Volume Index", shorttitle="Positive Volume Index") EMA_Len = input(255, minval=1) reverse = input(false, title="Trade reverse") xROC = roc(close, 1) nRes = iff(volume > volume[1], nz(nRes[1], 0) + xROC, nz(nRes[1], 0)) nResEMA = ema(nRes, EMA_Len) pos = iff(nRes > nResEMA, 1, iff(nRes < nResEMA, -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=red, title="PVI") plot(nResEMA, color=blue, title="EMA")