콘텐츠로 이동

cTrader CLI

cTrader CLI는 트레이더가 일반 cTrader 애플리케이션을 실행하거나 의존하지 않고 콘솔 또는 터미널에서 직접 계정 및 알고리즘 트레이딩 작업을 관리할 수 있도록 합니다. cTrader CLI를 사용하면 사용자는 텍스트 기반 터미널에 명령어를 입력하여 cTrader 알고리즘에 액세스하고 실행할 수 있습니다.

1분 만에 cTrader CLI!

  • cTrader Desktop 앱을 실행하거나 의존하지 않고 Windows 및 Linux에서 cBot을 실행하고 RAM 및 CPU 리소스를 절약하세요.
  • cBot 인스턴스에 대해 더 강력한 제어를 행사하고 여러 cTrader 애플리케이션 창을 열지 않고도 다른 계정에서 cBot을 실행하세요.
  • 선호하는 프로그래밍 언어로 cTrader CLI를 사용하여 거래 알고리즘을 시작, 중지 및 관리하는 사용자 지정 프로그램을 만드세요.
  • cTrader CLI를 생성형 AI 도구와 통합하고 자연어를 사용하여 알고리즘에 명령을 내리세요.

경고

cTrader CLI는 cTrader 4.8 이상 버전에서 사용할 수 있으며 최신 .NET 6 알고리즘에서만 작동합니다.

실행 및 사용 방법

cTrader Windows를 통해

참고

cTrader CLI를 사용하기 위해 명령줄 또는 프로그래밍 기술이 필요하지 않습니다. cTrader Windows에서 선호하는 매개 변수를 준비하고 적용한 다음, cTrader Windows에 cTrader CLI 외부 프로세스에서 cBot을 시작하도록 지시할 수 있습니다.

cTrader CLI에서 cBot을 실행하려면 cTrader Windows에서 해당 cBot의 로컬 인스턴스를 마우스 오른쪽 버튼으로 클릭한 다음 외부 프로세스에서 시작을 선택하세요.

Image title

cTrader CLI가 자동으로 실행되고 cTrader Windows 애플리케이션과 독립적으로 인스턴스를 실행하기 시작합니다.

cTrader CLI 외부 프로세스에서 cBot 인스턴스를 시작한 후에는 CPU 및 RAM 리소스를 절약하기 위해 cTrader Windows를 닫을 수 있습니다. cTrader CLI는 cTrader Windows가 열려 있을 필요가 없기 때문입니다.

Windows 명령줄을 통해

Windows의 명령 프롬프트 또는 Windows PowerShell과 같은 모든 명령줄 프로그램에서 cTrader CLI를 실행할 수 있습니다.

먼저 ctrader-cli가 포함된 폴더로 이동하여 경로를 복사하세요. cTrader CLI 실행 파일은 일반적으로 cTrader Windows 애플리케이션과 동일한 디렉토리에 위치합니다:

1
C:\Users\{username}\AppData\Local\Spotware\cTrader\{installationId}

Image title

두 번째로, 명령 프롬프트 또는 Windows PowerShell을 열고 cd를 입력한 다음 공백을 추가하고 이전에 복사한 경로를 붙여넣으세요. 코드는 다음과 같이 표시되어야 합니다:

1
cd C:\Users\{username}\AppData\Local\Spotware\cTrader\{installationId}

코드를 실행하면 명령줄 프로그램이 ctrader-cli 실행 파일이 포함된 디렉토리로 이동합니다.

마지막으로 ctrader-cli.exe를 입력한 후 유효한 <command>를 추가하여 실행할 수 있습니다. 예를 들어, ctrader-cli.exe periods를 실행하여 사용 가능한 기간을 확인할 수 있습니다.

Image title

경로 변수 추가

정보

cTrader CLI를 PATH 환경 변수에 추가한 후에는 Windows 머신에서 명령을 실행하기 전에 ctrader-cli가 포함된 디렉토리로 이동할 필요가 없습니다. 대신, <command>를 추가하여 ctrader-cli를 입력하면 어떤 위치나 폴더에서든 명령을 실행할 수 있습니다.

