다중 지표 조합 충격 위치 돌파 전략


생성 날짜: 2023-12-01 17:49:34 마지막으로 수정됨: 2023-12-01 17:49:34
복사: 0 클릭수: 661
avatar of ChaoZhang ChaoZhang
1
집중하다
1619
수행원

다중 지표 조합 충격 위치 돌파 전략

개요

이 전략은 STOCH.RSI, RSI, 이중 전략, CM 윌리엄스 지수 및 통화 흐름 지수 (MFI) 와 같은 여러 지표를 조합하여 시장 변동에 대한 정밀한 지지를 구현합니다. 주식 가격이 지원 또는 압력 지점에 가까워질 때 거래를 발송 할 수 있습니다. 이 신호 전략은 여러 지표의 장점을 활용하여 지표가 서로 확인하여 잘못된 보도를 효과적으로 줄이고 신호의 신뢰성을 향상시킵니다.

전략 원칙

  1. STOCH.RSI 지표는 무작위 지표인 스토카스틱과 상대적으로 약한 지수인 RSI의 장점을 결합한다. 오버버 (Overbought) 영역을 보여주며 역전 기회를 발견할 수 있다.

  2. RSI 지표는 과매매를 판단하는 보조 확인 신호로 사용된다.

  3. 이중 전략은 Stoch와 RSI의 교차 상황을 판단하여 거래 신호를 냅니다.

  4. CM 윌리엄스 지표는 퍼센티지 범위를 계산한다. 이 범위는 시장의 반향을 나타냅니다. Stoch.RSI와 RSI가 시장의 변동과 반향을 판단하는 데 도움이 됩니다.

  5. 통화 흐름 지수 (MFI) 는 Stoch.RSI, RSI와 상호 검증하여 신호 품질을 향상시킵니다.

종합적으로, 이 전략은 Stoch.RSI, RSI, 이중 전략, CM 윌리엄스 지표 및 MFI와 같은 여러 지표의 조합을 통해 시장의 과매매 과매매 지역을 효과적으로 판단할 수 있으며, 역전 기회를 파악하고 거래 신호를 발송할 수 있습니다. 여러 지표의 조합 검증은 신호 품질을 향상시키고 잘못된 정보를 줄일 수 있습니다.

우위 분석

이 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 다중 지표 조합, 상호 검증, 잘못된 보고를 줄이고 신호 품질을 향상시킬 수 있다.

  2. STOCH.RSI, RSI 및 MFI를 사용하여 과매매 지역을 판단하여 시장의 전환점을 효과적으로 파악할 수 있습니다.

  3. CM 윌리엄스 지표는 시장의 변동과 반향을 판단하는 데 도움이 되는 비율 범위를 계산한다.

  4. 이중 전략은 거래 신호를 발산하고, 조작이 간단하고, 추적이 쉽다.

  5. 매개 변수 최적화 공간이 넓고, 다양한 시장에 따라 매개 변수를 조정할 수 있으며, 적응력이 강하다.

위험 분석

이 전략에는 몇 가지 위험도 있습니다.

  1. 다중 지표 조합 연산은 상대적으로 복잡하고, 계산 능력에 대한 요구가 높으며, 고주파 거래에는 적합하지 않다.

  2. 매개 변수를 잘못 설정하면 신호 품질이 떨어질 수 있으며, 자신에게 적합한 매개 변수를 선택해야 한다.

  3. 역전 신호는 지연될 수 있고, 더 많은 지표와 함께 움직임을 판단해야 한다.

  4. 거래량이 많을 수도 있고, 자금 사용 효율을 조절해야 한다.

그 해결책은 다음과 같습니다.

  1. 계산능력이 높은 단말기를 선택하여 파라미터를 위해 최적화하십시오.

  2. 다시 돌아와서, 자신에게 맞는 변수 조합을 선택하세요.

  3. 더 많은 지표 조합을 사용하여 추세를 미리 판단하십시오.

  4. 손해배상 제도를 최적화하고 단일 거래의 위험을 통제합니다.

최적화 방향

이 전략은 다음과 같은 방향으로 최적화될 수 있습니다.

  1. 지표 변수를 최적화하여 최적의 변수 조합을 선택하십시오.

  2. 거래량, 수익률 등 지표를 높이고, 거래 선택 능력을 향상시킵니다.

  3. 더 많은 포괄선, 브린 밴드 등의 지표와 함께, 지원 저항을 미리 판단하십시오.

  4. 스톱로스, 상장 선별 조건, 리스크 관리

  5. 다양한 품종, 주기 파라미터는 다르며, 품종 특성에 따라 최적의 파라미터를 선택할 수 있다.

요약하다

이 전략은 STOCH.RSI, RSI, 이중 전략, CM 윌리엄스 지표 및 MFI 다중 지표의 정밀한 조합을 통해 시장 과매매 영역을 위치시키고 역전 기회를 발견한다. 상호 검증 신호는 잘못된 통보를 줄이고 신호 품질을 향상시킬 수 있다. 변수 최적화, 기타 판단 조건을 추가하는 등의 방법으로 더욱 개선되어 안정적이고 실용적인 거래 전략이 될 수 있다.

