리소스 로딩... 로딩...

고급 15 분 차트 거래 신호 전략

저자:차오장, 날짜: 2024-05-28 11:03:37
태그:BBMAMACDRSIVWAP

img

전반적인 설명

이 전략은 15분 차트 데이터를 사용하며, 볼링거 밴드 (BB), 이동 평균 (MA), 이동 평균 컨버전스 디버전스 (MACD), 상대 강도 지수 (RSI), 스토카스틱 오시레이터 (STOCH), 볼륨 가중 평균 가격 (VWAP) 과 같은 여러 기술적 지표를 결합하여 고급 거래 신호를 생성합니다. 여러 지표가 동시에 구매 또는 판매 신호를 제공하면 전략은 긴 또는 짧은 포지션을 개설합니다. 또한 전략은 위험을 제어하고 이익을 잠금하기 위해 스톱 로스와 영업 수준을 설정합니다.

전략 원칙

  1. 종료 가격을 얻기 위해 15분 차트 데이터를 사용하십시오.
  2. 상부와 하부 볼링거 반도를 계산하여 가격이 과잉 구매되거나 과잉 판매되었는지 여부를 결정합니다.
  3. 트렌드 방향을 결정하기 위해 빠르고 느린 이동 평균을 계산합니다.
  4. 모멘텀 방향을 결정하기 위해 MACD 지표의 MACD 라인과 신호 라인을 계산합니다.
  5. RSI 인디케이터를 계산하여 가격이 과잉 구매되거나 과잉 판매되었는지 여부를 결정합니다.
  6. 스토카스틱 오시레이터의 %K 및 %D 라인을 계산하여 가격이 과소매 또는 과소매인지 결정합니다.
  7. VWAP 지표를 계산하여 부피 가중된 평균 가격에 대한 가격 위치를 결정합니다.
  8. 빠른 이동 평균이 느린 이동 평균을 넘어서면 구매 신호를 생성합니다. MACD 라인은 신호 라인보다 크며, RSI는 50보다 높고, 폐쇄 가격은 VWAP보다 높고, %K 라인은 %D 라인보다 높습니다.
  9. 빠른 이동 평균이 느린 이동 평균 아래로 넘어가면 매출 신호를 생성합니다. MACD 라인은 신호 라인보다 작고, RSI는 50 이하이며, 폐쇄 가격은 VWAP 이하이며, %K 라인은 %D 라인 아래에 있습니다.
  10. 구매 신호가 나타나면 긴 포지션을 열고 스톱 로스 및 트레이프 레벨을 설정합니다.
  11. 판매 신호가 나타나면, 짧은 포지션을 열고, 스톱 로스 및 영업 마이너를 설정합니다.

이점 분석

  1. 거래 신호의 신뢰성을 높이기 위해 여러 가지 기술 지표를 통합합니다.
  2. 단기 트렌드와 변동을 파악하기 위해 15분 차트 데이터를 사용합니다.
  3. 스톱 로즈와 트레이프 레벨을 설정하여 위험을 효과적으로 제어하고 수익을 차단합니다.
  4. 명확하고 이해하기 쉬운 전략 논리

위험 분석

  1. 부상 시장에서 빈번한 거래 신호는 과잉 거래 및 수수료 손실로 이어질 수 있습니다.
  2. 스톱 로즈와 트레이프 로프트 레벨의 설정은 시장 조건에 따라 조정되어야 합니다. 부적절한 설정은 손실로 이어질 수 있습니다.
  3. 이 전략은 역사적인 데이터에 의존하고 있으며 갑작스러운 사건과 시장 이상에 즉각적으로 반응하지 않을 수 있습니다.

최적화 방향

  1. 거래 신호의 신뢰성을 더욱 향상시키기 위해 볼링거 밴드 너비 및 ADX와 같은 다른 기술 지표를 도입하는 것을 고려하십시오.
  2. 역동적인 스톱 로스 및 스톱 로스 및 스톱 로스 또는 시장 변동성에 따라 적응적으로 조정하는 등 스톱 로스 및 스톱 로스 레벨의 설정을 최적화합니다.
  3. 경제 데이터와 정책 변화와 같은 근본 분석을 포함하여 거래 신호를 필터하고 최적화합니다.

