振動ブレイクアウト戦略


作成日: 2023-10-27 16:14:16 最終変更日: 2023-10-27 16:14:16
コピー: 0 クリック数: 587
1
フォロー
1617
フォロワー

振動ブレイクアウト戦略

概要

震動突破戦略は,ブリン帯とランダムな指標を使用し,資産価格が超買超売領域に達したときに潜在的な逆転点を識別し,日中のトレーダーにわずかな価格変動を利用するのに適しています.この戦略の主な考えは,特定の資産価格がブリン帯を突破して下線し,ランダムな指標が超買超売信号を示しているときに取引機会を探すことです.

戦略原則

この戦略は,ブリン帯とランダムな指標を同時に主要な技術指標として使用する.ブリン帯は,指定された周期 (例えば20日) の平均線と標準差を計算することによって,上線と下線が得られる.価格が上線に達すると超買いとされ,下線に達すると超売りとされる.ランダムな指標であるRSIは,価格が過度に超買いまたは超売りであるかどうかを判断する.RSIは20を下回ると超売り,80を下回ると超売りである.

具体的取引戦略は,価格がブリン帯を下回り,ランダムな指数RSIが20を下回ったときに,多出します.価格がブリン帯を下回り,ランダムな指数RSIが80を下回ったときに,空売りします.多出時のストップ・ロスは現在のK線低点より数点下に設定され,空売りのストップ・ロスは現在のK線高点より数点上に設定されます.目標利益は,最近のK線平均波動点の数を超えて設定されます.

暗号は,交差関数によってブリン帯軌道突破判断,RSI高低値判断を実現し,突破信号の形状マークを描画する. 入場後,ストップとストップを設定し,価格変化の退出を追跡する.

優位分析

この戦略は,ブリン帯がサポートプレッシャー領域を判定し,RSIが超買い超売り領域を判定するとともに,取引信号の質を向上させることができる.単一の指標と比較して,誤信号を減らすことができる.

K線を使ってブリン帯を突破し,上下軌道に並び,RSIフィルターと連携して,反転の機会を捉えることができる.このような反転取引は,潜在的に利益の余地がある.

ストップダストの距離は小さいので,単一損失を制御するのに便利である.ストップは平均波動に基づいて設定され,利益の大きさをより良くバランスさせることができる.

この戦略は,取引頻度が高いため,日中のショートライン取引に適しており,小範囲の市場の変動を充分利用することができる.

リスク分析

ブリン帯軌道の突破は,価格が均線に戻る逆転を想定するが,部分的な突破は偽突破であり,トレンド反転を形成することができない.これは損失をもたらす.

RSIは遅滞性があり,超買い超売りシグナルを早期に誘発し,取引の機会の一部を逃してしまう可能性があります.

ストップダメージ距離は小さく,単一の損失をコントロールしようとするが,単一の利益の余地も制限する.

高頻度取引は心理的な質が強いもので,多頻度の止損は全体的な利益に影響を与える.

最適化の方向

ブリン帯のパラメータ,例えば周期長を増やして突破信号の質を向上させるようにテストすることができる.

直接突破を判定する代わりに,偽突破を減らすために,K線の閉盘価格をブリン帯突破の信号として試みることができる.

MACD,KDなどの他の指標とRSIを組み合わせて,超買超売り判断の正確性を向上させることができます.

定数点停止ではなく,異なる品種特性に合わせて動的停止距離を設定できます.

要約する

この戦略は,ブリン帯がサポートプレッシャー領域を判定し,RSI指標が超買い超売り領域を判定することを統合し,理論的には反転の機会をよりよく発見することができる.実際の操作では,適切なパラメータ配置を見つけ,リスクを制御し,継続的に最適化することが重要です.

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

//@version=4
strategy("Bollinger Bands & Stochastic Scalping Strategy", shorttitle="BB & Stoch Scalp", overlay=true)

// Bollinger Bands
length = input(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input(2, title="Multiplier")
basis = sma(src, length)
dev = mult * stdev(src, length)
upperBB = basis + dev
lowerBB = basis - dev

// Stochastic
stochLength = input(14, title="Stochastic Length")
smoothK = input(5, title="Stochastic %K Smoothing")
smoothD = input(3, title="Stochastic %D Smoothing")
k = sma(stoch(close, high, low, stochLength), smoothK)
d = sma(k, smoothD)

// Entry Conditions
longCondition = crossover(close, lowerBB) and crossover(k, 20)
shortCondition = crossunder(close, upperBB) and crossunder(k, 80)

// Exit Conditions
takeProfit = input(50, title="Take Profit (pips)")

plotshape(series=longCondition, title="Long Entry Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=shortCondition, title="Short Entry Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Stop Loss
stopLossPips = input(3, title="Stop Loss (pips)")
stopLossLong = close - stopLossPips * syminfo.mintick
stopLossShort = close + stopLossPips * syminfo.mintick

strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)

strategy.exit("Take Profit/Stop Loss", from_entry="Long", profit=takeProfit, stop=stopLossLong)
strategy.exit("Take Profit/Stop Loss", from_entry="Short", profit=takeProfit, stop=stopLossShort)

plot(upperBB, title="Upper Bollinger Band", color=color.red)
plot(lowerBB, title="Lower Bollinger Band", color=color.green)

hline(80, "Overbought", color=color.red)
hline(20, "Oversold", color=color.green)