먼저, 이전과 마찬가지로 ctrader-cli가 포함된 폴더를 찾아 경로를 복사하세요.

1
C:\Users\{username}\AppData\Local\Spotware\cTrader\{installationId}

Windows 시작 메뉴에서 환경 변수를 검색하세요. 시스템 환경 변수 편집을 클릭하세요.

Image title

시스템 속성 창에서 환경 변수를 클릭하세요. {username}에 대한 사용자 변수 아래의 Path를 더블 클릭하세요. 환경 변수 편집 창에서 새로 만들기 버튼을 클릭한 후 이전에 복사한 경로를 필드에 붙여넣으세요.

모든 대화 상자가 닫힐 때까지 확인을 클릭하세요.

Linux Docker 이미지를 통해

cTrader CLI는 Linux Docker 이미지로 제공되며, 저렴한 Linux VPS 인스턴스, 고성능 서버 및 신뢰할 수 있는 클라우드 플랫폼에서 cBot을 실행할 수 있습니다. 이 이미지는 Docker Desktop(WSL)을 통해 Windows에서도 Docker 컨테이너로 사용할 수 있습니다.

참고

Docker를 처음 사용하는 경우, 문서를 공부하고 필요한 개념을 익히는 것이 좋습니다.

cTrader CLI Docker 이미지는 Spotware Github 패키지로 제공되며, 주요 cTrader Windows 업데이트마다 새로운 릴리스가 제공됩니다.

cTrader CLI Docker 이미지를 사용하려면 머신에 Docker가 설치되어 있는지 확인한 후 최신 cTrader CLI Docker 이미지를 가져오세요:

1
docker pull ghcr.io/spotware/ctrader-console:latest

이미지를 가져온 후 컨테이너를 생성하고 실행해야 합니다. Docker 컨테이너는 운영 체제와 격리된 가상화된 샌드박스에서 실행되므로, 컨테이너가 cBot 알고리즘 파일과 cTID 비밀번호 파일에 접근할 수 있도록 명시적으로 허용해야 합니다. 이는 Docker의 마운트 기능을 사용하여 달성할 수 있으며, 이 기능은 컨테이너가 호스트 시스템의 디렉토리나 파일에 접근할 수 있게 합니다.

아래 명령어는 가져온 이미지를 기반으로 컨테이너를 생성하고 cBot을 실행합니다:

1
docker run -d -it --name ctrader.console.run.mybot --mount type=bind,src=/cAlgo/Robots,dst=/mnt/Robots -e CTID='mycid' -e PWD-FILE='/mnt/Robots/ctrader-cli.pwd' -e ACCOUNT='9102302' -e SYMBOL='EURUSD' -e PERIOD='H1' ghcr.io/spotware/ctrader-console:latest run "/mnt/Robots/My bot.algo" --environment-variables
1
2
3
4
5
6
7
8
9
docker run -d -it \
  --name ctrader.console.run.mybot \
  --mount type=bind,src=/cAlgo/Robots,dst=/mnt/Robots \
  -e CTID='mycid' \
  -e PWD-FILE='/mnt/Robots/ctrader-cli.pwd' \
  -e ACCOUNT='9102302' \
  -e SYMBOL='EURUSD' \
  -e PERIOD='H1' \
  ghcr.io/spotware/ctrader-console:latest run "/mnt/Robots/My bot.algo" --environment-variables

명령어의 나머지 매개변수는 아래와 같이 설명됩니다:

매개변수 설명
--name ctrader.console.run.mybot 컨테이너의 이름을 지정합니다.
--mount type=bind,src=/cAlgo/Robots,dst=/mnt/Robots 호스트 디렉토리 /cAlgo/Robots를 컨테이너 디렉토리 /mnt/Robots에 마운트합니다.
-e CTID='mycid' cTID 사용자 이름을 환경 변수로 설정합니다.
-e PWD-FILE='/mnt/Robots/ctrader-cli.pwd' 마운트 지점을 기준으로 cTID 비밀번호 파일의 경로를 정의합니다.
-e ACCOUNT='9102302' 거래 계정 번호를 환경 변수로 설정합니다.
-e SYMBOL='EURUSD' 심볼 이름을 환경 변수로 설정합니다.
-e PERIOD='H1' 기간을 환경 변수로 설정합니다.
"/mnt/Robots/My bot.algo" 마운트 지점을 기준으로 cBot 알고리즘 파일의 경로를 지정합니다.
--environment-variables cTrader CLI에 환경 변수를 사용하여 구성 설정을 전달하고 있음을 알립니다.

