Como utilizar indicadores em cBots
Neste artigo e no vídeo correspondente, demonstraremos como pode referenciar e utilizar indicadores personalizados nos seus cBots. Para tal, desenvolveremos um algoritmo de negociação que utiliza o resultado de um indicador personalizado de exemplo para realizar operações de negociação.
Criar um novo cBot
Para ver todos os indicadores personalizados atualmente instalados na sua máquina, mude para a aplicação Algo e vá para o separador Indicadores.
Se vir um ou mais indicadores personalizados aqui, significa que pode utilizá-los livremente em qualquer um dos seus outros algos. Para este tutorial, utilizaremos o indicador Sample SMA e desenvolveremos um cBot que negocia com base na direção da média móvel simples.
Primeiro, iremos criar um novo cBot e renomeá-lo para algo informativo como "Robô SMA". O nosso cBot entrará numa negociação de compra quando a SMA se tornar bullish e entrará numa negociação de venda quando a SMA se tornar bearish. O nosso cBot não fará cobertura das suas posições, o que significa que as posições opostas serão fechadas a cada novo sinal.
Inicializar um indicador
Quando se trata de indicadores personalizados, o nosso primeiro passo é adicionar uma referência ao indicador personalizado. Para referenciar um indicador personalizado, precisamos de executar os seguintes passos:
- Clique no botão Gerir referências.
- Encontre o indicador que queremos referenciar na janela recém-aberta.
- Marque a caixa de seleção ao lado do indicador que queremos referenciar.
- Clique em Aplicar.
Depois de o indicador ter sido referenciado, podemos criar uma variável de instância do seu tipo.
1 | |
Nota
O tipo de indicador deve ser o mesmo que o nome da classe do indicador. Isto pode ser diferente do nome do ficheiro do indicador.
O próximo passo é inicializar o indicador no nosso método OnStart(). No entanto, antes de fazermos isso, adicionaremos um parâmetro ao cBot que nos permitirá configurar os períodos utilizados pelo indicador SMA personalizado.
1 2 | |
Podemos utilizar o método Indicators.GetIndicator<>() para inicializar quaisquer indicadores personalizados que estejamos a referenciar. Precisamos de definir o tipo de indicador e passar os parâmetros do indicador separados por vírgulas.
Nota
Os parâmetros precisam de ser passados na ordem declarada na classe do indicador.
No nosso caso, o tipo é SampleSMA e passaremos os valores de origem deste indicador, que neste caso são os preços de fecho das barras e o parâmetro Period.
1 | |
Implementar lógica de negociação
Com o nosso indicador inicializado, podemos implementar a nossa lógica de negociação. O nosso indicador SMA personalizado guarda os valores da média móvel na coleção Results. A coleção Results apresenta dois métodos úteis, IsRising() e IsFalling(). Estes métodos permitem-nos descobrir se os resultados do indicador estão a subir ou a descer.
Utilizaremos estes métodos para implementar as nossas condições de negociação.
1 2 3 4 5 6 7 8 9 10 11 | |
Agora preencheremos as nossas declarações if. Quando a média móvel estiver a subir, fecharemos todas as posições de venda e abriremos uma posição de compra. Por outro lado, quando a média móvel estiver a descer, fecharemos todas as posições de compra e abriremos uma posição de venda.
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
No nosso código, utilizámos dois novos métodos que a API não fornece por padrão. O método Open() abre novas posições com base na direção e quantidade definidas. O método Close() fecha todas as posições da direção definida.
Aqui está como o método Open() é definido.
1 2 3 4 5 | |
Para executar uma ordem dentro do método Open(), também precisamos de adicionar o parâmetro Volume.
1 2 | |
Tudo o que resta é definir o método Close().
1 2 3 4 5 | |
Realizar testes de verificação
Como sempre, antes de deixarmos o cBot negociar em nosso nome, iremos testá-lo minuciosamente. Para fazer o mesmo, adicione uma instância e depois mude para o separador Testes de verificação.
Para testar ainda mais o nosso cBot, adicionamos o indicador personalizado que referenciámos ao gráfico onde uma instância está anexada e verificamos se os pontos de entrada da posição correspondem aos resultados do indicador.
Para saber mais sobre como usar e desenvolver cBots, sinta-se à vontade para navegar por outras secções da documentação e subscrever o nosso canal do YouTube para ser notificado quando publicarmos um novo vídeo.
Neste artigo e no vídeo que o acompanha, mostraremos como pode referenciar e usar indicadores personalizados nos seus cBots. Para tal, iremos desenvolver um algoritmo de negociação que usa o resultado de um indicador personalizado pré-feito para realizar operações de negociação.
Criar um novo cBot
Para ver todos os indicadores personalizados atualmente instalados na sua máquina, mude para a aplicação Algo e prossiga para os 'Indicadores'