平均価格・数量・価値戦略


作成日: 2023-12-29 16:31:33 最終変更日: 2023-12-29 16:31:33
コピー: 0 クリック数: 686
1
フォロー
1621
フォロワー

平均価格・数量・価値戦略

概要

平均価格対取引量価値 (VWAP) 策略は,特定の時間の間の平均価格を追跡する策略である.この策略は,VWAPを基準として使用し,価格がVWAPより高くまたは低いときにポジションを開けてオーバーまたは空白する.また,取引を管理するために止損および停止条件を設定する.

戦略原則

この戦略は,まず,典型的な価格 (最高価格,最低価格,および閉店価格の平均値) と取引量 (取引量) の倍数の和を計算し,取引量 (取引量) の和を計算します. そして,その倍数の和を取引量 (取引量) の和で割って,VWAP値を計算します.価格が上を突破すると,VWAPを多く行います.価格が下を突破すると,空っぽになります.

多ポジションのストップ条件は,入場価格より価格が3%上昇したときにストップ;ストップ損失条件は,入場価格より価格が1%低下したときにストップ.空白ポジションも同様の条件である.

優位分析

VWAPの主な利点は以下の通りです.

  1. VWAPという公認の重要な統計指標を取引信号の基準として使用し,戦略をより効率的にします.

  2. VWPシグナルとストップロスを同時に使用することで,トレンドで利益を得たり,損失を減らすことができます.

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

リスク分析

この戦略にはいくつかのリスクがあります.

  1. VWAPは将来の価格を予測できないため,VWAP信号が遅滞する可能性があります.

  2. ストップ・ロスの設定が過度に緩やかになり,損失が増加する可能性があります.

  3. 追跡時間が長くなり,取引信号が多くなるほど,リールディスクの効果は異なる可能性があります.

これらのリスクは,パラメータの調整,停止損失アルゴリズムの最適化などの方法によって軽減できます.

最適化の方向

この戦略は以下の方向から最適化できます.

  1. VWAPのパラメータを最適化して,最適な計算周期を見つける.

  2. 移動ストップ,指数移動ストップなどの他のストップトラッキングアルゴリズムをテストできます.

  3. 他の指標をフィルターとして組み合わせてVWAP信号の誤りを回避できます.例えば,量能指標,ブリン帯指標などです.

要約する

全体として,平均価格取引量価値戦略は,vwapという重要な指標の予測力を利用し,ストップ・ストップ・ロスの条件を設定し,長期にわたって正の利益を得ることができます.しかし,市場変動によるリスクを軽減し,戦略の利益の余地を増やすために,他の戦略をさらに最適化して組み合わせる必要があります.

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

//@version=4
strategy("VWAP Strategy by Royce Mars", overlay=true)

cumulativePeriod = input(14, "Period")

var float cumulativeTypicalPriceVolume = 0.0
var float cumulativeVolume = 0.0

typicalPrice = (high + low + close) / 3
typicalPriceVolume = typicalPrice * volume
cumulativeTypicalPriceVolume := cumulativeTypicalPriceVolume + typicalPriceVolume
cumulativeVolume := cumulativeVolume + volume
vwapValue = cumulativeTypicalPriceVolume / cumulativeVolume

// Buy condition: Price crosses over VWAP
buyCondition = crossover(close, vwapValue)

// Short condition: Price crosses below VWAP
shortCondition = crossunder(close, vwapValue)

// Profit-taking condition for long positions: Sell long position when profit reaches 3%
profitTakingLongCondition = close / strategy.position_avg_price >= 1.03

// Profit-taking condition for short positions: Cover short position when profit reaches 3%
profitTakingShortCondition = close / strategy.position_avg_price <= 0.97

// Stop loss condition for long positions: Sell long position when loss reaches 1%
stopLossLongCondition = close / strategy.position_avg_price <= 0.99

// Stop loss condition for short positions: Cover short position when loss reaches 1%
stopLossShortCondition = close / strategy.position_avg_price >= 1.01

// Strategy Execution
strategy.entry("Buy", strategy.long, when=buyCondition)
strategy.close("Buy", when=shortCondition or profitTakingLongCondition or stopLossLongCondition)

strategy.entry("Short", strategy.short, when=shortCondition)
strategy.close("Short", when=buyCondition or profitTakingShortCondition or stopLossShortCondition)

// Plot VWAP on the chart
plot(vwapValue, color=color.blue, title="VWAP")