モメンタムボリンジャーバンドダブル移動平均DCA戦略


作成日: 2024-01-31 14:20:11 最終変更日: 2024-01-31 14:20:11
コピー: 0 クリック数: 780
1
フォロー
1617
フォロワー

モメンタムボリンジャーバンドダブル移動平均DCA戦略

概要

動量ブリン帯双均線DCA戦略は,低リスク,長線保有の定投戦略である.それはブリン帯指標を使用して価格が下落しているかどうかを判断し,RSI指標が超売り領域にあるかどうかを判断し,双均線が市場動向を判断し,ブリン帯下落してRSIが50を下回っているときに投資を購入し,特定の資本規模,例えば500ドルを使用する.

戦略原則

この戦略は主にブリン帯とRSIの指標に基づいており,双均線で市場の動きを判断する.ブリン帯は,通常の分布統計理論に基づいて株価の関連性と波動率を計算し,株価の区間範囲を構成する.価格が下落すると,株価が相対的に低い価格領域に入ることを示す.RSIの指標は,価格が超売り領域にあるかどうかを判断する.双均線は,短期および中期市場の動きを判断する.

この戦略の取引論理は,株価がブリン帯下線を下回り,RSIが50を下回っているときに定着買いを行うこと,これは株価が相対的に低い位置にあり,一定の反弹性を持っていることを示している.双平線は市場の動きを判断し,市場が下落し続ける時に定着買いを避ける.

優位分析

この戦略の最大の利点は,リスクが低く操作が容易である.定投戦略を採用し,特定の購入タイミングに注目する必要がなく,条件を満たす限り購入し,取引頻度が低下する.ブリン帯指標は価格が下落すると判断し,低価格圏に入ると判断し,購入後に上昇する余地が大きい.RSIが50を下回ると判断し,超売り領域に入ると反発が期待される.固定投資は単発損失の範囲も制御する.

リスク分析

この戦略の主なリスクは:1) 市場の底を特定できないこと,株式市場の大幅な下落時に損失のリスクがあること;2) RSI指標が常に超売り区の終わりを判断できないこと,価格が下落し続ける可能性があること.3) 投資戦略は定期的な投資が必要であり,継続的に投資できない場合もパフォーマンスに影響を与える.4) 取引コストは,頻繁に小規模な取引に一定の影響を与える.

リスクをコントロールするために,指数ETFなどの比較的低リスクの資産を選択して操作する.全体的な大株が下落の通路にあるときにあまりにも頻繁に購入することを避ける.また,過剰売り区間の終了のタイミングをできるだけ回するためにRSIパラメータを調整することを考えることができます.

最適化の方向

この戦略は以下の点で最適化できます.

  1. 購入のタイミングを判断する指標を多く採用する.例えば,MACD,KD指標などの判断を多くする.

  2. 価格が一定の幅で下落する際のストップを外し,過度の損失を避ける.

  3. ブリン帯のパラメータを調整する.市場の波動が大きくなると,ブリン帯の通路を適切に拡張して,あまりにも頻繁に購入するのを避ける.

  4. エネルギー潮指標など,低量ゾーンでの購入を避ける.

  5. アルゴリズムを使用してRSIパラメータを自動的に最適化します. RSIパラメータをリアルタイムで更新して,超売り領域の終了点をできるだけ判断します.

要約する

動量ブリン帯双均線DCA戦略は,ブリン帯判断価格の相対的低位,RSI判断超売り区間,および双均線判断市場の動きを統合し,低リスクの定投買取戦略を実現する.他の定投戦略と比較して,この戦略は,買い買いタイミングの選択を重視する.損失を完全に回避することはできませんが,損失幅は限られており,長線を保持する利益はかなりです.いくつかのパラメータ調整と最適化指標を使用して,取引リスクをさらに低減し,戦略の効率性を向上させることができます.

ストラテジーソースコード
/*backtest
start: 2023-01-24 00:00:00
end: 2024-01-30 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Bollinger DCA v1", overlay=false)

//user inputs
contribution = input(title="Contribution (USD)",type=input.integer,minval=1,maxval=1000000,step=1,defval=500,confirm=false)
length = input(title="Bollinger (Period)", defval=20, step=1, minval=1)
mult = input(title="Deviations (Float)", defval=2.0, step=0.001, minval=0.001, maxval=50)
rsi_period = input(title="RSI (Period)", defval=14, step=1, minval=1)

//compute bollinger bands
source = close
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev

//compute moving averages
ma50 = sma(close,50)
ma100 = sma(close,100)
ma150 = sma(close,150)
ma200 = sma(close,200)
//up_trend = ma50 > ma100 and ma100 > ma150 and ma150 > ma200
//dn_trend = ma50 < ma100 and ma100 < ma150 and ma150 < ma200

//compute rsi
strength = rsi(close, rsi_period)

//plot indicators
//p1 = plot(upper, color=color.gray)
//p2 = plot(lower, color=color.gray)
//fill(p1, p2)
//p3 = plot(ma50, color=color.red)
//p4 = plot(ma100, color=color.blue)
//p5 = plot(ma150, color=color.green)
//p6 = plot(ma200, color=color.orange)

//units to buy
units = contribution / close

//long signal
if (close < lower and strength < 50)
    strategy.order("Long", strategy.long, units)

//close long signal
//if (close > upper and strength > 50 and strategy.position_size > 0)
    //strategy.order("Close Long", strategy.short, units)
    
//plot strategy equity
plot(strategy.openprofit, color=color.blue, linewidth=2, title="Open Profit")