Prop Evaluation Session EA
- Experts
-
Heiko Manfred Priebusch
안녕하세요! 찾아주셔서 감사합니다.
제 프로그램 뒤에는 단순히 코드를 작성하는 익명의 개발자가 아닌, 차트 앞에서 다음의 확실한 결정을 내리기 위해 끊임없이 고민하는 트레이더의 마음을 누구보다 잘 아는 제가 있습니다. - 버전: 1.1
- 활성화: 10
통계적 증거를 통한 프랍 트레이딩(Prop Trading) 챌린지 제어
Prop Evaluation Session은 강력한 볼륨 연속성(volume-continuation) 설정을 기반으로 설계된 MetaTrader 5용 완전 자동 엑스퍼트 어드바이저(EA)입니다. 프랍 펌(Prop Firm) 평가 통과를 목표로 하는 수동 및 알고리즘 트레이더를 위해 특별히 구축되었으며, 급격한 시장 변동성으로부터 계좌의 드로우다운을 방어하도록 설계된 포괄적인 리스크 관리 레이어를 포함하고 있습니다.
중요: 이 EA는 5분 타임프레임에서 사용해야 합니다
이 시스템은 독일 지수 DE40(브로커의 명명 규칙에 따라 GER40, Ger40 또는 DE30으로 표시될 수 있음, 예: FTMO)을 위해 특별히 개발, 테스트 및 최적화되었습니다. 기본 로직은 다른 지수나 자산군에서도 작동할 수 있지만, 다른 시장에서의 성능은 검증되지 않았습니다. 사용자는 다른 종목에서의 실행 가능성을 판단하기 위해 직접 테스트 및 최적화를 수행해야 합니다.
최고의 백테스팅 도구: 롤링 챌린지 시뮬레이터
표준 백테스트는 시작 날짜를 임의로 선택함에 따라 편향되기 쉽습니다. 이를 해결하기 위해 Prop Evaluation Session은 전략 테스터에 직접 내장된 독창적인 롤링 챌린지 시뮬레이터(Rolling Challenge Simulator)를 포함하고 있습니다. 백테스트의 각 달력 일자에 새로운 독립적인 가상 챌린지가 시작됩니다. 이는 "지난 5.5년 동안 무작위로 아무 날에나 시작했을 때 챌린지를 통과하거나 실패할 통계적 확률은 얼마인가?"라는 중요한 질문에 답을 제공합니다.
과거 백테스트 결과 (DE40 / GER40 - Dukascopy 리얼 틱 데이터)
2021년 1월 1일부터 2026년 6월 30일까지 100% 리얼 틱 데이터를 사용하여 광범위한 다년도 백테스트를 수행했습니다. 기본 설정은 표준 $10,000 챌린지 규칙(수익 목표 10%, 일일 손실 한도 5%, 총 손실 한도 10%)을 따르며 FTMO 스윙(Swing) 계좌 구조를 활용합니다.
구성 A: 보수적 (거래당 1.0% 리스크)
- 챌린지 시뮬레이션 승률: 100.0% (1,415회 시작 중 1,118회 성공, 0회 실패)
- 목표 달성 평균 기간: 111.6일
- 순이익 (단일 실행): €6,461.41
- 최대 지분 드로우다운 (Equity Drawdown): €1,083.68 (초기 예치금의 10.8%)
- 수익 팩터 (Profit Factor): 1.65
- 회복 팩터 (Recovery Factor): 5.96
분석: 방어적인 접근 방식입니다. 이 과거 시뮬레이션에서 드로우다운 한도를 초과한 챌린지는 없었으나, 목표 달성까지는 평균적으로 더 오랜 시간이 소요됩니다.
구성 B: 공격적 (거래당 2.0% 리스크)
- 챌린지 시뮬레이션 승률: 71.6% (1,415회 시작 중 960회 성공, 380회 실패)
- 목표 달성 평균 기간: 74.1일
- 손실 발생 평균 기간: 38.1일
- 순이익 (단일 실행): €16,968.15
- 최대 지분 드로우다운 (Equity Drawdown): €3,685.75 (초기 예치금의 12.6%)
- 수익 팩터 (Profit Factor): 1.59
- 회복 팩터 (Recovery Factor): 4.60
분석: 목표 달성까지의 속도는 빠르지만, 높은 레버리지로 인해 일일 또는 총 손실 한도를 초과할 위험이 상당히 높습니다.
프랍 펌 규칙에 맞추기
기본 설정은 FTMO 스윙(Swing) 계좌 구조에 가깝게 구성되어 있습니다. 그러나 모든 프랍 펌은 고유한 규칙, 안전 버퍼 및 실행 기준을 가지고 있습니다. 계약된 프랍 펌의 구체적인 약관을 엄격히 준수할 수 있도록 EA 입력값(일일 손실 한도, 총 손실 한도, 수익 목표 등)을 신중하게 조정해야 합니다.
상세 입력 매개변수 가이드
===== 거래 실행 설정 (Trade Execution Settings) =====
- MagicNumber: 포지션 분리 및 추적을 위한 고유 ID.
- Slippage: 허용되는 최대 슬리피지(포인트 단위).
- MaxSpread: 새 주문 진입을 차단하기 전 허용되는 최대 스프레드(포인트 단위).
- InpTrailingStopType: 핍(Pips), 최근 캔들 고점/저점, ATR, 또는 퍼센트 중 선택.
- InpInitialStopType: 초기 손절매(Stop Loss)를 정의하는 방법.
- InpTakeProfitType: 이익 실현(Take Profit) 목표를 정의하는 방법.
===== 자금 및 리스크 관리 (Money & Risk Management) =====
- SelectedLotSizeType: 고정 로트(Static) 또는 동적 로트 사이즈 선택.
- LotSize: Static 선택 시 사용할 로트 사이즈.
- SelectedRiskAmountType: 리스크를 계좌 잔고의 퍼센트(%) 또는 고정 금액으로 설정.
- MaximumProzRiskOnEquity: 거래당 최대 리스크(% 단위).
- MaximumMoneyRiskPerTrade: 거래당 최대 리스크(고정 금액 단위).
===== 프랍 트레이딩 챌린지 가드 (Prop Trading Challenge Guards) =====
- SelectedDailyLimitType: 일일 손실 한도를 퍼센트 또는 고정 금액으로 설정.
- StopTradingonMaxLossProz / Money: 일일 손실을 제한하고, 도달 시 EA가 거래 중단.
- SelectedTotalLimitType: 총 손실 한도를 퍼센트 또는 고정 금액으로 설정.
- StopTradingonMaxTotalLossProz / Money: 총 손실 임계값 도달 시 EA 영구 중단.
- SelectedWinTargetType: 일일 수익 목표를 퍼센트 또는 고정 금액으로 설정.
- StopTradingonMaxWinProz / Money: 수익 목표 달성 시 당일 거래 중단.
- InpLimitSafetyBufferProz: 슬리피지로 인한 우발적인 한도 초과를 방지하기 위해 한도에서 차감되는 안전 버퍼(예: 10% 설정 시 $300 한도를 내부적으로 $270로 처리).
- InpForceCloseOnLimitBreach: 드로우다운 한도 위반 시 모든 시장 포지션을 즉시 청산.
===== 본전(Break-Even) 설정 =====
- BreakEvenActive: 본전 수정 기능 활성화/비활성화.
- BreakEvenWhen: 본전 이동을 트리거하기 위해 필요한 수익 포인트 거리.
- BreakEvenTarget: 진입가 위/아래의 안전 수익 거리(포인트 단위).
===== 기술적 지표 설정 =====
- InitSL / Tsp / Tp Settings: 동적 목표 및 트레일링 손절매 계산에 사용되는 매개변수(ATR 기간, 승수, 캔들 수)를 사용자 지정.
===== 거래 세션 및 시간 조정 =====
- TradingSession1: 거래 세션 활성화/비활성화.
- Start / End Hour & Minute: 세션의 정확한 시작 및 종료 시간 정의.
- InpExitOnSessionEnd: 세션 종료 시 미체결 포지션 및 대기 주문을 강제 청산.
- InpFridayCloseActive: 주말 갭(gap) 위험을 피하기 위해 금요일 오후 모든 포지션 청산.
- InpBrokerGmtOffset: 브로커 서버 시간의 GMT 오프셋 정의(전략 정확도에 필수).
- InpBrokerDstConvention: 브로커 서버의 서머타임(DST) 적용 방식(없음, EU 또는 미국) 선택.
중요: 브로커 서버 시간 및 세션 정렬
입력 매개변수의 시간 설정을 주의 깊게 확인하십시오. 거래 세션(Trading Session) 시간과 금요일 청산 설정(Friday Close-Out Settings)은 사용자의 로컬 컴퓨터 시간이 아니라 전적으로 브로커의 서버 시계를 기준으로 합니다.
이 EA의 기본값은 표준 GMT+2(EU 서머타임/일광 절약 시간 적용) 서버 시계를 사용하는 브로커에 최적화되어 있습니다. 이는 FTMO와 같은 주요 유럽 프랍 펌에서 가장 일반적인 설정입니다. 만약 브로커의 서버가 다른 시간대(예: GMT+0, GMT-5, 또는 GMT+8)에서 운영된다면, 의도한 실제 실행 시간대에 맞추기 위해 이러한 입력 시간을 수동으로 조정해야 합니다.
특정 브로커에 맞춰 시간을 조정하는 방법:
- 브로커의 시계 확인: MetaTrader 5 "시장 정보(Market Watch)" 창에 표시된 시간을 확인하거나 브로커 웹사이트에서 GMT 오프셋을 찾아보십시오.
- 차이 계산: 브로커의 GMT 오프셋과 기본 GMT+2 설정 간의 차이를 계산하십시오.
- 입력값 조정: 세션 시작/종료 시간과 금요일 청산 시간을 해당 차이만큼 앞당기거나 늦추십시오.
실전 예시: GMT+0 서버 시간을 사용하는 브로커를 선택할 경우, 해당 시계는 기본 GMT+2 설정보다 2시간 느립니다. 최적화된 기본 설정과 정확히 동일한 실시간으로 거래를 실행하려면 입력을 다음과 같이 조정해야 합니다:
- StartHourSession1을 9(09:00)에서 7(07:00)로 변경하십시오.
- EndHourSession1을 20(20:00)에서 18(18:00)로 변경하십시오.
- InpFridayCloseHour를 19(19:00)에서 17(17:00)로 변경하십시오.
참고: 내부 핵심 전략 신호는 InpBrokerGmtOffset 및 InpBrokerDstConvention 입력값을 기준으로 자동으로 전환되지만, 일반 거래 세션 필터와 주말 청산 로직은 사용자의 수동 입력 선택과 직접적으로 연결되어 있습니다. 따라서 실제 계좌나 평가 계좌에서 EA를 실행하기 전에 브로커의 서버 시계를 확인하는 것은 필수적인 단계입니다.
중요 리스크 면책 조항
금융 상품 거래는 높은 위험을 수반하며 모든 투자자에게 적합하지 않을 수 있습니다. 여기에 제시된 백테스트 결과는 과거의 리얼 틱 데이터를 사용한 시뮬레이션이며 미래의 성과를 보장하지 않습니다. 어떠한 자동 거래 시스템도 실제 시장 환경에서 수익이나 평가 통과를 보장할 수 없습니다. 실제 자본을 투자하기 전에 항상 데모 환경이나 MT5 전략 테스터에서 충분한 개인 테스트를 수행하십시오.
