Ir para o conteúdo

cTrader CLI

O cTrader CLI permite aos traders gerir operações de contas e negociação algorítmica diretamente a partir de uma consola ou terminal sem iniciar ou depender da aplicação cTrader regular. Com o cTrader CLI, os utilizadores simplesmente digitam comandos num terminal baseado em texto para aceder e executar algoritmos cTrader.

cTrader CLI em um minuto!

  • Execute cBots no Windows e Linux sem iniciar ou depender da aplicação cTrader Desktop e economize recursos de RAM e CPU.
  • Exerça um controlo mais robusto sobre as instâncias de cBot e execute cBots em diferentes contas sem abrir várias janelas da aplicação cTrader.
  • Crie programas personalizados que usam o cTrader CLI para iniciar, parar e gerir algoritmos de negociação na sua linguagem de programação preferida.
  • Integre o cTrader CLI com ferramentas de IA generativa e use linguagem natural para emitir comandos para algoritmos.

Aviso

O cTrader CLI está disponível no cTrader 4.8 ou versões mais recentes e funciona apenas com algoritmos .NET 6 modernos.

Métodos de execução e utilização

Através do cTrader Windows

Nota

Não são necessários conhecimentos de programação ou de linha de comandos para utilizar o cTrader CLI. Pode preparar e aplicar os parâmetros preferidos para um cBot no cTrader Windows e, em seguida, instruir o cTrader Windows para iniciar o seu cBot num processo externo do cTrader CLI.

Para executar um cBot no cTrader CLI, clique com o botão direito do rato numa instância local desse cBot no cTrader Windows e, em seguida, selecione Iniciar num processo externo.

Image title

O cTrader CLI é iniciado automaticamente e começa a executar a instância de forma independente da aplicação cTrader Windows.

Depois de iniciar uma instância de cBot num processo externo do cTrader CLI, pode fechar o cTrader Windows para poupar recursos de CPU e RAM, uma vez que o cTrader CLI não requer que o cTrader Windows permaneça aberto.

Através da linha de comandos do Windows

Pode iniciar o cTrader CLI a partir de qualquer programa de linha de comandos no Windows, como o Prompt de Comando ou o Windows PowerShell.

Primeiro, navegue até à pasta que contém o ctrader-cli e copie o caminho. O ficheiro executável do cTrader CLI encontra-se normalmente no mesmo diretório da aplicação cTrader Windows:

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

Image title

Em segundo lugar, abra o Prompt de Comando ou o Windows PowerShell, digite cd, adicione um espaço e, em seguida, cole o caminho que copiou anteriormente. O seu código deve ter este aspeto:

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

Execute o código e o seu programa de linha de comandos entrará no diretório que contém o executável ctrader-cli.

Por fim, pode digitar ctrader-cli.exe seguido de qualquer <command> válido e executá-lo. Por exemplo, pode executar ctrader-cli.exe periods para ver os períodos disponíveis.

Image title

Adicionar variável de caminho

Info

Depois de adicionar o cTrader CLI à sua variável de ambiente PATH, já não terá de navegar até ao diretório que contém o ctrader-cli antes de executar comandos na sua máquina Windows. Em vez disso, poderá executar comandos em qualquer local ou pasta digitando simplesmente ctrader-cli seguido do <command>.

Primeiro, localize a pasta que contém o ctrader-cli como fez anteriormente e copie o caminho.

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

Procure Variáveis de ambiente no menu Iniciar do Windows. Clique em Editar as variáveis de ambiente do sistema.

Image title

Na janela Propriedades do sistema, clique em Variáveis de ambiente. Faça duplo clique em Path em Variáveis de utilizador para {nome de utilizador}. Na janela Editar variável de ambiente, clique no botão Novo e, em seguida, cole o caminho que copiou anteriormente no campo.

Clique em OK até que todas as caixas de diálogo sejam fechadas.

Através da imagem Docker para Linux

