웨이브트렌드 크로스 레이지베어 전략은 웨이브트렌드 지표에 기반한 거래 전략이다. 이 전략은 서로 다른 기간을 가진 두 개의 웨이브트렌드 지표 라인을 사용합니다. 더 빠른 기간 웨이브트렌드 지표 라인이 느린 기간 웨이브트렌드 지표 라인의 위를 넘을 때 구매 신호를 생성합니다. 더 빠른 기간 웨이브트렌드 지표 라인이 느린 기간 웨이브트렌드 지표 라인의 아래를 넘을 때 판매 신호를 생성합니다. 전략은 또한 시장 조건을 판단하는 데 도움이되는 과잉 구매 및 과잉 판매 구역을 설정합니다.
이 전략의 핵심은 다음과 같은 단계로 계산되는 WaveTrend 지표입니다.
이 전략은 각각 WT1 및 WT2로 표시되는 서로 다른 기간을 가진 두 개의 웨이브 트렌드 지표 라인을 사용합니다. WT1이 WT2를 넘을 때 구매 신호를 생성하고 WT1이 WT2를 넘을 때 판매 신호를 생성합니다. 또한 전략은 시장 조건을 판단하는 데 도움이되는 4 개의 보조 레벨을 설정합니다. 과잉 구매 레벨 1, 과잉 구매 레벨 2, 과잉 판매 레벨 1 및 과잉 판매 레벨 2.
웨이브트렌드 크로스 레이지베어 전략은 웨이브트렌드 지표에 기반한 트렌드 추적 전략이다. 이중 기간 지표의 설계와 과소득과 과소득 수준의 보조 판단을 통해 트렌드를 포착하면서 특정 리스크 제어도 고려한다. 그러나 전략은 오스실레이션 시장에서 더 많은 잘못된 신호를 생성할 수 있으며 엄격한 리스크 관리 조치가 부족하다. 실제 응용 분야에서는 추가 최적화와 개선이 필요합니다.
/*backtest start: 2024-03-01 00:00:00 end: 2024-03-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © burakaydingr //@version=5 strategy("WaveTrend with Crosses [LazyBear]", shorttitle="WT_CROSS_LB", overlay=true) // Kullanıcı girişleri n1 = input(10, title="Channel Length") n2 = input(21, title="Average Length") obLevel1 = input(60, title="Over Bought Level 1") obLevel2 = input(53, title="Over Bought Level 2") osLevel1 = input(-60, title="Over Sold Level 1") osLevel2 = input(-53, title="Over Sold Level 2") // Temel hesaplamalar 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) // WaveTrend göstergeleri wt1 = tci wt2 = ta.sma(wt1, 4) // Al ve Sat Sinyalleri buySignal = ta.crossover(wt1, wt2) sellSignal = ta.crossunder(wt1, wt2) // Alım ve Satım pozisyonları if (buySignal) if (strategy.position_size <= 0) // Eğer şu anda açık bir satış pozisyonu varsa, onu kapat strategy.close("Sell") strategy.entry("Buy", strategy.long, comment="Buy Signal: Price crossed above WT2") if (sellSignal) if (strategy.position_size >= 0) // Eğer şu anda açık bir alım pozisyonu varsa, onu kapat strategy.close("Buy") strategy.entry("Sell", strategy.short, comment="Sell Signal: Price crossed below WT2") // Renkler ve diğer görseller plot(0, color=color.new(color.gray, 0), title="Zero Level") plot(obLevel1, color=color.new(color.red, 0), title="Overbought Level 1") plot(osLevel1, color=color.new(color.green, 0), title="Oversold Level 1") plot(obLevel2, color=color.new(color.purple, 0), title="Overbought Level 2") plot(osLevel2, color=color.new(color.orange, 0), title="Oversold Level 2") plot(wt1, color=color.new(color.red, 0), title="WT1") plot(wt2, color=color.new(color.blue, 0), title="WT2") plot(wt1-wt2, color=color.new(color.purple, 80), style=plot.style_area, title="WT1-WT2 Area") // İşaretler plotshape(buySignal, location=location.absolute, color=color.new(color.yellow, 0), style=shape.circle, size=size.small, title="Buy Signal") plotshape(sellSignal, location=location.absolute, color=color.new(color.red, 0), style=shape.circle, size=size.small, title="Sell Signal")