전략 소스 코드
/*backtest
start: 2023-10-31 00:00:00
end: 2023-11-30 00:00:00
period: 10m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/


     //////////////////////////////////////////////////////////////////////////
    ////  STOCHASTIC_RSI+RSI+DOUBLE_STRATEGY+CM_WILLIAMS_VIX_FIX+MFI  ////////
   //////////////////////////////////////////////////////////////////////////


//  This is a simple combination of integrated and published scripts, useful 
//  if you don't have a PRO account and want to bypass the 3 indicators limit. 
//  It includes:
//  1) Stoch.RSI
//  2) Relative strenght index (RSI)
//  3) Stochastic + RSI, Double Strategy (by ChartArt)
//  4) CM_Williams_Vix_Fix Finds Market Bottoms (by ChrisMoody)
//  5) Monetary Flow Index (MFI)
//  For more details about 3) and 4) check the original scripts.


//@version=3
// @author GianlucaBezziccheri

strategy(title="Stoch.RSI+RSI+DoubleStrategy+CMWilliamsVixFix+MFI", shorttitle="Stoch.RSI+RSI+DoubleStrategy+CMWilliamsVixFix+MFI")


///STOCH.RSI///
smoothK = input(3, minval=1, title="Stochastic %K Smoothing")
smoothD = input(3, minval=1, title="Stochastic %K Moving Average")
lengthRSI = input(14, minval=1, title="RSI Lenght")
lengthStoch = input(14, minval=1, title="Stochastic Lenght")
RSIprice = close
rsi1 = rsi(RSIprice, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
plot(k, color=blue, linewidth=2)
plot(d, color=silver, linewidth=2)
h0 = hline(80)
h1 = hline(20)
fill(h0, h1, color=purple, transp=78)


///RSI///
up = rma(max(change(RSIprice), 0), lengthRSI)
down = rma(-min(change(RSIprice), 0), lengthRSI)
rsi2 = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi2, color=fuchsia, linewidth=2)
band0 = hline(70)
band1 = hline(30)
fill(band0, band1, color=purple, transp=100)


///OVERBOUGHT-OVERSOLD STRATEGY///
StochOverBought = input(80, title="Stochastic RSI overbought")
StochOverSold = input(20, title="Stochastic RSI oversold")
ks = sma(stoch(close, high, low, lengthStoch), smoothK)
ds = sma(k, smoothD)
RSIOverBought = input( 70  , title="RSI overbought")
RSIOverSold = input( 30  , title="RSI oversold")
vrsi = rsi(RSIprice, lengthRSI)
if (not na(ks) and not na(ds))
    if (crossover(ks,ds) and k < StochOverSold)
        if (not na(vrsi)) and (crossover(vrsi, RSIOverSold))
            strategy.entry("LONG", strategy.long, comment="LONG")
if (crossunder(ks,ds) and ks > StochOverBought)
    if (crossunder(vrsi, RSIOverBought))
        strategy.entry("SHORT", strategy.short, comment="SHORT")
 
 
///CM WILLIAMS VIX FIX///
pd = input(22, title="LookBack Period Standard Deviation High")
bbl = input(20, title="Bollinger Band Length")
mult = input(2.0    , minval=1, maxval=5, title="Bollinger Band Standard Devaition Up")
lb = input(50  , title="Look Back Period Percentile High")
ph = input(.85, title="Highest Percentile - 0.90=90%, 0.95=95%, 0.99=99%")
pl = input(1.01, title="Lowest Percentile - 1.10=90%, 1.05=95%, 1.01=99%")
hp = input(false, title="Show High Range (Based on Percentile and LookBack Period)?")
sd = input(false, title="Show Standard Deviation Line?")
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
lowerBand = midLine - sDev
upperBand = midLine + sDev
rangeHigh = (highest(wvf, lb)) * ph
rangeLow = (lowest(wvf, lb)) * pl
col = wvf >= upperBand or wvf >= rangeHigh ? lime : gray
plot(hp and rangeHigh ? rangeHigh : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(hp and rangeLow ? rangeLow : na, title="Range High Percentile", style=line, linewidth=4, color=orange)
plot(wvf, title="Williams Vix Fix", style=columns, linewidth = 4, color=col, transp=85)
plot(sd and upperBand ? upperBand : na, title="Upper Band", style=line, linewidth = 3, color=aqua)


///MONETARY FLOW INDEX
length4 = input(title="MFI Length", defval=14, minval=1, maxval=2000)
src4 = hlc3
upper4 = sum(volume * (change(src4) <= 0 ? 0 : src4), length4)
lower4 = sum(volume * (change(src4) >= 0 ? 0 : src4), length4)
mf4 = rsi(upper4, lower4)
plot(mf4, color=yellow, style=line, linewidth=2, title="Monetary Flow Index")
overbought=hline(70, title="MFI Overbought", color=yellow)
oversold=hline(30, title="MFI Oversold", color=yellow)
fill(overbought, oversold, color=#9915ff, transp=100)