O cTrader CLI está disponível como imagem Docker para Linux, permitindo-lhe executar cBots em instâncias VPS Linux económicas, servidores de alto desempenho e plataformas cloud fiáveis. Esta imagem também pode ser utilizada no Windows através do Docker Desktop (WSL) como um contentor Docker.

Nota

Se é novo no Docker, recomendamos que estude a sua documentação e se familiarize com os conceitos necessários.

A imagem Docker do cTrader CLI é publicada em Spotware Github packages e são fornecidas novas versões com cada atualização importante do cTrader Windows.

Para utilizar a imagem Docker do cTrader CLI, certifique-se de que o Docker está instalado na sua máquina e, em seguida, descarregue a imagem Docker do cTrader CLI mais recente disponível:

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

Depois de descarregar a imagem, é necessário criar e executar um contentor. Uma vez que os contentores Docker são executados numa sandbox virtualizada isolada do seu sistema operativo, tem de permitir explicitamente que o contentor aceda ao ficheiro do algoritmo do seu cBot e ao ficheiro de palavra-passe do cTID. Isto pode ser conseguido utilizando a funcionalidade de montagem do Docker, que permite que um contentor aceda a um diretório ou ficheiro do sistema anfitrião.

O comando abaixo cria um contentor com base na imagem descarregada e executa um 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

Os restantes parâmetros do comando são explicados abaixo:

Parâmetro Descrição
--name ctrader.console.run.mybot Especifica o nome do contentor.
--mount type=bind,src=/cAlgo/Robots,dst=/mnt/Robots Monta o diretório do anfitrião /cAlgo/Robots no diretório do contentor /mnt/Robots.
-e CTID='mycid' Define o seu nome de utilizador cTID como uma variável de ambiente.
-e PWD-FILE='/mnt/Robots/ctrader-cli.pwd' Define o caminho para o ficheiro da sua palavra-passe cTID, relativo ao ponto de montagem.
-e ACCOUNT='9102302' Define o número da sua conta de negociação como uma variável de ambiente.
-e SYMBOL='EURUSD' Define o nome do símbolo como uma variável de ambiente.
-e PERIOD='H1' Define o período como uma variável de ambiente.
"/mnt/Robots/My bot.algo" Especifica o caminho para o ficheiro do seu algoritmo cBot, relativo ao ponto de montagem.
--environment-variables Informa o cTrader CLI que estão a ser utilizadas variáveis de ambiente para transmitir definições de configuração.

Também pode criar uma imagem Docker pronta a executar com base na imagem cTrader CLI, copiar o seu ficheiro de algoritmo para ela e depois configurar todas as variáveis de ambiente e outras definições diretamente na imagem.

Nota

Todas as funcionalidades do cTrader CLI estão disponíveis ao utilizar a imagem Docker, incluindo testes de verificação e outros comandos descritos neste artigo.

Casos de uso comuns

Esta é uma lista de operações populares para as quais os traders utilizam o cTrader CLI:

  • Obter todos os símbolos

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

    Resposta:

     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"
      }
    ]
    
  • Obter metadados do algo

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

    Resposta:

     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
        }
      ]
    }
    
  • Fazer testes de verificação de um 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
    
  • Executar um cBot com parâmetros predefinidos

    1
    ctrader-cli run C:\test\mycbot.algo -c=letstrade --pwd-file=C:\test\password.pwd --account=1234567 --symbol=EURUSD --period=h1
    
  • Executar um cBot com parâmetros personalizados

    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
    
  • Executar um cBot com parâmetros guardados num ficheiro

    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 
    

Análise detalhada dos comandos

O cTrader CLI funciona da mesma forma que qualquer ferramenta de linha de comandos. Os utilizadores digitam ctrader-cli juntamente com comandos predefinidos e executam-nos. Por exemplo, o comando periods é utilizado desta forma para listar todos os períodos do gráfico nos quais os algoritmos podem ser executados:

1
ctrader-cli periods

Alguns comandos têm opções ou argumentos que seguem estas regras:

  • -- é escrito antes de uma versão completa de uma opção (como --ctid, --symbol) enquanto - é escrito antes de uma versão abreviada (como -c, -s).

  • O valor das opções pode ser especificado utilizando um espaço (como --ctid letstrade, --symbol EURUSD) ou utilizando o sinal de igual (como --ctid=letstrade, --symbol=EURUSD).

  • Ao contrário das opções, os argumentos são digitados como estão. Considere o caminho para um algoritmo. É um argumento que é simplesmente digitado: C:/test/mycbot.algo

Exemplo

  • Comando com opções

    Este comando accounts, que utiliza --ctid e --pwd-file como opções, apresenta dados de todas as contas associadas a letstrade:

    1
    ctrader-cli accounts --ctid=letstrade --pwd-file=C:/test/password.pwd
    
  • Comando com argumentos

    Este comando metadata, que utiliza o caminho para um algo como único argumento, apresenta metadados essenciais sobre o algo:

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

Qualquer caminho ou valor que contenha um espaço deve ser especificado utilizando aspas simples ou duplas, como demonstrado abaixo:

  • Argumentos como 'C:/test for cbot/my cbot.algo' ou "C:/test for cbot/my cbot.algo"
  • Opções como --pwd-file='C:\test for cbot\password.pwd' ou --pwd-file="C:\test for cbot\password.pwd" , --start='01/01/2024 12:34' ou --start="01/01/2024 12:34" e outros.

Nota

Se escolher um estilo para fazer algo, evite utilizar um estilo diferente mais tarde no seu código. Por exemplo, quando já tiver utilizado aspas simples (') para um caminho ou valor que contenha espaços, terá de utilizar aspas simples para outros caminhos ou valores que contenham espaços no seu código.

Criar ficheiros PWD ou TXT

As palavras-passe para o cTrader ID não são especificadas diretamente. Em vez disso, são guardadas em ficheiros PWD ou TXT e depois a opção --pwd-file é utilizada para especificar o caminho para os ficheiros (como --pwd-file=C:\test\password.pwdou --pwd-file=C:\test\password.txt).

Abra um documento vazio num editor de texto como o Bloco de Notas, cole ou digite a sua palavra-passe (sem espaços em branco) e depois guarde o ficheiro com a extensão .pwd ou .txt.

Todos os comandos CLI

Nota

As opções não obrigatórias para um determinado comando são indicadas entre parênteses retos, por exemplo, [--broker] na tabela abaixo. Quando utilizar essas opções no seu código, terá de as digitar sem os parênteses retos, por exemplo, --broker.

Comando Função Opções e argumentos suportados
--help ou -h Listar comandos disponíveis e os seus argumentos.
periods Listar períodos de gráfico disponíveis.
accounts Listar contas associadas a um cTID. --ctid ou -c, --pwd-file, [--broker], [--environment-variables ou -e]
symbols Listar símbolos disponíveis. --ctid ou -c, --pwd-file, --account ou -a, [--broker], [--environment-variables ou -e]
metadata Mostrar metadados sobre um cBot ou indicador. <cbot.algo>
run Executar um cBot num símbolo específico com um determinado período. <cbot.algo>, [<params.cbotset>], --ctid ou -c, --pwd-file, --account ou -a, [--broker], [--environment-variables ou -e], --symbol, --period, [--full-access], [--CustomParameter1], …, [--CustomParameterN]
backtest Fazer um teste de verificação de um cBot utilizando dados históricos para o período, símbolo e outros parâmetros especificados. <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]

Explicações

