cTrader에서 cBot 백테스트
이 문서는 cTrader Windows 및 Mac에서 트레이딩 봇을 백테스트하는 방법을 설명합니다.
백테스트는 특정 사전 정의된 조건 하에서 과거 시장 데이터를 사용하여 cBot을 평가하는 도구입니다.
백테스트를 실행할 때, 과거 시장 움직임에서 cBot 인스턴스를 실행할 수 있습니다. 이후, cTrader는 cBot이 수행한 거래 작업과 최종 자산/잔고 통계에 대한 상세 보고서를 생성합니다.
참고
백테스트 중 수행된 모든 거래 작업은 귀하의 계정에 영향을 미치지 않습니다. 백테스트는 실제 자금을 다루기 위한 것이 아닙니다. 대신, 이 기능은 분석 목적으로만 존재합니다.
cBot을 백테스트하려면, 해당 인스턴스 중 하나를 선택하고 백테스트 탭으로 전환하세요.

백테스트 설정
백테스트 작동 방식을 설정하려면, 왼쪽 상단에 있는 톱니바퀴 아이콘을 클릭하세요. cTrader는 다음 메뉴를 열어야 합니다.

이 메뉴의 옵션은 다음과 같이 정의됩니다. 모든 금액 관련 매개변수(예: 초기 투자금)는 USD로 지정됩니다.
| 옵션 이름 | 작업 및 설명 |
|---|---|
| 초기 투자금 | 거래 시 cBot이 운영할 초기 투자금을 정의하세요. |
| 수수료 | 거래된 백만 단위당 수수료율을 설정하세요. |
| 데이터 | cBot이 테스트될 타임시리즈 데이터를 선택하세요. 사용 가능한 옵션은 다음과 같습니다.
|
| 스프레드 | 백테스트 중 적용될 스프레드 값을 선택하세요. 다음 옵션을 사용할 수 있습니다.
|
샘플 CSV M1 데이터
로컬 머신에서 트레이딩 데이터를 소싱하려면, 다음 데이터를 포함하는 쉼표로 구분된 CSV 파일을 생성해야 합니다:
- 날짜
- 시간별
- 시가
- 고가
- 저가
- 종가
- 거래량
예시
1 2 3 4 | |
백테스트 절차 및 모드
아래에 요약된 컨트롤을 사용하여 테스트 기간을 지정하세요:
- 백테스트 탭 상단의 인터랙티브 슬라이더를 사용하세요.
- 슬라이더 좌우의 캘린더 메뉴에서 필요한 값을 선택하세요.
- 슬라이더 양쪽의 필드에
DD:MM:YYYY형식으로 사용자 정의 값을 입력하세요.

다음 모드를 사용하여 백테스트를 실행할 수 있습니다:
- 비실시간 테스트: 봇이 필요한 모든 작업을 순차적으로 수행하며, 이후에는 트레이딩 통계, 평가금 차트 등 최종 결과에만 접근할 수 있습니다.
- 실시간(시각 모드) 테스트: 제공한 역사적 데이터가 사용자 정의 가능한 재생 속도로 cBot에 전달됩니다. 결과적으로, 주문이 발생하는 대로 트레이딩 작업을 볼 수 있습니다. 모든 트레이딩 통계도 선택한 재생 속도로 업데이트됩니다.
비실시간 테스트
설정이 완료되면 슬라이더 오른쪽의 재생 버튼을 클릭하세요. 지정된 기간의 길이와 로컬 머신 사양에 따라 cTrader가 결과를 생성하는 데 몇 분이 걸릴 수 있습니다.
실시간(시각 모드) 백테스트
테스트 기간을 포함한 필요한 설정을 지정하고 캘린더 슬라이더 아래에 있는 시각 모드 플래그를 활성화하세요.

속도 슬라이더를 드래그하거나 오른쪽의 메뉴를 사용하여 데이터 재생 속도를 조정하세요. 설정이 완료되면 재생 버튼을 클릭하세요.
cTrader는 선택한 기간에 대한 트레이딩 차트를 실시간으로 표시하기 시작하며, 재생 속도 설정에 따라 가속화됩니다. 백테스트가 진행되는 동안 재생 속도를 동적으로 조정할 수 있습니다.
코드에 따라 cBot은 차트에 나타나는 기술 분석 신호에 실시간으로 반응하여 트레이딩 작업을 수행합니다. 백테스트 통계는 cBot이 수행한 작업에 따라 자동으로 업데이트됩니다.
선택한 기간과 재생 속도에 따라 시각 모드 테스트는 시간이 많이 소요될 수 있습니다. 그럼에도 불구하고, cBot이 예상대로 작동하지 않을 경우 시각 모드 테스트와 CSV 파일에서 소싱한 사용자 정의 트레이딩 데이터를 사용하여 다양한 시장 조건에 대한 반응을 테스트할 수 있습니다.
렌코 차트 및 레인지 바를 사용한 백테스트
cTrader는 렌코 및 레인지 바 차트에서 cBot을 백테스트하는 것을 지원합니다. 이러한 백테스트를 수행하려면 새 cBot 인스턴스를 생성하고 트레이딩 차트로 렌코/레인지 바 차트를 선택하세요.

