
この戦略は,移動平均線収束散布指数 ((MACD) と交差量加重移動平均 ((VWMA) を組み合わせて,市場の動きを捉えます.これは,MACD直線図と短期VWMA交差を,入場信号を決定するために使用し,出場はMACD交差に完全に依存します.この戦略は,主に,レバレッジされたデリバティブ市場のために設計され,レバレッジ率と精度を柔軟に調整することで,異なる取引環境に対応します.
戦略の中核となるロジックは、次の主要な要素に基づいています。
戦略は,トレンド追跡 ((VWMA) と運動指数 ((MACD) を組み合わせて入場の正確性を向上させ,同時にMACD交差を迅速な応答の出場信号として利用してリスクを制御する.
これらのリスクを軽減するために,次のことが推奨されます: 1) 完全なパラメータの最適化と反測を行う; 2) 合理的なストップ・ロズと収益目標を設定する; 3) 定期的にレバレッジレベルを評価して調整する; 4) 偽信号を減らすために追加のフィルタリング条件の導入を検討する.
これらの最適化方向は,戦略の適応性と安定性を高め,偽信号と制御リスクを軽減することを目的としています. 戦略は,継続的な反復と改善によって,異なる市場環境で良好なパフォーマンスを維持する可能性があります.
“多指数動的適応型動量取引戦略”は,量化取引における多指数協同と動的調整の潜在性を示している.MACDとVWMAを巧妙に組み合わせることで,この戦略は,市場の動力を捉えながら,比較的信頼性の高い入場・出場シグナルを提供できる.その柔軟な杆と精度設定は,その高波動的なデリバティブ市場の環境に特に適している.しかし,ユーザーは,その杆による高いリターンの可能性と増加したリスクをバランスに注意する必要がある.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-09-24 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
leverage = input.int(1, title='Leverage', minval=1, maxval=100, step=1)
commission_value_input = input.int(3, title='Commission Value %', minval=1, maxval=100, step=1)
precision = input.int(2,title='Precision')
strategy("MACD & VWMA Equal Basis", overlay=true)
commission_value = (commission_value_input / 100) / leverage
leveragedContracts = math.max(math.round(strategy.equity * leverage / close, precision), 0)
// MACD settings
[macdLine, signalLine, histogram] = ta.macd(close, 12, 26, 9)
// VWMA settings
vwma20 = ta.vwma(close, 20)
vwma50 = ta.vwma(close, 50)
// Plot VWMA on chart
plot(vwma20, color=color.green, title="VWMA 20")
plot(vwma50, color=color.orange, title="VWMA 50")
// MACD buy/sell signals
macdLongEntrySignal = histogram > 0
macdLongExitSignal = histogram < 0
macdShortEntrySignal = histogram < 0
macdShortExitSignal = histogram > 0
// VWMA conditions for long and short positions
vwmaLongEntrySignal = vwma20 > vwma50
vwmaShortEntrySignal = vwma20 < vwma50
// Combined long entry signal: MACD buy signal with VWMA conditions
longEntry = macdLongEntrySignal and vwmaLongEntrySignal
longExit = ta.crossunder(macdLine, signalLine)
// Combined short entry signal: MACD sell signal with VWMA conditions
shortEntry = macdShortEntrySignal and vwmaShortEntrySignal
shortExit = ta.crossover(macdLine, signalLine)
// Execute long and short orders based on the conditions
if (longEntry)
strategy.entry("Long", strategy.long, qty = leveragedContracts)
if (longExit)
strategy.close("Long")
if (shortEntry)
strategy.entry("Short", strategy.short, qty = leveragedContracts)
if (shortExit)
strategy.close("Short")