cTrader CLI 이미지를 기반으로 준비된 Docker 이미지를 생성하고, 알고리즘 파일을 복사한 후 모든 환경 변수 및 기타 설정을 이미지 내에서 직접 구성할 수도 있습니다.

참고

Docker 이미지를 사용할 때 백테스트 및 이 문서에서 설명한 다른 명령어를 포함한 모든 cTrader CLI 기능을 사용할 수 있습니다.

일반적인 사용 사례

트레이더가 cTrader CLI를 사용하는 인기 있는 작업 목록입니다:

  • 모든 심볼 가져오기

    1
    ctrader-cli symbols --ctid=letstrade@email.com --pwd-file=C:/test/password.pwd --account=1234567
    

    응답:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    [
      {
        "Id": 1,
        "Name": "EURUSD",
        "Description": "Euro vs US Dollar"
      },
    
        .
        .
        .
    
      {
        "Id": 21497,
        "Name": "HONG KONG 50",
        "Description": "HONG KONG 50"
      }
    ]
    
  • 알고리즘 메타데이터 가져오기

    1
    ctrader-cli metadata C:/test/RSI_cBot.algo
    

    응답:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    {
      "Name": "RSI_cBot",
      "Type": "cBot",
      "AccessRights": "None",
      "BuildTime": "2023-05-11T16:42:56.7421508+03:00",
      "Parameters": [
        {
        "PropertyName": "Quantity",
        "FriendlyName": "Quantity (Lots)",
        "GroupName": "Volume",
        "Type": "Double",
        "DefaultValue": 1.0,
        "MinValue": 0.01
        },
        {
        "PropertyName": "Source",
        "FriendlyName": "Source",
        "GroupName": "RSI",
        "Type": "DataSeries",
        "DefaultValue": {
            "OwnerId": "00000000-0000-0000-0000-000000000000",
            "FriendlyName": "Close",
            "IsStandard": true
        }
        },
        {
        "PropertyName": "Periods",
        "FriendlyName": "Periods",
        "GroupName": "RSI",
        "Type": "Integer",
        "DefaultValue": 14
        }
      ]
    }
    
  • cBot 백테스트 실행

    1
    ctrader-cli run C:\test\mycbot.algo -c=letstrade@email.com --pwd-file=C:\test\password.pwd --account=1234567 --symbol=EURUSD --period=h1
    
  • 기본 매개변수로 cBot 실행

    1
    ctrader-cli run C:\test\mycbot.algo -c=letstrade --pwd-file=C:\test\password.pwd --account=1234567 --symbol=EURUSD --period=h1
    
  • 사용자 정의 매개변수로 cBot 실행

    1
    ctrader-cli run C:\mycbot.algo -c=letstrade@email.com --pwd-file=C:\test\password.pwd --account=1234567 --symbol=EURUSD --period=h1 --ConsolidationPeriods=3 --Periods=15
    
  • 파일에 저장된 매개변수로 cBot 실행

    1
    ctrader-cli run C:\mycbot.algo C:\test\mysettings.cbotset -c=letstrade --pwd-file=C:\test\password.pwd --account=1234567 --symbol=EURUSD --period=h1 
    

명령어 세부 설명

cTrader CLI는 다른 명령줄 도구와 동일한 방식으로 작동합니다. 사용자는 ctrader-cli와 함께 미리 정의된 명령어를 입력하고 실행합니다. 예를 들어, periods 명령어는 알고리즘이 실행될 수 있는 모든 차트 기간을 나열하는 데 사용됩니다:

1
ctrader-cli periods

