Robôs: Primeiros Passos


A ferramenta de Robôs, que permite a automação no envio de ordens, está disponível através do menu "Janelas", que fica no canto superior direito da tela da plataforma, mas somente para assinantes do tipo "Tempo Real". Para o mercado de ações é necessário assinar o Módulo Bovespa Tempo Real e para o mercado de contratos futuros é necessário assinar o Módulo BMF Tempo Real.


Os robôs são 100% compatíveis com o Backtest, outra funcionalidade da plataforma que permite simular a execução de estratégias para períodos passados, ou seja, do ponto atual no gráfico para trás (back), enquanto o robô sempre tem a sua execução do ponto atual para frente (forward). Outra diferença entre robô e backtest é que nos robôs as estratégias são monitoradas em tempo real, negócio a negócio. Já no backtest as estratégias utilizam apenas as informações de preço dos candles/barras nos gráficos, ou seja, os valores de abertura, máximo, mínimo e fechamento.

Por serem compatíveis com Backtest é possível importar qualquer configuração e transformá-la em um robô com apenas alguns cliques, através do botão “Importar Backtest”. O sistema reconhece todas as configurações/opções feitas no backtest e as mesmas são automaticamente convertidas/reproduzidas nos robôs.

Outra grande facilidade nos robôs é a sua execução automática “na nuvem”, ou seja, os robôs são sempre executados em nosso sistema (nossos servidores) de forma que nem é preciso estar com a plataforma aberta para que os robôs funcionem.

Através dos robôs temos uma negociação totalmente automática, a qual utiliza os setups e opções configuradas para entrada e saída das operações (trades). Quando temos um sinal de entrada através do setup o robô envia automaticamente a ordem de compra/venda para iniciar uma operação (trade). Da mesma forma quando temos um sinal de saída ou qualquer outra condição configurada (stop loss, stop gain, zerar no final do dia, sair após um determinado número de candles/barras, etc.) o sistema envia automaticamente a ordem de compra/venda para encerrar a operação (trade).

Antes de executar o robô em uma conta real (Corretora XP) é possível, além de recomendado, avaliar/testar a sua execução em uma conta demo (Simulador). O Simulador de negociação da plataforma é uma corretora virtual, a qual processa em tempo real ordens em um ambiente simulado, muito próximo do real.

Na janela de Robôs, após criação do primeiro robô, temos 3 abas: "Configuração", "Resultado" e “Execução”.


Na aba "Configuração" é exibida a lista de robôs configurados pelo usuário e seu respectivo status de execução. Cada usuário pode configurar até 5 robôs na plataforma e cada robô pode operar uma lista de até 50 ativos.


Na aba “Resultado” é exibido o resultado geral dos robôs, ou seja, a quantidade de trades executados, operações em andamento (carteira), saldo em caixa (capital disponível para o robô operar), lucro ou prejuízo apurado (trade encerrados), lucro ou prejuízo projetado (trades em andamento) e o lucro ou prejuízo total. Nesta aba é possível filtrar o resultado por período (último dia, esta semana, este mês, este ano ou outro período configurado através de uma data inicial e/ou uma data final), ativo e mercado (ações ou contratos futuros).


Na aba “Execução” podemos visualizar detalhes da execução do robô através das abas: Trades, Carteira, Gráfico e Resumo.

Na aba “Trades” temos a lista de trades executados pelo robô. Nesta lista é possível visualizar uma série de informações como: número do trade, a data de entrada e saída de cada trade, o código do ativo, preço de entrada e saída, qtde (lotes), resultado (lucro ou prejuízo), percentual, capital de entrada e de saída, posição (comprada ou vendida), o tipo de saída (pelo setup, stop loss, stop gain, final do dia, número máximo de candles/barras, etc.), despesa, número de candles/barras, max drawdown (absoluto), max drawdown (%) e saldo.