Argumento Explicação
<cbot.algo> Caminho para o ficheiro .algo relevante (por exemplo, C:/test/mycbot.algo). Nos comandos run, metadata e backtest, este parâmetro deve ser especificado primeiro.
<params.cbotset> Caminho para o ficheiro .cbotset que contém os valores dos parâmetros para o cBot (por exemplo, C:/test/special-parameters.cbotset). Nos comandos run e backtest, este parâmetro deve ser especificado imediatamente após <cbot.algo>.
Opção Explicação
--version ou -v Versão do cTrader CLI.
--ctid ou -c Nome de utilizador ou e-mail do cTID (por exemplo, --ctid=letstrade, --ctid=letstrade@email.com).
--pwd-file Caminho para um ficheiro PWD ou TXT que contém a palavra-passe para o cTID especificado (por exemplo, --pwd-file=C:/test/password.pwd).
--account ou -a Número da conta de negociação (por exemplo, --account=1234567).
--broker Nome de um corretor específico (por exemplo, --broker=spotware). Esta opção é utilizada para eliminar ambiguidades nos casos em que o cTID especificado tem várias contas de negociação com diferentes corretores que partilham o mesmo número.
--symbol ou -s Símbolo com o qual o algoritmo negoceia ou opera (por exemplo, --symbol=EURUSD).
--period Período para o gráfico do símbolo (por exemplo, --period=h1). Nos comandos run e backtest, este parâmetro é obrigatório.
--environment-variables ou -e Se especificado, permite que os valores para outras opções (por exemplo, ctid) sejam obtidos a partir das variáveis de ambiente em vez de serem digitados explicitamente.
--full-access Se especificado, o algoritmo é executado sem quaisquer limitações de direitos de acesso.
--CustomParameter1 O valor de qualquer parâmetro personalizado cujo nome corresponda a CustomParameter1 (por exemplo, --SpecialPeriods=20).
--balance Capital inicial para backtest (por exemplo, --balance=10000).
--commission Comissão por milhão para backtest (por exemplo, --commission=30).
--spread Spread em pips para backtest (por exemplo, --spread=1).
--data-mode Ticks, como m1, m1-csv, open, etc., para backtest (por exemplo, --data-mode=m1).
--data-file Caminho para o ficheiro CSV que contém dados para backtest (por exemplo, --data-file=C:/test/data.csv).
--start Hora de início em UTC no formato DD/MM/YYYY [hh:mm] para backtest (por exemplo, --start=01/01/2024 ou --start='01/01/2024 12:34' ).
--end Hora de fim em UTC no formato DD/MM/YYY [hh:mm] para backtest (por exemplo, --end=31/08/2024 ou --end='31/08/2024 20:56' ).
--report Caminho para o ficheiro HTML onde o relatório backtest é guardado (por exemplo, --report=C:/test/report.html).
--report-json Caminho para o ficheiro JSON onde o relatório backtest é guardado (por exemplo, --report-json=C:/test/report.json).
--exit-on-stop Se especificado, o processo CLI termina quando o cBot para.

Testes de verificação no cTrader CLI

Os testes de verificação permitem aos traders utilizar dados históricos para avaliar o desempenho e a fiabilidade de um cBot, descobrir os seus pontos fortes ou fracos e experimentar parâmetros. Ao simular negociações em condições de mercado passadas, os testes de verificação ajudam a determinar como um algoritmo pode funcionar antes de se comprometerem fundos reais em mercados reais.

Nota

Embora os testes de verificação não garantam que um algoritmo seja bem-sucedido, fornecem um suporte estatístico que reduz o risco de falhas imprevistas em ambientes de negociação reais.

Comandos

O comando de teste de verificação com todas as opções possíveis:

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]

Um exemplo de comando de teste de verificação:

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 

Relatórios

Após a execução do comando backtest, o cTrader CLI apresenta primeiro informações sobre os parâmetros dos testes de verificação.

Image title

Quando a operação de testes de verificação termina, o cTrader CLI apresenta um resumo dos resultados.

Image title

Além disso, o cTrader CLI guarda os resultados dos testes de verificação e detalhes úteis numa pasta Backtesting. Cada operação de testes de verificação recebe o seu próprio InstanceID e pasta Backtesting únicos.