일부 명령어는 다음과 같은 규칙을 따르는 옵션 또는 인수를 가집니다:

  • --는 옵션의 전체 버전 앞에 작성됩니다(예: --ctid, --symbol). -는 축약된 버전 앞에 작성됩니다(예: -c, -s).

  • 옵션의 값은 공백을 사용하여 지정할 수 있습니다(예: --ctid letstrade, --symbol EURUSD). 또는 등호를 사용하여 지정할 수 있습니다(예: --ctid=letstrade, --symbol=EURUSD).

  • 옵션과 달리 인수는 그대로 입력됩니다. 알고리즘의 경로를 고려해보세요. 이는 단순히 입력되는 인수입니다: C:/test/mycbot.algo

예시

  • 옵션을 가진 명령어

    --ctid--pwd-file을 옵션으로 사용하는 이 accounts 명령어는 letstrade에 연결된 모든 계정에 대한 데이터를 출력합니다:

    1
    ctrader-cli accounts --ctid=letstrade --pwd-file=C:/test/password.pwd
    
  • 인수를 가진 명령어

    알고리즘의 경로를 유일한 인수로 사용하는 이 metadata 명령어는 알고리즘에 대한 필수 메타데이터를 출력합니다:

    1
    ctrader-cli metadata C:/Users/{username}/Documents/cAlgo/Sources/Robots/mycoolcbot.algo
    

공백을 포함하는 경로나 값은 아래와 같이 작은따옴표나 큰따옴표를 사용하여 지정해야 합니다:

  • 'C:/test for cbot/my cbot.algo' 또는 "C:/test for cbot/my cbot.algo"와 같은 인수
  • --pwd-file='C:\test for cbot\password.pwd' 또는 --pwd-file="C:\test for cbot\password.pwd", --start='01/01/2024 12:34' 또는 --start="01/01/2024 12:34" 및 기타와 같은 옵션.

참고