Nesta lista de trades executados é possível visualizar a ordem em que cada um foi finalizado (coluna No.) e o saldo (capital total) após cada trade encerrado. A coluna Max Drawdown (%) mostra a variação percentual máxima entre um pico no saldo e uma posterior queda neste total enquanto a coluna Max Drawdown mostra o valor absoluto. Imagine que o capital inicial utilizado no robô seja de 100.000,00 e depois de uma série de trades executados este capital aumente para 150.000,00, mas logo em seguida após outra série de novos trades executados este valor baixe para 120.000,00. Esta diferença percentual entre os 150.000,00 e os 120.000,00 (que é de 20%) é o Max Drawdown (%), enquanto o valor absoluto é de 30.000,00.


Na aba “Carteira” temos a lista de operações em andamento, ou seja, trades ainda não finalizados. Nesta lista temos a ordem em que a operação foi inicada (coluna No.), data de entrada e data atual (última cotação), código do ativo, preço de entrada, preço de atual (última cotação), qtde (lotes), resultado (lucro ou prejuízo), percentual, capital de entrada e de saída, posição (comprada ou vendida), despesa e número de candles/barras.


Na aba “Gráfico” podemos visualizar a evolução do capital a cada trade executado pelo robô. A linha vertical em vermelho mostra em que ponto ocorreu o Max Drawdown (%). Através deste gráfico, que também pode ser visualizado em um backtest podemos avaliar se a estratégia possui uma característica de ganho consistente ao longo do tempo ou não.


Por último, na aba “Resumo” podemos visualizar uma série de informações consolidadas sobre o desempenho geral do robô, como:

- Total de trades executados,
- Total de trades com lucro (positivos),
- Total de trades com prejuízo (negativos),
- Capital inicial,
- Capital final (saldo),
- Resultado,
- Variação (%),
- Total de lucro nos trades,
- Total de prejuízo nos trades,
- Total de despesa,
- Max Drawdown,
- Max Drawdown (%),
- Trade com maior lucro,
- Trade com maior prejuízo,
- Lucro médio por trade,
- Prejuízo médio por trade,
- Trade mais longo (nº candles/barras),
- Trade mais curto (nº candles/barras),
- Trade médio (nº candles/barras),
- Taxa de acerto (%),
- Taxa de erro (%),
- Payoff,
- Profit factor,
- Expectativa matemática,
- Expectativa matemática da lucratividade,
- Maior sequência de trades com lucro,
- Maior sequência de trades com prejuízo


Quando o robô possui mais de um ativo então temos também a aba “Desempenho individual”, a qual exibe uma lista com um resumo da execução de trades do robô para cada ativo. Nesta lista temos o código do ativo, o total de trades executados, o total de trades com lucro, a taxa de acerto (%), o resultado (lucro ou prejuízo) e a variação percentual. Ao ordenarmos esta lista, por exemplo, pelo resultado podemos facilmente verificar quais ativos estão apresentando os melhores ou piores resultados.


Nas abas de resultado (Trades, Carteira e Desempenho individual) podemos, através do botão “Gráfico”, visualizar o gráfico do ativo mostrando os trades executados pelo robô, conforme exemplo abaixo:


Nas abas de resultado (Trades e Carteira) podemos fazer ajustes manualmente nas operações através do botão “Manutenção”. Com esta opção podemos remover um ou todos os trades nas abas. Também podemos através deste botão, na aba Carteira, abrir manualmente uma posição, assim como inverter ou encerrar uma posição. Podemos fazer ajustes no preço de entrada e qtde da posição. Para isso basta selecionar a posição desejada (trade em andamento) e em seguida clicar no botão “Manutenção”. É importante saber que através deste botão fazemos apenas ajustes lógicos no robô, pois nenhuma ordem é enviada em função destes ajustes.


Também é possível exportar o resultado geral dos robôs, assim como a execução, para arquivos Excel em formato .CSV, através do botão “Exportar”.

Na janela de robôs também podemos, através do botão “Setups” configurar os setups que serão utilizados como sinal de entrada e de saída nas estratégias.