요약

이 전략은 여러 기술적 지표를 종합적으로 적용하여 15분 차트에 고급 거래 신호를 생성하고 위험을 제어하기 위해 스톱 로스 및 테이프 레벨을 설정합니다. 전략 논리는 명확하고 구현하기가 쉽습니다. 그러나 실제 응용에서는 과잉 거래, 스톱 로스 및 테이프 설정 및 갑작스러운 이벤트에 대한 대응과 같은 위험에주의를 기울여야합니다. 미래에 다른 지표를 도입하고, 스톱 로스 및 테이프 설정을 최적화하고, 전략의 신뢰성과 수익 잠재력을 더욱 향상시키기 위해 근본 분석을 결합하는 것을 고려할 수 있습니다.


/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Gelişmiş Al-Sat Sinyalleri", overlay=true, process_orders_on_close=true)

// 15 dakikalık grafik verileri
fifteen_minute_close = request.security(syminfo.tickerid, "15", close)

// Stop loss ve take profit seviyelerini hesaplamak için kullanılacak oranlar
stop_loss_ratio = input.float(0.01, title="Stop Loss Oranı")
take_profit_ratio = input.float(0.02, title="Take Profit Oranı")

// Bollinger Bantları göstergesi
length = input.int(20, title="BB Dönemi")
mult = input.float(2.0, title="BB Çarpanı")
basis = ta.sma(fifteen_minute_close, length)
dev = mult * ta.stdev(fifteen_minute_close, length)
upper = basis + dev
lower = basis - dev

// Moving Averages (Hareketli Ortalamalar)
fast_ma = ta.sma(fifteen_minute_close, 10)
slow_ma = ta.sma(fifteen_minute_close, 30)

// MACD göstergesi
macd_line = ta.ema(fifteen_minute_close, 12) - ta.ema(fifteen_minute_close, 26)
macd_signal = ta.ema(macd_line, 9)
macd_hist = macd_line - macd_signal

// RSI göstergesi
rsi = ta.rsi(fifteen_minute_close, 14)

// Stochastic Oscillator (Stokastik Osilatör)
kPeriod = input.int(14, title="Stochastic %K Periyodu")
dPeriod = input.int(3, title="Stochastic %D Periyodu")
smoothK = input.int(3, title="Stochastic %K Düzleştirme")
k = ta.stoch(fifteen_minute_close, high, low, kPeriod)
d = ta.sma(k, dPeriod)

// Hacim ağırlıklı hareketli ortalamalar göstergesi (VWAP)
vwap_length = input.int(20, title="VWAP Dönemi")
vwap = ta.sma(volume * (high + low + fifteen_minute_close) / 3, vwap_length) / ta.sma(volume, vwap_length)

// Al-Sat Sinyallerini hesaplayın
long_signal = ta.crossover(fast_ma, slow_ma) and macd_line > macd_signal and rsi > 50 and fifteen_minute_close > vwap and k > d
short_signal = ta.crossunder(fast_ma, slow_ma) and macd_line < macd_signal and rsi < 50 and fifteen_minute_close < vwap and k < d

// Al ve Sat işaretlerini, yanlarında ok işaretleri olan üçgenlerle değiştirin
plotshape(series=long_signal, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(series=short_signal, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)

// Uzun ve kısa pozisyonlar için girişler
if (long_signal)
    strategy.entry("long", strategy.long)
    strategy.exit("exit_long", "long", stop=fifteen_minute_close * (1 - stop_loss_ratio), limit=fifteen_minute_close * (1 + take_profit_ratio))
    
if (short_signal)
    strategy.entry("short", strategy.short)
    strategy.exit("exit_short", "short", stop=fifteen_minute_close * (1 + stop_loss_ratio), limit=fifteen_minute_close * (1 - take_profit_ratio))


관련

더 많은