또는 이미 선택된 cBot 인스턴스가 있는 경우 화면 상단의 차트 선택 메뉴에서 더보기 아이콘을 클릭하세요. 나타난 메뉴에서 렌코 브릭 또는 레인지 바를 생성하기 위한 사용 가능한 볼륨 임계값 중 하나를 선택하세요.

cTrader가 선택한 심볼에 대한 렌코/레인지 바 차트를 생성한 후 백테스트 탭으로 전환하세요. 여기서 백테스트 모드/설정을 평소처럼 구성하세요. 재생 아이콘을 클릭하여 선택한 차트에서 백테스트를 수행하세요.
백테스트 결과
cTrader는 백테스트 결과를 보여주기 위해 여러 트레이딩 통계를 생성합니다. 이 데이터를 보려면 트레이딩 차트 바로 아래에 있는 탭으로 이동하세요.

평가금 차트
백테스트가 수행되면(시각 모드를 사용하든 여부에 관계없이), cTrader는 X축에 거래 횟수, Y축에 계정 잔고를 표시하는 평가금 차트를 생성합니다. 여기에는 다음 통계가 포함됩니다:
- 노란색 선은 각 거래에 따라 계정 잔고가 어떻게 변하는지 보여줍니다.
- 회색 영역은 봇이 수행한 거래에 따라 총 평가금이 어떻게 증가하거나 감소하는지 강조합니다.
평가금 차트의 역할을 더 잘 이해하려면 위의 예를 고려하세요. 이 예는 백테스트 동안 봇이 290회 이상의 거래를 수행했음을 보여줍니다. 계정 잔고가 변할 때마다 총 평가금도 그에 따라 변하는 것을 볼 수 있습니다.
거래 통계
트레이딩 통계 탭에는 백테스트 동안 cBot이 어떻게 수행되었는지에 대한 데이터가 포함됩니다. 여기에는 다음 필드가 포함됩니다:
| 필드 이름 | 정의 |
|---|---|
| 순이익 | 모든 거래의 총 순이익. |
| 손익비 | 총 순손실 대비 총 순이익의 비율. |
| 수수료 | cBot이 수행한 거래에 대해 지불한 총 수수료. |
| 잔고 최대 낙폭 | 잔고 낙폭의 최대 금액. |
| 평가금 최대 낙폭 | 평가금 낙폭의 최대 금액. |
| 총 거래 | cBot이 수행한 총 거래 횟수. |
| 수익 거래 | 실현 이익을 낸 총 거래 횟수. |
| 최대 연속 수익 거래 | 실현 이익을 낸 연속 거래의 최대 횟수. |
| 최대 수익 거래 | 한 거래에서 발생한 최대 실현 이익. |
| 손실 거래 | 실현 손실을 낸 총 거래 횟수. |
| 최대 연속 손실 거래 | 실현 손실을 낸 연속 거래의 최대 횟수. |
| 최대 손실 거래 | 한 거래에서 발생한 최대 실현 손실. |
| 평균 거래 | 모든 거래에서 발생한 평균 실현 손익. |
포지션
포지션 탭은 현재 cBot이 열어놓은 모든 포지션을 보여줍니다. 이는 일반 트레이드 워치 디스플레이의 포지션 탭과 유사하게 구조화되어 있으며 동일한 데이터를 포함합니다.

오른쪽 하단의 톱니바퀴 아이콘을 클릭하여 중앙 테이블에 표시되는 데이터를 사용자 정의하세요.
주문
주문 탭은 cBot이 설정한 주문에 대한 정보를 포함합니다. 그 구조와 외관은 메인 트레이드 워치 디스플레이의 주문 탭을 복사합니다.

역사
히스토리 탭은 백테스트 동안 기록된 모든 개시 및 종료 거래에 대한 통계를 표시합니다. 위에서 논의한 다른 탭과 마찬가지로, 이 탭은 트레이드 워치 디스플레이의 히스토리 탭을 복사합니다.

이벤트
이벤트 탭은 모든 서버 관련 통신을 나열하고 이러한 이벤트의 다양한 매개변수를 표시합니다.

로그
마지막으로, 로그 탭은 백테스팅 과정에서의 cBot 출력을 표시합니다. 메시지 목록은 이벤트 유형 및 인스턴스별로 완전히 검색 및 필터링이 가능합니다.
