설명
Cerberus: 세 개의 머리, 한 명의 사냥꾼
세 가지 체제별 전략, 세 가지 위험 모드, 하나의 봇. 거래하는 시장에 맞는 조합을 선택하세요.
Cerberus란
두 가지 스위치를 가진 하나의 봇:
- 전략: 진입 로직. 각기 다른 시장 체제에 맞게 설계된 세 가지 "머리".
- 위험 모드: 포지션 크기 조정, 손절 및 트레일링 방식.
두 개의 드롭다운에서 나오는 아홉 가지 조합. 포지션 크기는 ATR로 정규화되어 위험 %에 맞춰집니다, 그래서 시장이 조용하든 격렬하든 같은 설정은 같은 금액을 위험에 노출합니다. 결정은 바가 닫힐 때마다 이루어집니다.
당신의 자금에 대한 블랙박스가 아닙니다. 모든 제어는 아래에 문서화되어 있으며, 위험 측면은 완전히 명시되어 있습니다: 크기 계산 방법, 손절 위치, 트레일링 작동 방식. 여기서 찾을 수 없는 것은 보장된 수익 주장입니다 (어디서든 그런 주장을 보면, 도망가세요).
세 가지 머리 (전략)
- TrendFollowing: 추세 시장에 맞게 설계됨. 추세 필터가 추세와 일치함을 확인하는 채널 돌파를 찾습니다.
- MeanReversion: 횡보 시장에 맞게 설계됨. 가격이 공정 가치에서 ATR 크기만큼 멀어진 것을 찾으며, 추세 가드가 명확할 때 (평균으로의 회귀를 목표로 함).
- VolatilityBreakout: 변동성 확장에 맞게 설계됨. 변동성이 실제로 확장 중일 때 발생하는 채널 돌파를 찾습니다, 이미 소진된 상태가 아닙니다.
위험 계층 (위험 모드)
크기는 항상 ATR로 정규화됩니다. 봇은 현재 ATR을 읽고, 그로부터 손절 거리를 도출하며, 손절 시 손실이 설정한 자본 %를 넘지 않도록 포지션 크기를 조정합니다. 변동성이 큰 조건에서는 포지션이 작아지고, 조용한 조건에서는 커집니다 (어느 쪽이든 같은 금액 위험). 고정 로트 크기 없음, 추측 없음.
- OneLegFixedTarget: 하나의 포지션. 고정 ATR 손절 + 고정 ATR 목표. 진입, 청산, 완료.
- OneLegTrailingStop: 하나의 포지션, 고정 목표 없음. 손절은 진입 시 ATR 거리에서 따라가며 절대 불리하게 움직이지 않습니다.
- TwoLegTrailingStop: 두 개의 다리, 위험 분할 50/50. 하나는 ATR 목표를 취하고, 다른 하나는 러너 (같은 손절, 진입부터 트레일링, 시장이 허용하는 한 계속 진행).
트레일링에 대하여: Cerberus는 cTrader의 자체 서버 측 트레일링 스톱을 사용합니다 (수동으로 설정하는 것과 동일). 주문에 연결되어 트리거가 필요 없으며: 손절은 거래가 도달한 최고가 뒤에서 거리를 유지하며, 거래가 유리하게 진행될 때 거리를 좁힙니다. 서버 측이므로 기기나 연결이 끊겨도 계속 작동합니다.
크기 조정에 대하여. 모든 거래는 최대 거래당 위험 자본 비율에 맞춰 크기가 조정되며, 손절 거리는 ATR로 설정됩니다.
매개변수, 쉬운 설명
cTrader에 나타나는 순서대로 그룹화됨.
전략
- 전략: 어떤 머리를 실행할지.
- 롱 허용 / 숏 허용: 방향 필터. 하나를 끄면 장기 편향으로 거래하거나 노출을 원하지 않는 쪽을 피할 수 있습니다.
추세
- 돌파 채널 (바): 돌파 채널 길이 (추세 / 변동성 머리). 길수록 적고 더 중요한 돌파.
- 추세 필터 EMA (바): 추세 확인 필터 (추세 머리). 길수록 추세로 간주하는 기준이 엄격해짐.
평균 회귀
- 평균 EMA (바): 평균 회귀가 목표로 하는 공정 가치선이며, MeanReversion이 청산하는 지점.
- 페이드 밴드 (× ATR): 가격이 얼마나 멀리 늘어나야 페이드가 작동하는지. 넓을수록 드물고 극단적인 진입.
- 페이딩 최대 기울기 (× ATR): 추세 가드. 머리가 계속 무너진다면 낮추세요.
변동성
- 변동성 확장 조회 (바): 변동성이 확장 중으로 간주되려면 얼마나 과거까지 뛰어넘어야 하는지 (변동성 머리).
위험
- 위험 모드: 위의 위험 모드를 참조하세요.
- 거래당 위험 (% 자본): 봇이 단일 거래에서 위험에 노출하는 계좌 자본 비율. 각 포지션은 손절 손실이 최대 이 비율을 넘지 않도록 크기가 조정됩니다.
- ATR 기간 (바): 크기 조정과 손절을 위한 ATR 조회 기간.
- 손절 (× ATR): 모든 모드에서 초기 손절 거리이며, 트레일링 모드에서는 트레일링 거리.
- 이익 실현 (× ATR): 목표 거리 (OneLegFixedTarget의 목표 또는 TwoLegTrailingStop의 목표 다리). OneLegTrailingStop에서는 사용하지 않음.
사용 방법
- 설정: 거래하려는 타임프레임에서 심볼별로 하나씩 인스턴스를 실행하세요. 각 인스턴스는 자신의 심볼만 관리합니다 (포트폴리오용으로 여러 개 실행 가능).
- 시장에 맞는 머리를 선택하세요: 먼저 상품과 타임프레임을 살펴보고 선택하세요:
횡보하는 페어에서 추세 머리를 실행하는 것은 설정 문제로 해결할 수 없습니다. 시장을 바꾸거나 머리를 바꾸세요. -
- 지속적인 방향성 움직임 → TrendFollowing
- 명확한 범위, 가격이 반복적으로 평균으로 회귀 → MeanReversion
- 조용한 기간 후 급격한 확장 (세션 오픈, 통합 후) → VolatilityBreakout
- 위험 모드를 선택하세요: 머리를 검증하는 동안은 OneLegFixedTarget 부터 시작하세요: 하나의 포지션, 하나의 손절, 하나의 목표로 백테스트가 진입에 우위가 있는지 명확히 알려줍니다. 신뢰가 생기면 트레일링 모드로 전환하세요:
-
- OneLegTrailingStop 머리가 고정 목표를 훨씬 넘는 움직임을 잡을 때. 상한선 없음.
- TwoLegTrailingStop 둘 다 원할 때 (한 다리는 목표를 확보하고, 다른 다리는 계속 진행).
- 위험 설정: 거래당 위험 이 숫자가 중요합니다. 1% 이하가 합리적인 시작점입니다. 각 포지션은 ATR로 설정된 이 비율만큼 자본을 위험에 노출합니다.
- 검증 후 실거래: 백테스트 → 워크포워드 → 데모 → 실거래 순서로 진행하세요.
신뢰하기 전에 검증하세요
어떤 매개변수 세트도 충분히 맞추면 백테스트에서 훌륭해 보일 수 있습니다. 그것은 과적합이며, 자신의 봇에게 돈을 잃는 가장 빠른 방법입니다. 올바르게 하는 것이 중요합니다:
- 데이터를 분할하세요. 최적화할 기간(인샘플)과 튜닝 중 절대 건드리지 않는 이후 기간(아웃오브샘플).
- 인샘플에서만 최적화하세요.
- 그 설정을 아웃오브샘플에서 테스트하세요. 무너지면 과적합입니다 (매개변수 수를 줄이고, 논리를 단순화하세요).
- 워크포워드 여러 연속 창에서 진행하세요. 진짜 우위는 대체로 안정적이며; 과적합은 단일 스파이크입니다.
- 플래토 체크: 최적 매개변수를 ±20% 흔들어 보세요. 안정적인 결과는 견고함을 의미하고; 급격한 변동은 위험한 상태를 의미합니다.
- 데모에서 포워드 테스트 실거래 전에 하세요.
cTrader에는 원클릭 워크포워드가 없으므로 수동으로 진행해야 합니다 (날짜별 분할, 한 구간 최적화, 다음 구간 검증). 번거롭지만, 전략과 복권의 차이입니다.
기대할 점
- 모든 시장에서 모든 모드가 이기지는 않습니다. 추세 머리는 횡보에서 손실; 평균 회귀는 추세에서 무너집니다. 그래서 머리가 분리되어 있습니다.
- 게이팅은 거래 수를 줄입니다. 더 잘 타이밍된 진입, 끊임없는 액션이 아님.
- 비용이 중요합니다: 스프레드, 수수료, 스왑, 특히 낮은 타임프레임에서. 현실적인 비용을 포함해 백테스트하세요.
- 과거 성과, 백테스트든 포워드든, 미래 결과를 예측하지 않습니다.
자주 묻는 질문
- 어떤 머리부터 시작해야 하나요? TrendFollowing이 가장 관대하고 소매 거래자에게 가장 근거가 확실합니다. OneLegFixedTarget과 함께 시작하세요.
- 왜 세 가지 위험 모드가 있나요? 거래 관리가 많은 전략의 우위이기 때문입니다 (진입은 일의 절반에 불과). OneLegFixedTarget은 단순함을 유지하고; OneLegTrailingStop은 승자를 무제한으로 달리게 하며; TwoLegTrailingStop은 일부를 확보하고 나머지를 계속 달리게 합니다. 자신의 거래 관리 방식에 맞는 것을 선택하세요.
- 여러 심볼을 거래하나요? 인스턴스당 하나의 심볼. 포트폴리오를 위해 여러 개 실행하세요.
- 왜 신호를 건너뛰었나요? 보통 포지션 크기가 브로커의 최소 로트보다 작게 반올림되었거나, 해당 심볼에 이미 포지션이 실행 중일 때입니다.
- 더 많은 머리가 추가되나요? 아키텍처가 플러그형으로 설계되어 있어 (기존 것을 방해하지 않고 새 전략을 추가할 수 있습니다).
기술적 참고사항
- 진입과 청산은 바가 닫힐 때 한 번 평가되며, 틱 단위가 아닙니다.
- 손절, 목표, 트레일링은 주문과 함께 서버 측에 배치되어 (연결 끊김 시에도 유지됨).
면책 조항
거래는 상당한 손실 위험을 수반합니다. 이 소프트웨어는 도구이며, 재정 조언이 아닙니다. 테스트, 위험 설정 및 결과에 대한 책임은 사용자에게 있습니다. 작성자는 어떠한 보증도 하지 않으며, 과거 또는 미래의 성과 결과를 주장하지 않습니다.
요약
Position sizing is ATR-normalized, meaning it adjusts to market volatility to risk a consistent percentage of equity per trade. The three risk modes include OneLegFixedTarget (single position with fixed stop and target), OneLegTrailingStop (single position with a trailing stop and no fixed target), and TwoLegTrailingStop (two positions splitting risk, one with a fixed target and one trailing).
The bot evaluates trade signals once per bar close and uses server-side stops and trailing stops to maintain risk management even if the user’s connection drops. It supports one symbol per instance, allowing portfolio diversification by running multiple instances.
Parameters are clearly documented, covering strategy selection, trend filters, mean reversion settings, volatility lookbacks, and risk controls such as risk per trade, ATR period, stop loss, and take profit distances. Users are advised to validate strategies through rigorous backtesting, walk-forward testing, and demo trading before live deployment.
