설명
전체 리뷰 – TrendPullback ATR Pro
봇 이름: UltimateActivationAwareBot – TrendPullback ATR Pro
주요 시장: US500 (S&P 500 지수 CFD)
참고 레버리지: 1:500
스타일: 깊은 되돌림과 고급 위험/포지션 관리를 포함한 추세 추종.
이 cBot 조정에 도움이 필요하거나 브로커, 심볼 또는 시간대에 맞춘 맞춤 최적화 아이디어가 필요하신가요?
1. 핵심 아이디어
TrendPullback ATR Pro는 다중 필터 추세-되돌림 시스템으로 설계되었습니다:
- 구조적 추세에 따라 거래 (반대가 아니라),
- 충동적인 캔들을 쫓기보다는 의미 있는 되돌림을 기다리고,
- ATR을 사용하여 변동성 변화에 적응하며,
- RSI를 사용하여 과도한 극단 상태를 피합니다.
논리:
- EMA(20/50/200)를 통한 추세 구조
-
- 롱: 가격이 EMA200 위에 있고 EMA20 > EMA50 > EMA200
- 숏: 가격이 EMA200 아래에 있고 EMA20 < EMA50 < EMA200
- ADX + DI+/DI−를 통한 모멘텀 확인
-
- ADX가 최소 임계값 이상 (평탄한 구간 없음),
- DI+/DI−가 거래 방향과 일치.
- ATR로 측정된 되돌림 깊이
-
- 가격은 최소한
PullbackAtrK × ATR만큼 EMA20 쪽으로 되돌아와야 합니다. - 이것은 작은 잡음성 하락을 걸러냅니다.
- 가격은 최소한
- “건강” 필터로서의 RSI
-
- 정규화 없이 극단적인 과매수/과매도 구간에서 진입을 피합니다.
- 진입 트리거
-
- EMA20 위/아래로의 교차,
- 또는 이전 봉의 돌파/하락.
🔎 중요 참고 사항:
최적화 및 검증은 주로 1:500 레버리지의 US500에서 수행되었습니다.
US500과 같은 주가지수에서 견고한 결과를 얻는 것은 금(XAUUSD)보다 훨씬 어렵습니다. 금은 일반적으로 최적화가 쉽고 과적합되기 쉽습니다.
따라서 이 봇은 “금 전용” 환경뿐 아니라 지수를 주요 테스트베드로 하여 조정되었습니다.
2. 실용적 사용법 및 작업 흐름
1단계 – 항상 데모에서 시작
- US500 M30 또는 H1로 시작하세요.
- 거래당 RiskPerc ≈ 0.25–0.50%를 사용하세요.
- 백테스트에서 최소 3–6개월의 과거 데이터를 목표로 하고, 이후 데모 포워드 테스트를 진행하세요.
2단계 – 블록 단위로 최적화
한 번에 모든 것을 조정하지 마세요. 단계별로 작업하세요:
- 레짐 및 추세 필터 (EMA, ADX, ATR 백분위)
봇이 명백한 횡보 구간을 피하도록 하세요. - 진입 논리 (되돌림 + 트리거)
진입이 무작위가 아니라 진정한 되돌림 후에 이루어지는지 검증하세요. - 거래 관리 (SL/TP, 부분 청산, BE, 트레일링, 공격적 모드)
순이익뿐 아니라 R-배수 및 최대 낙폭 프로필에 집중하세요.
3단계 – US500 대 금 대 기타 자산
- US500의 경우, 테스트할 일반적인 시작 범위:
-
- AtrSLmult: 1.8–2.5
- AtrTPmult: 2.5–3.5
- PullbackAtrK: 0.20–0.35
- RiskPerc: 0.25–0.5
- 금 (XAUUSD)의 경우:
-
- 원칙적으로 동일한 논리가 작동하지만,
- ATR과 핍 스케일이 매우 다릅니다.
→ 항상 각 상품별 별도 최적화를 수행하세요.
4단계 – 공격적 모드
- AggressiveMode = true:
-
- 부분 TP를 비활성화하고,
TrailStartR × R이후에만 트레일링을 활성화합니다.
- 적합한 경우:
-
- 최대 수익을 노리는 경우,
- 주식 변동성에 익숙한 트레이더.
- 권장하지 않는 경우:
-
- 낙폭을 싫어하는 경우,
- 이미 높은 레버리지/높은 위험을 감수하는 경우.
3. 매개변수 분해 및 사용 팁
3.1. 기본, 일수 및 세션
- 라벨
이 봇의 모든 포지션에 대한 그룹 라벨; 동일 심볼에서 여러 시스템을 운영할 때 유용합니다. - SignalTF
신호 및 지표를 구동하는 시간대.
권장: US500의 M30 또는 H1. - AllowLong / AllowShort
백테스트에서 강한 비대칭성이 나타나면 한 쪽을 비활성화할 수 있습니다 (예: 지수에서 롱 전용). - OneTradePerBar
True = 더 깔끔한 동작, 한 봉에 여러 중첩 진입을 방지합니다. - 일 및 세션 필터
-
- 원하는 요일만 활성화하세요 (월~금).
- 세션 시작/종료 = 일중 시간대 (서버 시간).
- 유동성이 낮거나 야간 구간을 피하는 데 유용합니다.
- MaxSpreadPips
FX에 더 관련 있지만, 지수에도 최대 스프레드 제한을 두는 것이 안전합니다.
3.2. 거래량 / 위험 관리
- UseRiskPositionSizing = true
권장: 봇이 핍 단위 SL과 계좌 잔액을 사용해 포지션 크기를 계산합니다. - RiskPerc
-
- 보수적: 0.25%
- 표준: 0.50%
1:500 레버리지에서 1% 이상은 매우 공격적일 수 있습니다.
- FixedVolumeUnits
UseRiskPositionSizing = false일 때만 사용됩니다.
빠른 테스트에 좋지만, 위험 기반 크기 조정보다 장기적으로 덜 견고합니다.
3.3. SL/TP: ATR 기반 대 고정 핍
- UseAtrStops = true
ATR SL/TP는 변동성에 적응하며, 동일한 설정이 다양한 변동성 구간에서 작동합니다. - AtrSLmult / AtrTPmult
-
- 2×ATR SL은 “적당한 여유를 주되 과하지 않은” 고전적인 수준입니다.
- 3×ATR TP는 순수 SL/TP 사용 시 약 1.5R를 제공합니다.
부분 청산 및 트레일링과 결합하면 더 세밀한 조정이 가능합니다.
- UsePipsStops
활성화하면 핍 기반 SL/TP가 ATR을 대체합니다.
핍 값을 알고 고정 숫자 스톱을 원할 때만 사용하세요. - SlLongPips / TpLongPips – 롱 전용
- SlShortPips / TpShortPips – 숏 전용
테스트에서 비대칭성이 나타날 경우 이 분리는 매우 유용합니다 (예: 지수는 공황 숏과 점진적 롱에서 다르게 행동하는 경우가 많음).
3.4. ATR 트레일링 스톱 (롱 대 숏)
- UseAtrTrailLong / AtrTrailLongMult
- UseAtrTrailShort / AtrTrailShortMult
다음이 가능합니다:
- 롱에만 또는 숏에만 ATR 트레일링 활성화,
- 다른 배수를 사용: 예를 들어, 숏이 빠르게 반등하는 경향이 있으면 더 타이트한 트레일링.
배수 논리:
- 1.0–1.5 → 타이트한 트레일링; 빠르게 보호하지만 수익을 일찍 자릅니다.
- 2.0–3.0 → 느슨한 트레일링; 거래에 숨 쉴 공간을 주지만 더 깊은 되돌림을 허용합니다.
공격적 모드에서는 이익이 TrailStartR × R를 초과할 때만 트레일링이 시작됩니다.
3.5. 부분 TP 및 시간 기반 종료
- PartialAtR
부분 청산 전 이익 R 배수.
1.0은 일반적인 선택: 1R에서 일부 이익을 고정하고 나머지는 계속 진행. - PartialPercent
30–60%가 보통 좋은 범위이며, 50%가 기본값입니다. - MaxBarsInTrade
거래를 유지할 최대 신호 봉 수. -
- 0 = 비활성화.
- M30 기준 50봉 ≈ 며칠; 거래가 무한정 지속되는 것을 방지하는 “타임아웃”으로 사용 가능.
3.6. 손익분기점(BE) 각 측면별 (롱 / 숏)
- UseBreakEven, UseBreakEvenLong, UseBreakEvenShort
BE 로직에 대한 마스터 및 각 측면별 토글. - BeLongTriggerPips / BeShortTriggerPips
SL을 BE로 이동하기 전에 필요한 이익(핍 단위). -
- 너무 낮으면 → 계속 BE에서 정지됩니다.
- 너무 높으면 → BE의 심리적 가치가 적습니다.
- BeLongOffsetPips / BeShortOffsetPips
작은 양의 양수 오프셋은 스프레드 + 수수료를 커버하는 데 도움이 됩니다 (예: 1–2 핍).
3.7. 공격적 모드
- AggressiveMode
-
- 부분 TP를 비활성화하고,
TrailStartR × R이후에만 트레일링을 활성화합니다.
- TrailStartR
예: 1.5 또는 2.0
거래가 1.5R/2R 이익을 낼 때만 트레일링 SL이 가격을 따라가기 시작합니다.
이 모드는 더 방향성 있고 확신이 높은 환경이나 거래당 기본 위험을 낮출 때 사용하세요.
3.8. 레짐 필터
- UseEmaTrend, EmaFastPeriod, EmaMidPeriod, EmaSlowPeriod
EMA 스택이 추세 레짐을 정의합니다. 이를 끄면 시스템이 더 “항상 켜짐” 상태가 되고 일반적으로 더 시끄러워집니다. - UseAdx, AdxPeriod, AdxMin
ADX는 낮은 추세 구간을 필터링합니다.
일반적인 ADXMin: 18–20 이상. - UseRsi, RsiPeriod, RsiOB, RsiOS
RSI는 이미 극단적인 수준에 도달한 움직임에서 진입을 방지합니다.
봇은 또한 RSI 기울기(이전 봉 대비 개선)를 확인합니다. - PullbackAtrK
ATR 단위로 EMA20 대비 최소 되돌림 깊이.
값이 높을수록 되돌림은 적지만 더 깊습니다.
3.9. 변동성 및 압축 후 필터
- UseAtrPct, AtrPctLookback, AtrPctMin
현재 ATR이 최근 이력의 특정 백분위 이상일 때만 거래하도록 사용합니다.
예: AtrPctMin = 0.6 → 하위 40%의 조용한 변동성 구간 무시. - UsePostSqueeze, BbPeriod, SqueezePct, ExpansionPct
고전적인 “볼린저 밴드 압축 후 확장” 논리: -
- 먼저 변동성 압축(압착),
- 그 다음 확장, 이후 봇이 거래를 허용합니다.
3.10. 텔레메트리
- WriteCsv, CsvPath
true이면 봇이 상태를 CSV로 기록합니다 (자본, 일일 손익, 연속 손실 등).
특히 여러 시작 날짜에서 견고성을 테스트하는 롤링 시작 분석과 결합하면 Excel/Python 외부 분석에 완벽합니다.
요약
Key features include:
- Trend identification via EMA (20, 50, 200) stacking to confirm market direction.
- Momentum confirmation using ADX and directional indicators (DI+/DI−).
- Pullback depth measured in ATR units to filter out insignificant retracements.
- Entry triggers based on price crossing EMA20 or breaking the previous bar.
- Advanced risk and position management with ATR-based stop loss and take profit levels.
- Optional aggressive mode that disables partial take profits and activates trailing stops after a defined profit threshold.
- Configurable trade management tools such as partial profit-taking, break-even stops, and time-based exits.
- Regime filters including volatility percentile and Bollinger Band squeeze/expansion logic to avoid low-volatility or sideways markets.
- Telemetry support for detailed trade logging and external analysis.
The bot is optimized primarily for US500 on M30 or H1 timeframes but can be adapted to other instruments like gold (XAUUSD) with separate parameter tuning. It is recommended to start testing on demo accounts with conservative risk settings before live deployment.
고객 리뷰
5 | 100 % | |
4 | 0 % | |
3 | 0 % | |
2 | 0 % | |
1 | 0 % |