어떤 스타일을 선택했다면, 코드 내에서 다른 스타일을 사용하지 마세요. 예를 들어, 공백을 포함하는 경로나 값에 대해 이미 작은따옴표(')를 사용했다면, 코드 내에서 다른 경로나 값에 대해 작은따옴표를 사용해야 합니다.

PWD 또는 TXT 파일 생성

cTrader ID의 비밀번호는 직접 지정되지 않습니다. 대신, PWD 또는 TXT 파일에 저장된 후 --pwd-file 옵션을 사용하여 파일의 경로를 지정합니다(예: --pwd-file=C:\test\password.pwd 또는 --pwd-file=C:\test\password.txt).

Notepad와 같은 텍스트 편집기에서 빈 문서를 열고 비밀번호를 붙여넣거나 입력한 후(공백 없이) .pwd 또는 .txt 확장자로 파일을 저장합니다.

모든 CLI 명령어

참고

특정 명령어에 대한 필수가 아닌 옵션은 대괄호로 표시됩니다. 예를 들어, 아래 표의 [--broker]와 같습니다. 코드에서 이러한 옵션을 사용할 때는 대괄호 없이 입력해야 합니다. 예를 들어, --broker.

명령어 기능 지원되는 옵션 및 인수
--help 또는 -h 사용 가능한 명령어와 해당 인수를 나열합니다.
periods 사용 가능한 차트 기간을 나열합니다.
accounts cTID에 연결된 계정을 나열합니다. --ctid 또는 -c, --pwd-file, [--broker], [--environment-variables 또는 -e]
symbols 사용 가능한 심볼을 나열합니다. --ctid 또는 -c, --pwd-file, --account 또는 -a, [--broker], [--environment-variables 또는 -e]
metadata cBot 또는 인디케이터에 대한 메타데이터를 표시합니다. <cbot.algo>
run 특정 심볼과 주어진 기간으로 cBot을 실행합니다. <cbot.algo>, [<params.cbotset>], --ctid 또는 -c, --pwd-file, --account 또는 -a, [--broker], [--environment-variables 또는 -e], --symbol, --period, [--full-access], [--CustomParameter1], …, [--CustomParameterN]
backtest 지정된 기간, 심볼 및 기타 매개변수에 대한 과거 데이터를 사용하여 cBot을 백테스트합니다. <cbot.algo>, [<params.cbotset>], --start=<start-time>, --end=<end-time>, --data-mode=<data-mode>, [--data-file=<path>], [--balance=<balance>], [--commission=<commission>], [--spread=<pips>], [--report=<path>], [--report-json=<path>], --ctid=<ctid>, --pwd-file=<path>, --account=<id>, --symbol=<name>, --period=<period>, [--CustomParameter1=<value>], [--environment-variables]

설명

인수 설명
<cbot.algo> 관련 .algo 파일의 경로 (예: C:/test/mycbot.algo). run, metadata, backtest 명령어에서 이 매개변수는 반드시 먼저 지정되어야 합니다.
<params.cbotset> cBot에 대한 매개변수 값을 포함하는 .cbotset 파일의 경로 (예: C:/test/special-parameters.cbotset). runbacktest 명령어에서 이 매개변수는 <cbot.algo> 바로 뒤에 지정되어야 합니다.
옵션 설명
--version 또는 -v cTrader CLI의 버전.
--ctid 또는 -c cTID 사용자 이름 또는 이메일 (예: --ctid=letstrade, --ctid=letstrade@email.com).
--pwd-file 지정된 cTID에 대한 비밀번호를 포함하는 PWD 또는 TXT 파일의 경로 (예: --pwd-file=C:/test/password.pwd).
--account 또는 -a 거래 계정 번호 (예: --account=1234567).
--broker 특정 중개인의 이름 (예: --broker=spotware). 이 옵션은 지정된 cTID가 동일한 번호를 공유하는 여러 중개인과의 거래 계정을 가지고 있는 경우 모호성을 제거하기 위해 사용됩니다.
--symbol 또는 -s 알고리즘이 거래하거나 작동하는 심볼 (예: --symbol=EURUSD).
--period 심볼 차트의 기간 (예: --period=h1). runbacktest 명령어에서 이 매개변수는 필수입니다.
--environment-variables 또는 -e 지정된 경우, 다른 옵션(예: ctid)의 값을 명시적으로 입력하는 대신 환경 변수에서 가져올 수 있습니다.
--full-access 지정된 경우, 알고리즘은 어떠한 접근 권한 제한 없이 실행됩니다.
--CustomParameter1 CustomParameter1과 일치하는 이름의 사용자 정의 매개변수 값 (예: --SpecialPeriods=20).
--balance backtest를 위한 초기 투자금 (예: --balance=10000).
--commission backtest를 위한 백만당 수수료 (예: --commission=30).
--spread backtest를 위한 핍 단위의 스프레드 (예: --spread=1).
--data-mode backtest를 위한 틱, 예를 들어 m1, m1-csv, open 등 (예: --data-mode=m1).
--data-file backtest를 위한 데이터를 포함하는 CSV 파일의 경로 (예: --data-file=C:/test/data.csv).
--start backtest를 위한 UTC 기준 시작 시간 DD/MM/YYYY [hh:mm] 형식 (예: --start=01/01/2024 또는 --start='01/01/2024 12:34').
--end backtest를 위한 UTC 기준 종료 시간 DD/MM/YYYY [hh:mm] 형식 (예: --end=31/08/2024 또는 --end='31/08/2024 20:56').
--report backtest 보고서가 저장될 HTML 파일의 경로 (예: --report=C:/test/report.html).
--report-json backtest 보고서가 저장될 JSON 파일의 경로 (예: --report-json=C:/test/report.json).
--exit-on-stop 지정된 경우, cBot이 중지될 때 CLI 프로세스가 종료됩니다.

cTrader CLI에서 백테스트

백테스트는 트레이더가 과거 데이터를 사용하여 cBot의 성과와 신뢰성을 평가하고, 강점 또는 약점을 발견하며, 매개변수를 실험할 수 있게 합니다. 과거 시장 조건에서 거래를 시뮬레이션함으로써, 백테스트는 실제 자금이 라이브 시장에 투입되기 전에 알고리즘이 어떻게 수행될지 결정하는 데 도움을 줍니다.

참고

백테스트는 알고리즘이 성공할 것을 보장하지는 않지만, 라이브 트레이딩 환경에서 예상치 못한 실패의 위험을 줄이는 통계적 근거를 제공합니다.

명령어

모든 가능한 옵션을 포함한 backtest 명령어:

1
ctrader-cli backtest <cbot.algo> [<params.cbotset>] --start=<start-time> --end=<end-time> --data-mode=<data-mode> [--data-file=<path>] [--balance=<balance>] [--commission=<commission>] [--spread=<pips>] [--report=<path>] --ctid=<ctid> --pwd-file=<path> --account=<id> --symbol=<name> --period=<period> [--CustomParameter1=<value>] [--environment-variables]

backtest 명령어 예시:

1
ctrader-cli backtest 'C:\test\sample martingale.algo' C:\test\special-parameters.cbotset --start='01/01/2024 12:34' --end='31/08/2024 20:56' --balance=10000 --commission=30 --data-mode=m1 --spread=1 --ctid=letstrade --pwd-file=C:\test\password.pwd --account=4791386 

보고서

backtest 명령어가 실행된 후, cTrader CLI는 먼저 백테스트 매개변수에 대한 정보를 표시합니다.

Image title

백테스트 작업이 완료되면, cTrader CLI는 결과 요약을 표시합니다.

Image title

추가적으로, cTrader CLI는 백테스트 결과와 유용한 세부 정보를 Backtesting 폴더에 저장합니다. 모든 백테스트 작업은 고유한 InstanceIDBacktesting 폴더를 가집니다.

특정 cBot 백테스트 인스턴스의 경로: …\data\{cBotName}\{BacktestingInstanceID}\Backtesting

위 경로의 데이터 폴더는 일반적으로 백테스트 중에 지정된 cBot 알고리즘 파일과 동일한 디렉토리에 있습니다.

Image title

이벤트 JSON 파일은 모든 중요한 거래 이벤트에 대한 세부 정보를 포함합니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
[

 {

  "serial": 0,

  "orderId": null,

  "positionId": 1,

  "event": "Create Position",

  "time": 1704146700000,

  "volume": 100000,

  "quantity": 1,

  "type": "Sell",

  "entryPrice": 1.10426,

  "tp": 1.10026,

  "sl": 1.10826,

  "closePrice": null,

  "grossProfit": 0,

  "pips": 0,

  "balance": null,

  "equity": 10000

 },
 .
 .
 .
 {

  "serial": 284,

  "orderId": null,

  "positionId": 143,

  "event": "Create Position",

  "time": 1725023280000,

  "volume": 200000,

  "quantity": 2,

  "type": "Buy",

  "entryPrice": 1.10559,

  "tp": 1.10959,

  "sl": 1.10159,

  "closePrice": null,

  "grossProfit": 0,

  "pips": 0,

  "balance": null,

  "equity": 32340.43

 }

]

로그 TXT (텍스트) 파일은 cBot 시작, 중지, 거래 행동 및 결과에 대한 정보를 제공합니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Info | CBot instance [sample martingale, EURUSD, h1] started.

01/01/2024 22:05:00.000 | Trade | Executing Market Order to Sell 100000 EURUSD (SL: 40, TP: 40)

01/01/2024 22:05:00.000 | Trade | → Executing Market Order to Sell 100000 EURUSD (SL: 40, TP: 40) SUCCEEDED, Position PID1

02/01/2024 10:12:00.000 | Info | Closed

02/01/2024 10:12:00.000 | Trade | Executing Market Order to Buy 100000 EURUSD (SL: 40, TP: 40)

02/01/2024 10:12:00.000 | Trade | → Executing Market Order to Buy 100000 EURUSD (SL: 40, TP: 40) SUCCEEDED, Position PID2

02/01/2024 12:22:00.000 | Info | Closed

02/01/2024 12:22:00.000 | Trade | Executing Market Order to Buy 200000 EURUSD (SL: 40, TP: 40)

02/01/2024 12:22:00.000 | Trade | → Executing Market Order to Buy 200000 EURUSD (SL: 40, TP: 40) SUCCEEDED, Position PID3
.

.

.

30/08/2024 13:08:00.000 | Info | Closed

30/08/2024 13:08:00.000 | Trade | Executing Market Order to Buy 200000 EURUSD (SL: 40, TP: 40)

30/08/2024 13:08:00.000 | Trade | → Executing Market Order to Buy 200000 EURUSD (SL: 40, TP: 40) SUCCEEDED, Position PID143

Info | CBot instance [sample martingale, EURUSD, h1] stopped.

매개변수 CBOTSET 파일은 백테스트 작업에 사용된 매개변수와 값을 포함합니다.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
{

 "Chart": {

  "Symbol": "EURUSD",

  "Period": "h1"

 },

 "Parameters": {

  "InitialQuantity": "1",

  "StopLoss": "40",

  "TakeProfit": "40"

 }

}

보고서 HTML 파일은 백테스트 작업, 거래 통계, 주문 내역 및 많은 중요한 세부 정보를 제공하는 GUI 보고서입니다. 이는 모든 웹 브라우저에서 볼 수 있습니다.

Image title

오류 해결

오류 메시지 솔루션
처리되지 않은 예외 또는 잘못된 사용법 코드를 철저히 확인하세요. 구문 오류를 수정하거나 알 수 없는 명령어, 옵션 또는 인수를 제거하세요.
cTrader CLI는 .NET 4 cBots을 지원하지 않습니다 최신 cTrader Windows 애플리케이션에서 cBot을 .NET 6로 다시 컴파일하고 새로운 cBot 파일을 사용하세요.
연결을 설정할 수 없음 컴퓨터의 인터넷 연결을 확인하고 수정하세요.
잘못된 cTrader ID 자격 증명 지정된 cTrader ID 이메일, 사용자 이름 또는 비밀번호를 철저히 확인하세요.
계정을 찾을 수 없음 accounts 명령을 사용하여 귀하의 cTrader ID에 연결된 모든 거래 계정을 나열한 후 올바른 번호를 지정하세요.
알 수 없는 심벌 이름 symbols 명령을 사용하여 사용 가능한 심벌을 나열한 후 올바른 심벌을 지정하세요.
알 수 없는 기간 periods 명령을 사용하여 사용 가능한 기간을 나열한 후 올바른 기간을 지정하세요.
스톱 아웃 (백테스트 전용) cBot 코드를 개선하거나 매개 변수를 변경하여 마진콜을 방지하거나 둘 다 수행하세요.
지정된 기간에 대한 과거 데이터 없음 (백테스트 전용) 지정된 기간에 대한 과거 데이터가 포함된 파일 경로를 제공하거나 다른 기간을 지정하세요.
추가 AccessRights가 필요합니다. --full-access를 사용하여 cBot에 상승된 권한을 부여하세요.
잘못된 CBOTSET 파일 형식 최신 버전의 cTrader Windows를 사용하여 CBOTSET 파일을 생성하여 유효성을 보장하세요.
모호한 계정 번호 --broker를 사용하여 계정과 관련된 중개인을 명시적으로 지정하여 모호성을 피하세요.
지원되지 않는 cBot 최신 cTrader Windows에서 .NET 6을 사용하여 cBot을 빌드하고, cBot을 내보낸 후 내보낸 파일을 사용하세요.
잘못된 설정 (백테스트 전용) 백테스트에 지정된 모든 매개 변수를 철저히 확인하고 오류를 수정하세요.

cTrader CLI의 cTrader Algo API

일부 cTrader Algo API 멤버는 cTrader CLI에서 다르게 동작합니다. 아래 표는 멤버를 나열하고 그들의 동작 변화를 설명합니다.

cAlgo API 멤버 cTrader CLI에서의 동작
MessageBox MessageBoxResult.None을 반환합니다.
Window 모든 메서드는 무시됩니다. 창이 표시되지 않습니다.
Notifications.PlaySound 완전히 무시됩니다.
Chart.TakeChartshot null을 반환합니다.

요약

cTrader CLI는 알고리즘 트레이딩 활동의 범위를 확장하려는 트레이더에게 필수적인 기능입니다. 이는 간단한 명령줄 지시로 cBot을 효율적으로 실행하고 관리할 수 있게 해주기 때문입니다. 사용자는 항상 자신의 필요에 맞는 유용한 API 및 타사 서비스와 cTrader CLI를 통합하도록 권장됩니다.

Image title