TriZone Semafor Pro
- 지표
-
Ahmed Hamed Hamed Eadwan
KOREAN TRANSLATION — 한국어
==============================
TITLE:
MQL5 개발자 & 트레이더 | R protocols 창립자
ABOUT:
안녕하세요, 저는 Ahmed입니다. 아랍에미리트에 기반을 둔
트레이더이자 MQL5 개발자이며, R protocols의 창립자입니다.
1984년부터 코드를 작성해 왔고, 2006년부터 시장에서 거래를
해왔습니다. 수년 동안 실제 시장 경험을 통해 개선하며 - 버전: 1.0
- 활성화: 5
기관급 멀티레벨 피봇 탐지, 자동화된 시장 구조 분석, 공급 및 수요 합류 구역, 실시간 대시보드 분석 및 EA 자동화 통합이 필요한 경우 TriZone Semafor Pro는 MetaTrader 5 터미널을 위한 최고의 솔루션입니다.
Pro 버전 핵심 기능
독점적인 3레벨 ZigZag 엔진(패스트 기간 5, 미디엄 기간 13, 슬로우 기간 34)을 기반으로 구축된 TriZone Semafor Pro는 엄격한 배타적 우선순위 패스(레벨 3이 레벨 2보다 우선, 레벨 2가 레벨 1보다 우선)를 통해 3개의 독립적인 타임스케일에서 확정된 스윙 포인트를 표시합니다.
- ATR 적응형 편차: ATR 기반의 동적 피봇 필터링은 고정된 포인트 대신 시장 변동성에 따라 자동으로 조정됩니다. 수동 고정 포인트 모드도 계속 사용할 수 있습니다.
- 시장 구조 엔진: 각 타임프레임 레벨별 BOS(구조 돌파) 및 CHoCH(특성 변화) 실시간 자동 탐지, HH / HL / LH / LL 스윙 라벨 표시.
- 공급 및 수요 합류 구역 (Supply & Demand): 여러 ZigZag 타임스케일이 일치하는 곳에 기관 주문 블록 구역을 자동으로 생성하며, 강도 등급(L1, L2+L3, L1+L2+L3) 및 극성 반전 로직을 제공합니다.
- 지지 및 저항 레이 (Ray): 확정된 스윙 고점 및 저점에서 연장되는 동적 수평 레이로, 구조적 레벨별로 스타일이 구분됩니다.
- 배타적 신호 우선순위: 캔들당 항상 최고 레벨이 우선합니다. 신호 중복이나 이중 카운트 없이 방향당 하나의 깔끔한 화살표만 표시됩니다.
- 실시간 차트 대시보드: 현재 멀티레벨 시장 통계, 활성 신호 레벨, 현재 구역, 구조 이벤트, 레벨별 트렌드 및 시스템 상태를 표시합니다.
- 전체 알림 수트: 팝업, 모바일 Push 알림, 이메일 및 사운드 알림 — 새로 확정된 피봇당 한 번만 발송됩니다.
- 100% Anti-Repaint 모드: 신호는 설정된 확정 창이 닫힌 후에만 게시됩니다. 화살표는 EA 버퍼와 동일한 엄격한 노리페인트 기준을 따릅니다.
- EA 자동화 버퍼 (Buffer 6): 단일 iCustom 호출로 통합할 수 있는 전용 EA 신호 강도 버퍼(+1.0 = 매수, -1.0 = 매도, 0.0 = 중립)를 제공합니다.
- 다중 인스턴스 안전: 고유 한 객체 네임 스페이스, 충돌 방지 및 차트 객체와 터미널 전역 변수의 자동 정리.
- 외부 의존성 없음: 순수 MetaTrader 5 네이티브 코드, 모든 종목 및 타임프레임에서 작동하며 DLL 임포트가 필요 없습니다.
공식 링크 및 문서
사용자 설명서 및 설정 가이드: https://www.mql5.com/en/blogs/post/773880
공식 MQL5 채널: https://www.mql5.com/en/channels/rprotocols
노리페인트 및 EA 계약 (Buffer 6)
Buffer 6은 자동화된 EA 시스템을 위한 멀티레벨 신호 강도를 출력합니다 (+1.0 = 매수, -1.0 = 매도, 0.0 = 중립/충돌):
- 배타성 등급: Buffer 6은 배타 처리 후의 계층 구조를 반영합니다 (L3 > L2 > L1).
- 노리페인트 시프트 계약: Anti-Repaint가 ON인 경우 안전한 시프트에서 읽은 값은 최종적이며 수정되지 않습니다. 정확한 최소 안전 시프트는 전역 변수( TZP_<Hash8>_MinShift )를 통해 조회할 수 있습니다.
투명성 및 성능
- 테스터 최적화: 전략 테스터 최적화 진행 중에는 알림이 자동으로 비활성화됩니다.
- 헤드리스 모드: EA 내부에서 HeadlessMode = 1 을 활성화하면 시각적 요소가 숨겨져 최고 실행 속도를 제공합니다.
TriZone Semafor Pro가 귀하의 트레이딩에 도움이 된다면 솔직한 리뷰와 평가를 남겨주세요. 지원해주셔서 감사합니다!
iCustom 참조 테이블 — 출력 버퍼
| 버퍼 인덱스 | 신호 | 설명 |
|---|---|---|
| 0 (BufLow1) | 매수 (BUY) | 레벨 1 저점 피봇 가격 — 패스트 ZigZag |
| 1 (BufHigh1) | 매도 (SELL) | 레벨 1 고점 피봇 가격 — 패스트 ZigZag |
| 2 (BufLow2) | 매수 (BUY) | 레벨 2 저점 피봇 가격 — 미디엄 ZigZag |
| 3 (BufHigh2) | 매도 (SELL) | 레벨 2 고점 피봇 가격 — 미디엄 ZigZag |
| 4 (BufLow3) | 매수 (BUY) | 레벨 3 저점 피봇 가격 — 슬로우 ZigZag |
| 5 (BufHigh3) | 매도 (SELL) | 레벨 3 고점 피봇 가격 — 슬로우 ZigZag |
| 6 (BufSignal) | 매수 / 매도 | EA 신호 강도: 매수 = +1/+2/+3 (L1/L2/L3), 매도 = -1/-2/-3 (L1/L2/L3), 없음 = 0 |
iCustom 코드 예시
파일명: "TriZone_Semafor_Pro" (.ex5 확장자 제외). Expert Advisors 내부에서는 항상 HeadlessMode = 1 로 설정하십시오.
//+------------------------------------------------------------------+ //| iCustom handle — TriZone_Semafor_Pro v1.0 | //+------------------------------------------------------------------+ int g_tzsHandle = INVALID_HANDLE; int OnInit() { g_tzsHandle = iCustom( _Symbol, PERIOD_CURRENT, "TriZone_Semafor_Pro", // Level 1: Fast 5, 1, 3, 159, 159, 2, // Level 2: Medium 13, 8, 5, 108, 108, 3, // Level 3: Slow 34, 21, 12, 108, 108, 4, // Instance "EA1", 0, 1, // Anti-Repaint 1, 0, // Alerts & Dashboard 0, 0, 0, 0, 0, "alert.wav", 0, 20, 30, clrDodgerBlue, clrOrangeRed, C'20,20,30', 9 ); if(g_tzsHandle == INVALID_HANDLE) { PrintFormat("[EA] TriZone_Semafor_Pro handle failed: err=%d", GetLastError()); return INIT_FAILED; } return INIT_SUCCEEDED; } void OnTick() { int safeShift = 4; double sigBuf[1]; if(CopyBuffer(g_tzsHandle, 6, safeShift, 1, sigBuf) != 1) return; int sigValue = (int)sigBuf[0]; if(sigValue > 0) { PrintFormat("매수 신호 감지! 레벨 %d (시프트 %d)", sigValue, safeShift); } else if(sigValue < 0) { PrintFormat("매도 신호 감지! 레벨 %d (시프트 %d)", MathAbs(sigValue), MathAbs(safeShift)); } } void OnDeinit(const int reason) { if(g_tzsHandle != INVALID_HANDLE) { IndicatorRelease(g_tzsHandle); g_tzsHandle = INVALID_HANDLE; } }
EA 전역 변수를 통한 MinShift 자동 감지
인디케이터는 전역 변수를 통해 안전한 최소 읽기 시프트를 제공합니다:
// EA: 전역 변수를 통한 안전한 시프트 자동 감지 int GetMinShift(string instanceID) { string hash = HashToHex8(instanceID); string gvName = "TZP_" + hash + "_MinShift"; if(GlobalVariableCheck(gvName)) return (int)GlobalVariableGet(gvName); return 4; // 기본 예비 값 }

