NEXA Trend Swing
- Experts
- Park Seongcheon
- 버전: 1.2
- 업데이트됨: 2 12월 2025
- 활성화: 10
✅ Live Forward Performance (Myfxbook – Demo Verified)
Myfxbook:
/ portfolio / nexagoldai / 11833106
This system is currently running in verified forward testing.
Real account will be connected after capital scaling.
----------------------------------------
# NEXA EMA-RSI Swing v2 사용설명서
## 📋 목차
1. [EA 개요](#ea-개요)
2. [전략 설명](#전략-설명)
3. [설정 파라미터](#설정-파라미터)
4. [사용 방법](#사용-방법)
5. [주의사항](#주의사항)
6. [성능 통계](#성능-통계)
---
## EA 개요
**NEXA EMA-RSI Swing v2**은 트렌드 추종과 풀백 스윙 전략을 결합한 자동매매 Expert Advisor입니다.
### 주요 특징
- **트렌드 추종**: H1 시간프레임에서 EMA 크로스로 트렌드 방향 확인
- **엔트리 신호**: M15 시간프레임에서 RSI, Stochastic, ADX를 활용한 진입 타이밍 포착
- **리스크 관리**: ATR 기반 동적 SL/TP, 변동성 조정, 동적 로트 크기
- **포지션 관리**: 트레일링 스톱, 브레이크이븐, 부분 청산 기능
---
## 전략 설명
### 트렌드 확인 (H1)
- **EMA Fast (50) > EMA Slow (200)**: 상승 트렌드
- **EMA Fast (50) < EMA Slow (200)**: 하락 트렌드
- 선택적: 종가가 EMA Fast 위/아래에 있어야 트렌드 인정
### 진입 신호 (M15)
**BUY 조건 (상승 트렌드일 때):**
- RSI < 35 (과매도)
- Stochastic %K < 20 (과매도)
- ADX > 15 (추세 강도)
- 선택적: RSI 반전, Stochastic 골든크로스
**SELL 조건 (하락 트렌드일 때):**
- RSI > 65 (과매도)
- Stochastic %K > 80 (과매수)
- ADX > 15 (추세 강도)
- 선택적: RSI 반전, Stochastic 데드크로스
### 손절/익절
- **SL**: ATR × 1.5 (기본값, 변동성 조정 가능)
- **TP**: ATR × 4.0 (기본값, 변동성 조정 가능)
---
## 설정 파라미터
### ▶ [Input Parameters]
#### `InpLots` (기본값: 1.0)
- 거래 로트 크기
- 권장: 저위험 거래 시 0.1
- 동적 로트 크기 사용 시 무시됨
#### `InpSymbol` (기본값: "US500Cash")
- 거래할 심볼
- 예: "US500Cash", "US500", "SPX500"
- Market Validation 모드에서는 차트 심볼 자동 사용
#### `TrendTF` (기본값: PERIOD_H1)
- 트렌드 확인 시간프레임
- 권장: H1 (1시간)
#### `TrigTF` (기본값: PERIOD_M15)
- 진입 신호 확인 시간프레임
- 권장: M15 (15분)
---
### === EMA Trend Settings ===
#### `EmaFastPeriod` (기본값: 50)
- 빠른 EMA 기간
- 트렌드 방향 확인용
#### `EmaSlowPeriod` (기본값: 200)
- 느린 EMA 기간
- 트렌드 방향 확인용
#### `UseCloseFilter` (기본값: true)
- 종가 필터 사용 여부
- true: 종가가 EMA Fast 위/아래에 있어야 트렌드 인정
- false: EMA 크로스만으로 트렌드 인정
---
### === RSI Settings ===
#### `RsiPeriod` (기본값: 14)
- RSI 계산 기간
#### `RsiBuyLevel` (기본값: 35.0)
- BUY 신호 RSI 레벨 (과매도)
- RSI가 이 값보다 낮아야 BUY 신호
#### `RsiSellLevel` (기본값: 65.0)
- SELL 신호 RSI 레벨 (과매수)
- RSI가 이 값보다 높아야 SELL 신호
#### `RequireRSIReversal` (기본값: false)
- RSI 반전 신호 필수 여부
- true: RSI가 반전(상승/하락)해야 신호 인정
- false: 레벨만 확인
---
### === Stochastic Settings ===
#### `StochKPeriod` (기본값: 5)
- Stochastic %K 기간
#### `StochDPeriod` (기본값: 3)
- Stochastic %D 기간
#### `StochSlowing` (기본값: 3)
- Stochastic 슬로잉
#### `StochOBLevel` (기본값: 80.0)
- Stochastic 과매수 레벨
- SELL 신호용
#### `StochOSLevel` (기본값: 20.0)
- Stochastic 과매도 레벨
- BUY 신호용
#### `RequireStochCross` (기본값: false)
- Stochastic 크로스 필수 여부
- true: %K와 %D 크로스 필요
- false: 레벨과 방향만 확인
---
### === ADX Filter Settings ===
#### `AdxPeriod` (기본값: 14)
- ADX 계산 기간
#### `MinAdxValue` (기본값: 15.0)
- 최소 ADX 값
- 이 값보다 낮으면 거래하지 않음 (추세 약함)
#### `UseDirectionalFilter` (기본값: false)
- 방향성 필터 사용 여부
- true: +DI/-DI로 방향 확인
- false: ADX 값만 확인
---
### === ATR & Risk Management ===
#### `AtrPeriod` (기본값: 14)
- ATR 계산 기간
#### `AtrSLMult` (기본값: 1.5)
- SL용 ATR 배수
- SL = ATR × 1.5
#### `AtrTPMult` (기본값: 4.0)
- TP용 ATR 배수
- TP = ATR × 4.0
#### `MaxSpread` (기본값: 50.0)
- 최대 스프레드 (포인트)
- 스프레드가 이 값보다 크면 거래하지 않음
#### `RiskPercent` (기본값: 2.0)
- 거래당 리스크 비율 (%)
- 동적 로트 크기 사용 시 적용
#### `UseDynamicLotSize` (기본값: false)
- 동적 로트 크기 사용 여부
- true: SL 거리와 리스크 비율로 로트 자동 계산
- false: 고정 로트 사용
#### `UseVolatilityAdjustment` (기본값: false)
- 변동성 기반 SL/TP 조정
- true: 현재 변동성이 평균보다 높으면 SL/TP 확대, 낮으면 축소
#### `LowVolatilityMult` (기본값: 0.8)
- 낮은 변동성 배수
- 변동성이 낮을 때 SL/TP 축소
#### `HighVolatilityMult` (기본값: 1.2)
- 높은 변동성 배수
- 변동성이 높을 때 SL/TP 확대
---
### === Position Management ===
#### `OnePositionPerSymbol` (기본값: true)
- 심볼당 1개 포지션만 허용
- true: 기존 포지션이 있으면 새 진입 안 함
- false: 여러 포지션 허용
#### `CloseOnTrendReversal` (기본값: true)
- 트렌드 반전 시 포지션 청산
- true: 트렌드가 반대 방향으로 바뀌면 즉시 청산
#### `UseTrailingStop` (기본값: false)
- 트레일링 스톱 사용
- true: 수익이 나면 SL을 자동으로 올림/내림
#### `TrailingStopATRMult` (기본값: 1.0)
- 트레일링 스톱 거리 (ATR 배수)
#### `TrailingStepATRMult` (기본값: 0.5)
- 트레일링 스톱 스텝 (ATR 배수)
- 이 거리만큼 수익이 나면 SL 조정
#### `UseBreakEven` (기본값: false)
- 브레이크이븐 사용
- true: 일정 수익 후 SL을 진입가 근처로 이동
#### `BreakEvenATRMult` (기본값: 1.0)
- 브레이크이븐 트리거 거리 (ATR 배수)
#### `UsePartialClose` (기본값: false)
- 부분 청산 사용
- true: 일정 수익 후 포지션 일부만 청산
#### `PartialClosePercent` (기본값: 50.0)
- 부분 청산 비율 (%)
- 예: 50% = 포지션의 절반 청산
#### `PartialCloseATRMult` (기본값: 2.0)
- 부분 청산 트리거 거리 (ATR 배수)
---
### === Time Filter (Server Time) ===
#### `UseTimeFilter` (기본값: false)
- 시간 필터 사용 여부
- false: 항상 거래 가능
- true: 지정 시간대에만 거래
#### `TradeStartHour` (기본값: 8)
- 거래 시작 시간 (서버 시간)
#### `TradeEndHour` (기본값: 23)
- 거래 종료 시간 (서버 시간)
- [TradeStartHour, TradeEndHour) 범위에서만 거래
#### `ForceCloseHour` (기본값: 23)
- 강제 청산 시간 (시)
#### `ForceCloseMinute` (기본값: 30)
- 강제 청산 시간 (분)
- 이 시간이 되면 모든 포지션 강제 청산
---
### === Debug Settings ===
#### `EnableDebugLog` (기본값: true)
- 디버그 로그 활성화
- true: 상세 로그 출력
- false: 에러만 출력
---
## 사용 방법
### 1. EA 설치
1. MetaTrader 5 실행
2. `File` → `Open Data Folder`
3. `MQL5` → `Experts` 폴더에 `.mq5` 파일 복사
4. MetaEditor에서 컴파일 (F7)
### 2. 차트에 적용
1. 거래할 심볼 차트 열기
2. Navigator에서 EA를 차트로 드래그
3. 설정 창에서 파라미터 조정
4. `AutoTrading` 버튼 활성화 확인
5. `OK` 클릭
### 3. 파라미터 설정 권장사항
#### 보수적 설정 (저위험)
```
InpLots = 0.1
UseDynamicLotSize = true
RiskPercent = 1.0
AtrSLMult = 2.0
AtrTPMult = 3.0
UseTrailingStop = true
UseBreakEven = true
```
#### 공격적 설정 (고수익)
```
InpLots = 1.0
UseDynamicLotSize = false
AtrSLMult = 1.0
AtrTPMult = 5.0
UseTrailingStop = false
UseBreakEven = false
```
### 4. 모니터링
- EA가 정상 작동하는지 확인
- 거래 로그 확인 (Journal 탭)
- 포지션이 올바르게 열리고 관리되는지 확인
---
## 주의사항
### ⚠️ 리스크 관리
- **항상 적절한 로트 크기 사용**: 계좌 잔고의 1-2%만 리스크
- **최대 드로다운 모니터링**: 계좌의 20% 이상 손실 시 중단 고려
- **백테스트 필수**: 실전 사용 전 충분한 백테스트 수행
### ⚠️ 시장 조건
- **트렌드 시장에서 효과적**: 횡보장에서는 손실 가능성 높음
- **변동성이 큰 시장 주의**: 스프레드 필터 확인
- **뉴스 이벤트 주의**: 중요 경제지표 발표 시 거래 중단 고려
### ⚠️ 브로커 요구사항
- **최소 SL/TP 거리 확인**: 브로커마다 다를 수 있음
- **스프레드 확인**: MaxSpread 설정을 브로커 스프레드에 맞게 조정
- **거래 시간 확인**: 브로커 거래 시간과 Time Filter 설정 확인
### ⚠️ 기술적 주의사항
- **VPS 사용 권장**: 24시간 안정적 실행
- **인터넷 연결 안정성**: 끊김 시 거래 누락 가능
- **차트 시간프레임**: EA는 자체 시간프레임 사용 (차트 시간프레임 무관)
---
## 성능 통계
EA 종료 시 (`OnDeinit`) 다음 통계가 출력됩니다:
```
=== Performance Statistics ===
Total Trades: [총 거래 수]
Winning Trades: [승리 거래 수]
Losing Trades: [손실 거래 수]
Win Rate: [승률]%
Total Profit: [총 수익]
Total Loss: [총 손실]
Net Profit: [순수익]
Max Drawdown: [최대 드로다운]%
```
### 통계 설명
- **Total Trades**: 종료된 거래 총 수
- **Winning Trades**: 수익을 낸 거래 수
- **Losing Trades**: 손실을 낸 거래 수
- **Win Rate**: 승률 (승리 거래 / 총 거래 × 100)
- **Total Profit**: 모든 승리 거래의 총 수익
- **Total Loss**: 모든 손실 거래의 총 손실
- **Net Profit**: 순수익 (Total Profit - Total Loss)
- **Max Drawdown**: 최대 드로다운 비율
---
## 문제 해결
### 거래가 실행되지 않을 때
1. `EnableDebugLog = true`로 설정하여 로그 확인
2. 시간 필터 확인 (`UseTimeFilter`, `TradeStartHour`, `TradeEndHour`)
3. 스프레드 필터 확인 (`MaxSpread`)
4. ADX 필터 확인 (`MinAdxValue`)
5. 트렌드 방향 확인 (H1 차트에서 EMA 크로스 확인)
### 포지션이 청산되지 않을 때
1. `CloseOnTrendReversal` 설정 확인
2. `ForceCloseHour`, `ForceCloseMinute` 확인
3. 브로커 거래 시간 확인
### 성능 통계가 0으로 표시될 때
1. 거래가 실제로 실행되었는지 확인
2. Magic Number 확인 (기본값: 123456)
3. 심볼 이름 확인 (`InpSymbol` 또는 차트 심볼)
---
## 버전 정보
- **버전**: 1.00
- **작성일**: 2025년
- **플랫폼**: MetaTrader 5
- **언어**: MQL5
---
## 라이선스 및 면책 조항
이 EA는 교육 및 연구 목적으로 제공됩니다. 실제 거래에서 발생하는 모든 손실에 대해 개발자는 책임을 지지 않습니다. 거래는 항상 본인의 책임 하에 수행하시기 바랍니다.
---
## 지원 및 문의
문제가 발생하거나 개선 사항이 있으면 개발자에게 문의하세요.
**주의**: 이 EA는 완전 자동화된 거래 시스템이지만, 시장 상황에 따라 손실이 발생할 수 있습니다. 항상 적절한 리스크 관리와 모니터링을 수행하시기 바랍니다.
