これは,ストカスティックRSI,EMAクロスオーバーとVMACDを組み込み,市場の逆転点を特定する戦略であり,下向きの逆転が迫っているときに最もうまく機能します.条件が満たされると購入信号を生成します.
この戦略は主に以下の指標の組み合わせに基づいています.
ストカスティックRSIがoversold領域から反転すると,高速EMAがスローEMAの上を横断し,同時にVMACDが上昇し始めると,購入信号が生成されます. さらに,短期価格が10期SMAを超えると,購入するための補助信号としても機能します.
この戦略は,これらの指標の変化をリアルタイムで追跡し,固定されたバックバック期間にわたってSMA,EMAおよびその他の情報を計算する. 購入条件が起動すると,一定の数の契約で購入し,ポジションを開く. その後,5%引き下げまたはSMAライン以下の価格などのストップ損失条件が起動した場合,ストップ損失のためにポジションが閉鎖されます.
この戦略は複数の指標を組み合わせ,市場の逆転の機会を効果的に特定することができます.主な利点は以下の通りです.
要するに,この戦略は,逆転信号を効果的に捉え,一定程度下落した後にロングポジションを確立し,利益を得ることができます.
この戦略にはいくつかの利点はありますが,注意すべきリスクもあります.
リスクを軽減する方法:
戦略に最適化できる主な分野:
VMACD Wavefinder ストラテジーのこのVRSI-EMAクロスオーバーは,ダウントレンド逆転の機会を捉えることができる.逆転の最適なタイミングを決定するために複数の指標を組み合わせて効果的に購入信号を生成する.しかし,改善のためのいくつかの領域が残っています.さらに最適化されれば,ライブ取引での戦略のパフォーマンスはさらに向上する可能性があります.これは複数の指標の融合に基づいた定量戦略の典型的な例です.
/*backtest start: 2022-11-14 00:00:00 end: 2023-11-20 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Wavefinder+", overlay=true) length = input(20) confirmBars = input(2) price = close slow = input(12, "Short period") fast = input(26, "Long period") signal = input(9, "Smoothing period") maFast = ema( volume * close, fast ) / ema( volume, fast ) maSlow = ema( volume * close, slow ) / ema( volume, slow ) da = maSlow - maFast maSignal = ema( da, signal ) dm=da-maSignal source = close lengthRSI = input(14, minval=8), lengthStoch = input(14, minval=5) smoothK = input(3,minval=3), smoothD = input(3,minval=3) OverSold = input(25), OverBought = input(75) rsi1 = rsi(source, lengthRSI) rsi2= rsi(low, 20) k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = sma(k, smoothD) k1= sma(stoch(rsi2, rsi2, rsi2, lengthStoch), smoothK) d1= sma(k1, smoothD) delta=k-d1 ma = ema(low, length) ema5= ema(price,20) sma= sma(price,10) bcond = price < ma lcond = price> ema5 bcount = 0 lcount= 0 bcount := bcond ? nz(bcount[1]) + 1 : 0 lcount := lcond ? nz(lcount[1]) + 1 : 0 if (lcount>1 and change(k)>3 and k>d and k<55 and rising(dm,1)) or ( k[1]-k[2]<-2 and k-k[1]>5 and k>35 and k<80) or (ma-sma>0.05*sma and rising(sma,3) and rising(dm,2)) strategy.entry("Long", strategy.long, qty=10000/close) if (bcount == confirmBars) strategy.close("Long") if close<0.99*sma strategy.close("Long") plot(0.99*sma) plot(ma) //hline(OverSold,color=blue) //hline(OverBought,color=blue) //plot(d, color=red) //plot(k, color=green,title="k-line") //(close-close[3]<-0.05*close[3]) or (close-close[2]<-0.05*close[2]) or (close-close[2]<-0.05*close[2]) or (close-close[4]<-0.05*close[4]) or //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)