
이 전략은 여러 시간 프레임, 지지, 저항, 동적 지표와 변동성을 결합한 짧은 라인 거래 전략이다. 그것은 먼저 높은 시간 프레임 (<15분) 에서 지지 및 저항 수준을 식별하고, 1분 차트에서 돌파 또는 붕괴 신호를 찾는다. 전략은 상대적으로 강한 지수 () 와 평균 실제 범위 () 를 사용하여 동력과 변동성을 확인하고, 지수 이동 평균 () 와 거래량을 통해 트렌드 방향을 확인한다.
이 전략의 핵심 원칙은 다중 시간 프레임 분석과 가격 동력의 연동 작용을 이용하는 것이다. 구체적인 실행 방법은 다음과 같다:
지원과 저항의 식별전략: 15분 시간 프레임을 사용하여 15주기의 최저 지점을 지지점으로, 최고 지점을 저항점으로 계산한다. 이러한 핵심 가격 수준은 높은 시간 프레임의 시장 구조에 대한 시각을 제공합니다.
브레이크 확인: 1분 차트 상의 가격 종료 가격이 위와 같은 지원 또는 저항 지점을 뚫었을 때, 전략은 가능한 거래 신호로 식별한다. 구체적으로 가격은 지원 지점 아래로 떨어지거나 저항 지점을 돌파한다.
운동량과 변동률 필터전략: 가격 움직임을 확인하기 위해 RSI 지표를 사용하며, 35 이하의 RSI를 요구하며, 65 이상의 RSI를 요구합니다. 동시에, 현재 ATR이 14 주기의 ATR 평균보다 크기를 요구하며, 충분한 시장 변동성을 보장하며, 가격은 지원 또는 저항 지점을 특정 범위 (또는 0.2 배의 ATR) 를 돌파해야합니다.
트렌드 및 거래량 확인전략은 9주기 및 50주기 EMA를 트렌드 지표로 사용하며, 가격이 이 두 EMA의 위 (대부) 또는 아래 (대부) 에 위치하도록 요구합니다. 또한, 거래량이 20주기 평균 거래량보다 더 많이 요구되어 충분한 시장 참여가 보장됩니다.
위험 관리전략: 동적 스톱로스를 설정하고, 5주기 동안의 최고/최저 가격으로 ATR을 0.2배 증가시킨다. 수익 목표를 입시 가격으로 ATR을 2배 증가시켜 2:1의 리스크 수익률을 달성한다.
이 전략의 코드에 대해 자세히 살펴보면 다음과 같은 장점이 있습니다.
다중 인증 메커니즘이 전략은 가격 돌파, 동력 지표, 트렌드 지표, 거래량 확인을 결합하여 가짜 돌파 신호의 위험을 크게 줄입니다.
동적 위험 관리ATR 기반의 동적 중지 및 수익 설정으로, 전략이 시장의 변동성에 따라 자동으로 위험 매개 변수를 조정하여 다양한 변동 환경에서 안정적인 위험 관리를 유지할 수 있습니다.
더 높은 리스크-타임-비율: 2:1의 리스크/수익 비율을 설정하여 (금지 손실 범위의 10배의 수익을 목표로) 이기는 확률이 높지 않더라도 장기적인 수익을 달성할 수 있다.
다중 시간 프레임 협동15분과 1분 시간 프레임의 조합을 통해 전략은 짧은 라인의 유연성을 유지하면서 더 높은 시간 프레임의 구조적 지원을 얻을 수 있습니다.
시장 구조에 기반한 거래전략은 지지와 저항의 고전적 시장 구조 이론에 기초하고 있으며, 이러한 가격 수준은 종종 큰 시장 참가자의 활동 영역이며, 성공 확률이 높습니다.
이 전략은 여러 장점이 있지만 실제 적용에서는 다음과 같은 잠재적인 위험이 있습니다.
자주 거래하는 위험1분 차트에서의 단선 거래 전략으로서, 과도한 거래와 높은 거래 비용으로 이어지는 거래 신호를 많이 생성할 수 있다.
시장 소음의 영향낮은 시간 프레임에서는 시장의 소음이 더 커져 여러 필터링 메커니즘이 있더라도 불필요한 거래를 유발할 수 있습니다.
빠른 시장의 위험중요한 뉴스 또는 극단적인 시장 조건에서 가격이 스톱로스를 빠르게 돌파하여 실제 손실이 예상보다 더 많이 발생할 수 있습니다.
매개변수 최적화 위험이 전략은 여러 고정된 파라미터를 사용한다 (RSI의 35⁄65 값, ATR 곱하기 등). 이 파라미터는 다른 시장 환경에서 재 최적화가 필요할 수 있다.
추세 반전 위험EMA 필터를 사용함에도 불구하고, 이 전략은 트렌드가 반전될 때 신호를 보낼 수 있습니다. 특히 수평 상위 정리 시장에서 말이죠.
이러한 위험을 줄이기 위해 다음과 같은 것이 권장됩니다.
심층 분석을 통해 이 전략은 다음과 같은 방향으로 더 개선될 수 있습니다.
적응 변수 조정: 현재 전략은 고정된 RSI 마이너스와 ATR 곱수를 사용한다. 시장의 변동성이나 트렌드 강도에 따라 이러한 매개 변수를 자동으로 조정하는 것을 고려할 수 있다. 예를 들어, 높은 변동성 환경에서 더 엄격한 RSI 마이너스와 더 큰 ATR 곱수를 사용한다.
시장 환경 필터링: 시장 환경 식별 모듈을 추가하여 트렌드 시장과 가로 수직 정리 시장을 구분하고, 다른 시장 환경에 따라 전략 파라미터를 조정하거나 거래를 중지하십시오. 예를 들어, ADX ((평균 방향 지수) 를 사용하여 트렌드 강도를 평가 할 수 있습니다.
시간 필터: 특정 시장의 시기는 유동성이 낮거나 예측할 수 없습니다. 시간 필터를 추가하여 이러한 시기의 거래를 피할 수 있습니다.
다종 관련 필터: 관련 시장이나 지수에 대한 참조를 추가하고, 관련 시장의 방향이 일치하는 경우에만 거래합니다. 예를 들어, 전체 주식 지수가 상승하는 경우에만 개별 주식에서 더 많이 거래하십시오.
정지 손실 최적화ATR 1배를 달성하면 일부 포지션을 평정하고 ATR 2배를 달성하면 나머지 포지션을 평정하는 등, 전체 수익성을 높이기 위해 분량 중단 전략을 적용하는 것을 고려할 수 있습니다.
기계 학습 강화: 기계 학습 알고리즘을 사용하여 파라미터 선택을 최적화하거나, 히스토리 데이터 트레이닝 모델을 통해 어떤 돌파 신호가 성공할 가능성이 높을지를 예측할 수 있다.
위의 최적화 방향의 구현은 전략의 안정성과 수익성을 향상시키는데 도움이 될 것이며, 특히 다양한 시장 환경에서의 적응력을 향상시킬 것입니다.
다중 시간 프레임 지지부진 동력 단선 거래 전략은 기술 분석의 여러 고전적 방법을 통합하여 지지부진, 트렌드 추적, 동력 확인 및 거래량 분석을 포함합니다. 높은 시간 프레임에서 중요한 가격 수준을 식별하고 낮은 시간 프레임에서 거래를 수행함으로써, 이 전략은 유연성을 유지하면서 더 신뢰할 수있는 시장 구조 지원을 얻을 수 있습니다.
전략의 동적 리스크 관리 메커니즘과 2:1의 리스크 수익 설정은 좋은 장기 수익 잠재력을 제공합니다. 그러나, 짧은 라인 거래 전략으로서 사용자는 거래 비용 통제와 과도한 거래 위험에 주의를 기울여야합니다. 적절한 시장 환경 필터링과 파라미터 최적화를 통해 전략의 안정성과 적응성을 더욱 높일 수 있습니다.
이 전략은 단선 거래 기회를 추구하는 양적 거래자에게 구조화된 프레임 워크를 제공하지만, 실제 거래 전에 충분한 역사 회귀와 시뮬레이션 거래를 수행하여 다양한 시장 환경에서 전략이 기대에 부합하는 성능을 보장하는 것이 좋습니다.
/*backtest
start: 2024-03-26 00:00:00
end: 2025-03-25 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Support & Resistance Scalping", overlay=true)
// Identify Higher Timeframe Support & Resistance Levels
htf = "15"
htfLow = request.security(syminfo.tickerid, htf, ta.lowest(low, 15))
htfHigh = request.security(syminfo.tickerid, htf, ta.highest(high, 15))
// Detect Breakdown & Breakout on 1-Minute Chart with Confirmation
breakdownConfirmed = ta.crossunder(close, htfLow) and close < htfLow
breakoutConfirmed = ta.crossover(close, htfHigh) and close > htfHigh
// Momentum Confirmation (RSI and ATR for Volatility)
rsiValue = ta.rsi(close, 14)
atr = ta.atr(14)
avgAtr = ta.sma(atr, 14)
strongDownMomentum = rsiValue < 35 and close < htfLow - atr * 0.2 and atr > avgAtr
strongUpMomentum = rsiValue > 65 and close > htfHigh + atr * 0.2 and atr > avgAtr
// Trend Confirmation using EMA
emaFast = ta.ema(close, 9)
emaSlow = ta.ema(close, 50) // Added 50 EMA for stronger trend confirmation
volumeAvg = ta.sma(volume, 20) // Average volume for confirmation
highVolume = volume > volumeAvg // Require higher volume on breakdown
shortCondition = breakdownConfirmed and strongDownMomentum and close < emaFast and close < emaSlow and highVolume
longCondition = breakoutConfirmed and strongUpMomentum and close > emaFast and close > emaSlow and highVolume
// Dynamic Stop-Loss & Take-Profit Adjustments (Improved R:R 2:1)
shortSL = ta.highest(high, 5) + atr * 0.2 // Reduced SL multiplier to limit risk
shortTP = close - atr * 2.0 // Increased TP for better reward
longSL = ta.lowest(low, 5) - atr * 0.2 // Reduced SL multiplier to limit risk
longTP = close + atr * 2.0 // Increased TP for better reward
// Execute Trades with Entry and Exit Markers
if (shortCondition)
strategy.entry("Short", strategy.short)
label.new(bar_index, close, "▼", color=color.red, textcolor=color.white, size=size.small)
strategy.exit("Take Profit Short", from_entry="Short", limit=shortTP, stop=shortSL)
label.new(bar_index, shortTP, "▲", color=color.green, textcolor=color.white, size=size.small)
if (longCondition)
strategy.entry("Long", strategy.long)
label.new(bar_index, close, "▲", color=color.green, textcolor=color.white, size=size.small)
strategy.exit("Take Profit Long", from_entry="Long", limit=longTP, stop=longSL)
label.new(bar_index, longTP, "▼", color=color.red, textcolor=color.white, size=size.small)