이 기사에서는 볼링거 밴드 (Bollinger Bands) 와 상대 강도 지수 (RSI) 를 결합한 수정된 거래 전략을 탐구할 것입니다. 이 전략은 차트아트의 원래
키워드: VWMA, SMA 볼링거 밴드, RSI, 거래 전략, 가격-용량 상관관계, 기술 분석, 시장 추세, 구매 및 판매 기회
VWMA (Volume Weighed Moving Average): VWMA는 전통적인 간단한 이동 평균의 변형으로, 각 데이터 포인트는 해당 볼륨에 따라 가중됩니다. 이 지표는 가격과 볼륨 변화 사이의 더 빠른 상관 관계를 제공합니다. 볼륨이 증가함에 따라 VWMA는 감소하며 시장 정서에 대한 잠재적 변화를 나타냅니다.
SMA 볼링거 밴드: 볼링거 밴드는 3개의 라인으로 구성된다: SMA 기본 라인, 상위 밴드 (SMA + 2 표준 오차), 하위 밴드 (SMA - 2 표준 오차). SMA 기본 라인은 지정된 기간 길이를 사용하여 계산된다. 볼링거 밴드는 시장에서 과소매와 과소매 조건을 식별하는 데 도움이됩니다.
RSI (비교적 강도 지수): RSI는 가격 움직임의 속도와 변화를 측정하는 모멘텀 오시일레이터이다. 0에서 100 사이의 오시일레이션으로, 과잉 구매 및 과잉 판매 조건을 식별하는 데 일반적으로 사용됩니다. RSI는 추세의 힘과 방향에 대한 귀중한 통찰력을 제공할 수 있습니다.
전략 해석:
a. 가격 및 VWMA 이동:
만약 가격이 상부 볼링거 밴드 (Bollinger Band) 에 도달하고 VWMA가 그것을 자세히 추적한다면, 이는 가격이 해당 부피보다 더 상승했다는 것을 암시합니다. 이것은 가까운 미래에 잠재적인 보정 또는 반전을 나타낼 수 있습니다. 만약 가격이 낮은 볼링거 밴드까지 도달하고 VWMA가 그것을 자세히 추적한다면, 그것은 가격이 상당한 부피로 떨어졌음을 암시합니다. 이것은 현재의 추세의 지속을 나타낼 수 있습니다. b. 가격과 VWMA와 SMA의 관계:
만약 가격이 상부 볼링거 밴드에 도달하고 VWMA가 SMA 기본선 근처에 머물러 있다면, 이는 가격이 그에 따른 부피로 성장했다는 것을 암시합니다. 이것은 현재의 추세의 지속을 나타낼 수 있습니다. 만약 가격이 낮은 볼링거 밴드에 도달하고 VWMA가 SMA 기본선에 가깝게 유지된다면, 이는 가격이 낮은 부피로 하락했다는 것을 암시합니다. 이것은 가까운 미래에 잠재적인 보정 또는 반전을 나타낼 수 있습니다. 기억 하십시오. 어떤 지표 도 결함 없는 것 이 아닙니다. 시장에서 정확한 예측을 보장 할 수있는 지표가 없다는 점에 유의하는 것이 중요합니다. 따라서이 전략을 다른 지표와 함께 해석하는 것이 좋습니다. 이동 평균 컨버전스 디버전스 (MACD) 및 추가 분석 도구.
결론: VWMA + SMA 볼링거 밴드 + RSI 전략은 거래자에게 가격과 볼륨 상관관계를 분석하는 포괄적인 접근 방식을 제공합니다. 이 전략에서 생성되는 신호를 이해함으로써 거래자는 정보에 기반한 결정을 내리고 거래 전략을 향상시킬 수 있습니다. 그러나 어떤 전략도 무방비적이며 거래자가 신중하고 거래를 실행하기 전에 철저한 분석을 수행해야한다는 것을 기억하는 것이 중요합니다.
/*backtest start: 2022-08-31 00:00:00 end: 2023-09-06 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //@version=2 // strategy("VWMA + SMA BBollinger + RSI, Double Strategy (by ChartArt) mod by BiO618", shorttitle="VWMA_Bol_Strat", overlay=true) // ChartArt's RSI + Bollinger Bands, Double Strategy // // Version 1.0 // Idea by ChartArt on January 14, 2015. // // This strategy uses a modfied RSI to sell // when the RSI increases over the value of 55 // (or to buy when the value falls below 45), // with the classic Bollinger Bands strategy // to sell when the price is above the // upper Bollinger Band (and to buy when // this value is below the lower band). // // This simple strategy only triggers when // both the RSI and the Bollinger Bands // indicators are at the same time in // a overbought or oversold condition. // // List of my work: // https://www.tradingview.com/u/ChartArt/ // // __ __ ___ __ ___ // / ` |__| /\ |__) | /\ |__) | // \__, | | /~~\ | \ | /~~\ | \ | // // ///////////// RSI RSIlength = input( 16 ,title="RSI Period Length") RSIvalue = input( 45 ,title="RSI Value Range") RSIoverSold = 0 + RSIvalue RSIoverBought = 100 - RSIvalue price = close vrsi = rsi(price, RSIlength) ///////////// Bollinger Bands BBlength = input(20, minval=1,title="Bollinger Bands SMA Period Length") BBmult = input(2.0, minval=0.001, maxval=50,title="Bollinger Bands Standard Deviation") BBbasis = sma(price, BBlength) BBdev = BBmult * stdev(price, BBlength) BBupper = BBbasis + BBdev BBlower = BBbasis - BBdev source = close buyEntry = crossover(source, BBlower) sellEntry = crossunder(source, BBupper) plot(BBbasis, color=aqua,title="Bollinger Bands SMA Basis Line") p1 = plot(BBupper, color=silver,title="Bollinger Bands Upper Line") p2 = plot(BBlower, color=silver,title="Bollinger Bands Lower Line") fill(p1, p2) basis2 = vwma(source, BBlength) //Notice that the basis is based on a vwma and not a sma. vwma = plot(basis2, color=orange, linewidth=2, title="Basis") ///////////// Colors switch1=input(true, title="Enable Bar Color?") switch2=input(true, title="Enable Background Color?") TrendColor = RSIoverBought and (price[1] > BBupper and price < BBupper) ? red : RSIoverSold and (price[1] < BBlower and price > BBlower) ? green : na barcolor(switch1?TrendColor:na) bgcolor(switch2?TrendColor:na,transp=50) ///////////// RSI + Bollinger Bands Strategy if (not na(vrsi)) if (crossover(vrsi, RSIoverSold) and crossover(source, BBlower)) strategy.entry("RSI_BB_L", strategy.long, stop=BBlower, comment="RSI_BB_L") else strategy.cancel(id="RSI_BB_L") if (crossunder(vrsi, RSIoverBought) and crossunder(source, BBupper)) strategy.entry("RSI_BB_S", strategy.short, stop=BBupper, comment="RSI_BB_S") else strategy.cancel(id="RSI_BB_S")