Caminho para uma instância específica de testes de verificação de cBot: …\data\{cBotName}\{BacktestingInstanceID}\Backtesting

A pasta de dados no caminho acima está geralmente no mesmo diretório que o ficheiro algo do cBot que foi especificado durante os testes de verificação.

Image title

O ficheiro JSON de eventos contém detalhes de todos os eventos de negociação importantes.

 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

 }

]

O ficheiro de registo TXT (texto) fornece informações sobre o início, paragem, ações de negociação e resultados do 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.

O ficheiro de parâmetros CBOTSET contém os parâmetros e valores utilizados na operação de testes de verificação.

 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"

 }

}

O ficheiro de relatório HTML é um relatório GUI que fornece uma visão geral da operação de testes de verificação, estatísticas de negociação, histórico de ordens e muitos detalhes importantes. Pode ser visualizado em qualquer navegador web.

Image title

Resolução de problemas de erros

Mensagem de erro Solução
Exceção não tratada ou utilização inválida Verifique o seu código minuciosamente. Corrija erros de sintaxe ou remova comandos, opções ou argumentos desconhecidos.
O cTrader CLI não suporta cBots .NET 4 Recompile o seu cBot para .NET 6 na aplicação cTrader Windows mais recente e utilize o novo ficheiro cBot.
Não é possível estabelecer ligação Verifique e corrija a ligação à Internet no seu computador.
Credenciais cTrader ID inválidas Verifique minuciosamente o e-mail, nome de utilizador ou palavra-passe do cTrader ID especificados.
Não é possível encontrar a conta Utilize o comando accounts para listar todas as contas de negociação associadas ao seu cTrader ID e, em seguida, especifique o número correto.
Nome de símbolo desconhecido Utilize o comando symbols para listar os símbolos disponíveis e, em seguida, especifique o símbolo correto.
Período desconhecido Utilize o comando periods para listar os períodos disponíveis e, em seguida, especifique o período correto.
Stop out (apenas testes de verificação) Melhore o código do seu cBot, altere os seus parâmetros para evitar pedidos de cobertura ou faça ambos.
Não há dados históricos para o período especificado (apenas testes de verificação) Forneça o caminho para um ficheiro que contenha dados históricos para o período especificado ou especifique outro período.
São necessários AccessRights adicionais. Utilize --full-access para conceder ao cBot direitos elevados.
Formato de ficheiro CBOTSET inválido Considere gerar o seu ficheiro CBOTSET utilizando a versão mais recente do cTrader Windows para garantir a validade.
Número de conta ambíguo Utilize --broker para especificar explicitamente o corretor associado à conta para evitar ambiguidades.
cBot não suportado Crie o seu cBot utilizando .NET 6 no cTrader Windows mais recente, exporte o cBot e, em seguida, utilize o ficheiro exportado.
Definições inválidas (apenas testes de verificação) Verifique minuciosamente todos os parâmetros especificados para os testes de verificação e corrija os erros.

API do cTrader Algo no cTrader CLI

Alguns membros da API do cTrader Algo comportam-se de forma diferente no cTrader CLI. A tabela abaixo lista os membros e descreve a alteração no seu comportamento.

Membro da API cAlgo Comportamento no cTrader CLI
MessageBox Devolve MessageBoxResult.None.
Window Todos os métodos são ignorados. Nenhuma janela é apresentada.
Notifications.PlaySound Completamente ignorado.
Chart.TakeChartshot Devolve null.

Resumo

O cTrader CLI é uma funcionalidade essencial para os traders que pretendem expandir o âmbito das suas atividades de negociação algorítmica, pois permite-lhes executar e gerir cBots de forma eficiente com instruções simples de linha de comandos. Os utilizadores são sempre encorajados a integrar o cTrader CLI com APIs úteis e serviços de terceiros que se adequem às suas necessidades.

Image title