定量戦略 - ネガティブボリュームインジケーター反転戦略


作成日: 2023-12-21 12:12:04 最終変更日: 2023-12-21 12:12:04
コピー: 1 クリック数: 675
1
フォロー
1623
フォロワー

定量戦略 - ネガティブボリュームインジケーター反転戦略

概要

この戦略は,ネガティブ・ボリューム・インデックス・リバーサル・ストラテジー (Negative Volume Index Reversal Strategy) と呼ばれる.この戦略は,ネガティブ・ボリューム・インデックス・リバーサル・ストラテジー (NVI) とその移動平均を使って,長短信号を構成し,条件を満たしたときにリバーサル・トレードを行う.これは,リバーサル・ストラテジーの類である.

戦略原則

負量指標反転戦略の核心指標は負量指標 ((NVI) である.NVIの計算式は次のとおりである.

1日の取引量 < 前日の取引量:NVI = 前日のNVI + 1日の価格変動率

その日の交通量 >= 前日の交通量:NVI = 前日のNVI

つまり,NVIは,取引量縮小の日にのみ更新され,価格変化率の加減によって価格動向を反映する.また,NVIが長短信号を構成する論理は次のとおりである.

  • NVIがN日移動平均より高いとき,さらに
  • NVIがN日間移動平均より低いとき空白

商品の価格が下がった時に,逆転取引ができます.

戦略的優位性

ネガティブ・インディケーターの反転戦略の主な利点は以下の通りです.

  1. 交差量信号を利用して,逆転点を見つけることができ,一定のタイミングの優位性がある.

  2. 戦略の論理はシンプルで,理解し,実行しやすい.

  3. パラメータを調整することで最適化され,異なる市場環境に適応できます.

戦略リスク

負の指標の逆転策にはいくつかのリスクがあります.

  1. 取引量信号の正確さは保証できません.誤った取引の確率はあります.

  2. パラメータの設定が不適切である場合,取引が頻繁になり,信号が不明になる可能性があります.

  3. データ源の信頼性を確保し,誤ったデータ量のリスクを回避する.

これらのリスクは,パラメータの最適化や,ストップ・ロスの戦略などによって軽減できます.

最適化の方向

負量指標の逆転戦略は,以下のいくつかの点で最適化できます.

  1. 移動平均のパラメータを最適化して,市場特性をよりよく表すパラメータを見つける.

  2. 他の指標のフィルターも加え,必要のない誤った取引を避けます. 例えば,拡大レベルのトレンド判断.

  3. 単一損失を制限する強力な止損法と組み合わせる.

  4. 異なる品種のパラメータ設定の違いをテストし,自適応パラメータを設定する.

要約する

負の指標逆転戦略は,取引量縮小時に逆転操作を行うことによって,潜在的トレンド逆転点を捉えることを目的としています.この戦略は,単純で分かりやすい利点がありますが,同時に間違いの取引のリスクもあります.パラメータ最適化,補助指標の追加などによって戦略の安定性と収益性を向上させることができます.全体的に見ると,負の指標逆転戦略は,優れた開発と展望を持っています.

ストラテジーソースコード
/*backtest
start: 2023-12-13 00:00:00
end: 2023-12-20 00:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter 11/08/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
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Negative Volume Index Backtest", shorttitle="NVI Str")
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="NVI")
plot(nResEMA, color=blue, title="EMA")