PipShiesty Swaggerは,TradingView向けに特別に設計された技術的取引戦略である.この戦略は,潜在的な取引信号を特定し,リスクを管理し,価格チャート上の過買い・過売状態を視覚化するために,WaveTrendオシレーター (WT) とボリューム重量平均価格 (VWAP) を活用する.オシレーターは,平均価格に適用される指数的な移動平均値 (EMA) のシリーズを使用して計算され,さらにスムーズ化された複合指数を生み出します.この戦略には, WaveTrendオシレーターの単純な移動平均値 (SMA) である信号線も含まれ,信号を確認し,取引戦略をフィルタリングします.さらに,ノイズには,リスク管理パラメータ,例えば,取引毎のリスク損失パーセントと,真の資本平均値 (ATR) に基づくストップマルチペラーなどが含まれ,リスクを管理および保護します.
PipShiesty Swagger戦略の核心はWaveTrendオシレーター (WT) とボリューム重量平均価格 (VWAP) にあります.WTは,チャネル長と平均長という2つの主要なパラメータを使用して,平均価格に適用される一連の指数関数移動平均値 (EMA) を使用してオシレーターを計算します.その結果,複合指数が生成され,さらにスムーズ化されます.VWAPは,指定された期間中に計算され,全体的なトレンド方向性を特定するのに役立つ平均取引価格を理解するためのベンチマークとして使用されます.この戦略は,過買いと過売りの状況を特定するための特定のレベルを定義します.オシレーターがこれらのレベルを超えると,潜在的な市場のターニングポイントを示します.この戦略には,シグナルラインも含まれます.これはWaveTrendオシレーターの単純な移動平均音 (SMA) です.
PipShiesty Swaggerは,TradingViewのBTC15分チャートのために設計された強力な技術取引戦略である.それは,資本を保護するためにリスク管理パラメータを組み込む一方で,潜在的な取引信号を識別するためにWaveTrend OscillatorとVWAPを使用する.戦略が有望であるにもかかわらず,トレーダーはそれを実装する際に慎重に行動し,そのパフォーマンスと適応性を向上させるために戦略を最適化することを検討すべきである.継続的な精製と調整により,PipShiesty Swaggerはダイナミックな仮想通貨市場でナビゲートするトレーダーにとって貴重なツールになることができる.
/*backtest start: 2023-05-22 00:00:00 end: 2024-05-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("PipShiesty Swagger", overlay=true) // WaveTrend Oscillator (WT) n1 = input.int(10, "Channel Length") n2 = input.int(21, "Average Length") obLevel1 = input.float(60.0, "Overbought Level 1") obLevel2 = input.float(53.0, "Overbought Level 2") osLevel1 = input.float(-60.0, "Oversold Level 1") osLevel2 = input.float(-53.0, "Oversold Level 2") ap = hlc3 esa = ta.ema(ap, n1) d = ta.ema(math.abs(ap - esa), n1) ci = (ap - esa) / (0.015 * d) tci = ta.ema(ci, n2) // VWAP vwap = ta.vwma(close, n1) // Signal Line wt1 = tci wt2 = ta.sma(wt1, 4) // Bullish and Bearish Divergences bullishDivergence = (ta.lowest(close, 5) > ta.lowest(close[1], 5)) and (wt1 < wt1[1]) and (close > close[1]) bearishDivergence = (ta.highest(close, 5) < ta.highest(close[1], 5)) and (wt1 > wt1[1]) and (close < close[1]) // Plot WaveTrend Oscillator plot(wt1, title="WT1", color=color.blue) plot(wt2, title="WT2", color=color.red) // Remove printed signals if price reverses var bool showBullishSignal = na var bool showBearishSignal = na if bullishDivergence showBullishSignal := true if bearishDivergence showBearishSignal := true // Reset signals if price reverses if close < ta.lowest(close, 5) showBullishSignal := false if close > ta.highest(close, 5) showBearishSignal := false plotshape(series=showBullishSignal ? bullishDivergence : na, location=location.belowbar, color=color.green, style=shape.labelup, title="Bullish Divergence") plotshape(series=showBearishSignal ? bearishDivergence : na, location=location.abovebar, color=color.red, style=shape.labeldown, title="Bearish Divergence") // Risk Management Parameters riskPercentage = input.float(1, title="Risk Percentage per Trade", minval=0.1, step=0.1) / 100 stopLossATR = input.float(1.5, title="Stop Loss ATR Multiplier", minval=0.5, step=0.1) // ATR Calculation atr = ta.atr(14) // Position Size Calculation calculatePositionSize(stopLoss) => riskAmount = strategy.equity * riskPercentage positionSize = riskAmount / stopLoss // Double the position size positionSize *= 2 positionSize // Entry and Exit Logic with Stop Loss if bullishDivergence stopLoss = low - atr * stopLossATR positionSize = calculatePositionSize(close - stopLoss) strategy.entry("Buy", strategy.long, qty=positionSize) strategy.exit("Sell", from_entry="Buy", stop=stopLoss) if bearishDivergence strategy.close("Buy") // Plot VWAP plot(vwap, title="VWAP", color=color.orange) // Background color to indicate Overbought/Oversold conditions bgcolor(wt1 > obLevel1 ? color.new(color.red, 90) : na, title="Overbought Level 1") bgcolor(wt1 < osLevel1 ? color.new(color.green, 90) : na, title="Oversold Level 1") bgcolor(wt1 > obLevel2 ? color.new(color.red, 70) : na, title="Overbought Level 2") bgcolor(wt1 < osLevel2 ? color.new(color.green, 70) : na, title="Oversold Level 2")