ATR Trade Assistant
- Experts
- 버전: 1.0
- 활성화: 10
ATR Trade Assistant 변동성 기반 MetaTrader 5 동적 거래 관리 시스템
ATR Trade Assistant는 진입 순간부터 최종 청산까지의 거래를 효율적으로 관리하도록 설계된 MetaTrader 5용 동적 거래 관리 Expert Advisor(EA)입니다. 차트의 사용자 지정 BUY/SELL 버튼을 사용하여 수동으로 거래를 시작하거나, 내장된 샘플 전략을 통해 자동으로 진입하는 경우 모두에 유용합니다. 본 EA는 포지션 사이징, 초기 손절매(Stop Loss), 익절매(Take Profit), 트레일링 스톰 관리, 부분 익절을 위한 변동성 기반의 포괄적인 프레임워크를 제공합니다.
핵심 원칙은 매우 간단합니다. 시장의 변동성에 따라 거래를 관리하는 것입니다. 고정된 거리에만 의존하는 대신, EA는 거래 관리 엔진 전반에서 ATR(Average True Range) 기반 계산을 사용합니다. 이를 통해 보호 수준, 포지션 사이징, 트레일링 동작이 변화하는 시장 상황에 동적으로 적응합니다.
주요 기능
차트 기반 수동 거래
ATR Trade Assistant에는 차트 화면에 전용 BUY 및 SELL 버튼이 있어 거래자가 차트에서 직접 포지션을 개시할 수 있습니다. 거래가 시작되면 EA는 선택한 설정에 따라 관리 프로세스를 자동으로 인계합니다. 구성에 따라 EA는 초기 손절매, 초기 익절매, 포지션 사이징, ATR 기반 트레일링 스톱, 단계적 트레일링 스톱 축소, 부분 익절매를 관리할 수 있습니다. 또한 변동성 기반 포지션 조정 및 샘플 전략을 통한 자동 진입 기능도 제공합니다. 이는 진입은 직접 제어하면서도 반복적인 거래 관리 업무는 자동화하려는 거래자에게 적합합니다.
ATR Trade Assistant에는 차트 화면에 전용 BUY 및 SELL 버튼이 있어 거래자가 차트에서 직접 포지션을 개시할 수 있습니다. 거래가 시작되면 EA는 선택한 설정에 따라 관리 프로세스를 자동으로 인계합니다. 구성에 따라 EA는 초기 손절매, 초기 익절매, 포지션 사이징, ATR 기반 트레일링 스톱, 단계적 트레일링 스톱 축소, 부분 익절매를 관리할 수 있습니다. 또한 변동성 기반 포지션 조정 및 샘플 전략을 통한 자동 진입 기능도 제공합니다. 이는 진입은 직접 제어하면서도 반복적인 거래 관리 업무는 자동화하려는 거래자에게 적합합니다.
ATR 기반 전체 거래 관리
이 시스템은 핵심 변동성 측정 지표인 ATR을 중심으로 구축되었습니다. 초기 보호 수준은 고정된 포인트나 핍(pips) 수 대신 현재 ATR 값을 기준으로 계산됩니다.
예를 들어, 골드의 현재 ATR 값이 3.00달러인 경우, 손절매 승수(Stop Loss Multiplier)를 2.0으로 설정하면 초기 손절매 거리는 진입 가격으로부터 6.00달러로 계산됩니다. 익절매 승수(Take Profit Multiplier)가 4.0인 경우 초기 익절매 거리는 12.00달러가 됩니다. 이는 선택한 ATR 승수를 바탕으로 1:2의 초기 위험 대비 보상 비율을 생성합니다. 변동성을 반영하는 동일한 논리가 트레일링 및 포지션 사이징 엔진에도 적용됩니다.
동적 포지션 사이징
본 EA는 거래자가 포지션 수량 계산 방식을 선택할 수 있도록 여러 롯 사이징(Lot Sizing) 방법을 제공합니다.
LOT_FIXED는 모든 거래에 고정된 거래 수량을 사용합니다.
LOT_DYNAMIC_COMPLEMENT는 가용 계좌 잔고와 증거금 요구사항에 따라 거래 수량을 조정하도록 설계된 소액 잔고용 동적 모드입니다.
LOT_DYNAMIC_VOLATILITY는 권장되는 변동성 기반 사이징 모드입니다. 이 모드는 시장 변동성의 변화에 따라 계산된 포지션 수량을 조정합니다. 변동성이 확장되면 설정된 확장 계수에 따라 계산된 노출을 늘릴 수 있습니다. 변동성이 축소되면 설정된 축소 계수에 따라 계산된 노출을 줄일 수 있습니다.
LOT_DYNAMIC_RISK는 설정된 위험 비율과 손절매 거리에 따라 필요한 포지션 수량을 계산합니다. 이를 통해 계좌 자산, 위험 비율, 손절매 거리 간의 관계에 의해 포지션 수량이 결정되는 일관된 위험 모델을 확립할 수 있습니다.
세 가지 트레일링 스톱 관리 모드
- STEP REDUCTION은 단계적인 ATR 기반 트레일링 시스템입니다. 트레일링 엔진은 설정된 활성화 마일스톤에 도달한 후 시작되며, 거래가 이익 방향으로 더 진행됨에 따라 트레일링 승수를 점진적으로 감소시킵니다. 이를 통해 추세의 초기 단계에서는 거래에 충분한 호흡 공간을 제공하면서, 추가적인 이익 마일스톤이 달성됨에 따라 보호 수준을 단계적으로 조여줍니다. 설정 가능한 최소 승수 하한선은 트레일링 거리가 정의된 바닥 이하로 감소하는 것을 방지합니다.
- STANDARD ATR TRAILING은 전통적인 ATR 기반 트레일링 메커니즘입니다. 설정된 활성화 임계값에 도달하면 손절매는 변동성 기반 버퍼를 사용하여 시장 가격을 추종합니다.
- AGGRESSIVE ATR TRAILING은 보호 손절매가 시장 가격을 매우 빠르게 추종하기를 원하는 거래자를 위해 설계되었습니다. 어그레시브 모드는 설정된 로직에 따라 즉시 활성화되며, 현재 시장 가격 주변에 ATR 기반 버퍼를 유지합니다. 이 모드는 큰 되돌림을 허용하는 것보다 자본 보호를 최우선으로 할 때 유용합니다.
단계적 승수 축소 엔진 (Step-Reduction Engine)
Step Reduction 시스템을 통해 거래자는 수익 중인 거래를 얼마나 공격적으로 보호할지 완전히 제어할 수 있습니다. 트레일링이 시작되는 수익 수준, 초기 ATR 트레일링 승수, 각 단계에서 승수가 감소하는 양, 수익 단계 간의 ATR 거리, 허용되는 최소 트레일링 승수를 설정할 수 있습니다. 예를 들어 활성화 = 1.5 ATR, 시작 승수 = 1.4, 단계 축소 = 0.2, 단계 크기 = 1.5 ATR, 최소 승수 = 1.2로 설정하면, EA는 포지션이 연속적인 수익 마일스톤에 도달함에 따라 설정된 최소 트레일링 버퍼를 준수하면서 트레일링 거리를 단계적으로 축소할 수 있습니다.
자동 50% 부분 익절매
설정된 부분 수익 마일스톤에 도달하면 EA는 오픈 포지션을 자동으로 50% 축소할 수 있습니다. 이 마일스톤은 원래 익절 목표의 백분율로 계산됩니다. 예를 들어 익절 목표가 4 ATR이고 부분 수익 인자(Partial Profit Factor)가 0.5인 경우, EA는 원래 익절 거리의 중간 지점을 부분 청산 목표로 삼습니다. 이를 통해 포지션 수익의 일부를 확보하고 남은 리스크 노출을 줄이면서, 남은 포지션이 더 큰 시장 움직임에 계속 참여할 수 있도록 합니다. 이 기능은 독립적으로 활성화하거나 비활성화할 수 있습니다.
내장 샘플 전략
ATR Trade Assistant에는 전략 테스터 실험, 자동 거래, EA의 거래 관리 기능 시연, 통합된 내부 지표 계산 테스트에 사용할 수 있는 내장 샘플 전략이 포함되어 있습니다. 샘플 전략은 추세, 모멘타ム, 자금 흐름(Money-Flow) 조건의 조합을 사용합니다.
EMA 추세 구조: 이 전략은 더 장기적인 추세 필터와 함께 더 빠른 EMA 참조선을 사용합니다. 기본 200 EMA가 주요 방향성 필터로 작동합니다. 가격이 200 EMA 위에 있으면 매수 셋업이 허용되고, 가격이 200 EMA 아래에 있으면 매도 셋업이 허용됩니다. 이는 지배적인 방향성 구조에 역행하는 거래를 줄이기 위함입니다.
Volume Momentum Distribution (VMD): 내부 VMD 계산은 거래량과 모멘텀 동작에 대한 추가적인 확인 계층을 제공합니다.
Money Flow Index (MFI): MFI 구성요소는 셋업이 유효한 것으로 간주되기 전에 추가적인 자금 흐름 확인 조건을 제공합니다.
적응형 스프레드 보호: 샘플 전략에는 자동 스프레드 관리 옵션이 포함되어 있습니다. 활성화되면 EA는 브로커/서버 매개변수 및 시장 특성에 따라 스프레드 상한선을 적응시킬 수 있습니다. 이는 스프레드 동작이 기존 외환 통화쌍과 크게 다른 지수, 암호화폐, 금속 등의 상품을 거래할 때 특히 유용합니다. 수동 백업 스프레드 제한도 사용할 수 있습니다.
ICUSTOM 외부 의존성 없음
샘플 전략에 필요한 사용자 지정 지표 계산은 EA 내부에 직접 내장되어 있습니다. EA는 iCustom() 호출을 통해 이러한 계산을 수행하기 위해 별도의 외부 사용자 지정 지표 파일을 필요로 하지 않습니다. 이는 배포를 간소화하고 완전한 전략 계산 프레임워크가 Expert Advisor 내에 유지되도록 도와줍니다.
수동 또는 자동 운용
EA는 선호하는 워크플로우에 따라 구성할 수 있습니다.
수동 모드: 샘플 전략을 비활성화하고 차트의 BUY/SELL 버튼을 사용하여 수동으로 거래를 시작합니다. 그러면 EA는 선택한 ATR 설정에 따라 자동화된 거래 관리를 제공합니다.
자동 모드: 샘플 전략을 활성화하고 통합된 전략 엔진이 내부 조건에 따라 거래를 식별하고 실행할 수 있도록 합니다.
하이브리드 워크플로우: 거래자가 수동 진입에 대한 제어권을 유지하면서 필요할 때 자동화된 전략 기능을 사용할 수 있는 거래 관리 어시스턴트로도 사용할 수 있습니다.
입력 매개변수 매뉴얼
INITIAL TRADE SETTINGS
InpStopLossAtrMult (기본값: 2.0) 현재 ATR 값을 사용하여 초기 보호 손절매의 거리를 설정합니다.
InpTakeProfitAtrMult (기본값: 4.0) 현재 ATR 값을 사용하여 초기 익절매 거리를 설정합니다. 기본 설정을 사용할 경우 초기 목표 구조는 1:2 위험 대비 보상 비율이 됩니다.
RISK & LOT SIZING SETTINGS
InpLotMethod (기본값: LOT_DYNAMIC_VOLATILITY) 포지션 수량 계산 방법을 선택합니다. 선택 가능: LOT_FIXED, LOT_DYNAMIC_COMPLEMENT, LOT_DYNAMIC_VOLATILITY, LOT_DYNAMIC_RISK.
InpLotSize (기본값: 0.01) LOT_FIXED가 선택되었을 때의 고정 거래 수량을 정의합니다. 기본 시작 롯 크기로도 기능할 수 있습니다.
InpRiskPercent (기본값: 1.0) 개별 거래에 대해 위험 기반 포지션 사이징 모델이 사용하는 계좌 자산의 백분율을 정의합니다.
InpVolUpMultiplier (기본값: 1.25) LOT_DYNAMIC_VOLATILITY에서 사용됩니다. 엔진이 ATR 확장을 감지하면 이 계수에 따라 계산된 수량을 상향 조정합니다.
InpVolDownMultiplier (기본값: 0.75) LOT_DYNAMIC_VOLATILITY에서 사용됩니다. 엔진이 변동성 축소를 감지하면 이 계수에 따라 계산된 수량을 감소시킵니다.
InpVolATRPeriod (기본값: 14) 변동성 사이징 엔진이 시장 변동성 변화를 평가하기 위해 사용하는 ATR 룩백 기간을 정의합니다.
GLOBAL TRAILING CONTROLS
InpTrailingMethod (기본값: TRAIL_STEP_REDUCTION) 활성화된 트레일링 스톱 알고리즘을 선택합니다. 선택 가능: TRAIL_STEP_REDUCTION, TRAIL_STANDARD_ATR, TRAIL_AGGRESSIVE_ATR.
InpUseTrailing (기본값: true) 백그라운드 트레일링 스톱 관리 엔진을 활성화하거나 비활성화합니다.
InpAtrRiskPeriod (기본값: 14) 표준 및 어그레시브 트레일링 메커니즘의 변동성 버퍼를 계산하는 데 사용되는 ATR 룩백 기간을 정의합니다.
STEP REDUCTION PARAMETERS
InpTrailingActivation (기본값: 1.5) Step Reduction 트레일링 엔진이 활성화되는 데 필요한 최소 수익 거리를 ATR 배수로 정의합니다.
InpStartMultiplier (기본값: 1.4) Step Reduction이 처음 활성화될 때 사용되는 초기 ATR 트레일링 승수를 정의합니다.
InpTrailingStep (기본값: 0.2) 새로운 수익 단계마다 트레일링 승수가 얼마나 감소하는지 정의합니다. 값이 클수록 거리가 더 빠르게 조여집니다.
InpStepSizeATR (기본값: 1.5) 다음 트레일링 축소 단계가 트리거되는 데 필요한 추가 수익 거리를 ATR 배수로 정의합니다.
InpMaxCapMultiplier (기본값: 1.2) Step Reduction 엔진이 허용하는 최소 트레일링 승수 하한선을 정의하여 거리가 설정된 바닥 이하로 감소하는 것을 방지합니다.
STANDARD & AGGRESSIVE TRAILING PARAMETERS
InpTrailingStartMult (기본값: 1.5) 표준 ATR 트레일링이 활성화되는 데 필요한 수익 거리를 ATR 배수로 정의합니다(어그레시브 모드의 즉시 활성화 동작에는 사용되지 않음).
InpTrailingStepMult (기본값: 1.5) 해당 트레일링 모드에서 현재 시장 가격과 트레일링 손절매 사이에 유지되는 ATR 기반 변동성 버퍼 거리를 정의합니다.
SAMPLE STRATEGY SETTINGS
InpEnableSampleStrategy (기본값: true) 통합된 자동 샘플 전략을 활성화하거나 비활성화합니다. 수동 관리 전용으로 사용할 때는 이 옵션을 비활성화하십시오.
InpEmaPeriod (기본값: 20) 신호 생성 프로세스의 일부로 샘플 전략이 사용하는 빠른 EMA 계산 기간을 정의합니다.
InpEmaFilterPeriod (기본값: 200) 주 추세 필터 EMA를 정의합니다. 기본적으로 가격이 이보다 위에 있으면 매수가 허용되고 아래에 있으면 매도가 허용됩니다.
InpVmdPeriod (기본값: 14) 내부 Volume Momentum Distribution 구성요소가 사용하는 계산 기간을 정의하여 거래량/모멘텀 확인을 제공합니다.
InpMfiPeriod (기본값: 14) 내부 Money Flow Index 구성요소가 사용하는 계산 기간을 정의하여 자금 흐름 확인을 제공합니다.
InpAutoAdjustSpread (기본값: true) 적응형 스프레드 제한 처리를 활성화합니다. 이를 통해 EA는 브로커 서버 정보 및 시장 특성을 바탕으로 적절한 스프레드 상한선을 자동으로 결정할 수 있습니다.
InpMaxSpreadPips (기본값: 15) 자동 스프레드 조정이 비활성화되었을 때 사용하는 수동 최대 스프레드 제한을 정의합니다.
InpMagicNumber (기본값: 123456) 자동 샘플 전략에 의해 생성된 거래에 할당되는 매직 넘버를 정의하여 수동 포지션 및 다른 EA와 구별할 수 있도록 합니다.
PARTIAL TAKE PROFIT SETTINGS
InpUsePartialTP (기본값: true) 자동 부분 포지션 청산 엔진을 활성화하거나 비활성화합니다.
InpPartialProfitFactor (기본값: 0.5) 부분 청산이 트리거되는 지점을 원래 익절 거리의 비율로 정의합니다.
중요 위험 고지
ATR Trade Assistant는 거래 보조 도구일 뿐이며 수익을 보장하지 않습니다. 금융 시장은 상당한 위험을 수반하며, 자동 또는 반자동 거래는 손실을 초래할 수 있습니다. 포지션 수량 및 위험 매개변수는 선택한 브로커, 종목 및 계좌 조건에 맞춰 신중하게 선택하고 테스트해야 합니다. 실제 자금으로 EA를 사용하기 전에 항상 자체적인 테스트와 최적화를 수행하십시오. 과거의 성과가 미래의 결과를 보장하지 않습니다.
이 한국어 버전 텍스트를 MQL5에 복사하여 글자 수 제한 오류 없이 정상적으로 저장되는지 확인해 주시기 바랍니다. 문제가 없다면 남은 공식 언어 중 다음에 번역할 언어 를 알려주세요.
