Este artigo foi elaborado pelo Credson, membro da Comunidade, a quem agradecemos pela contribuição! Caso alguém queira se disponibilizar também para compartilhar ou contribuir na geração de conteúdo, clique aqui!
Rodando Robô em Nuvem
Neste artigo, eu irei fazer referência apenas ao Profit Chart porque não cheguei a testar a configuração em outras plataformas. Teoricamente seria o mesmo processo para realizar a configuração da Ninja Trader 8 ou MT5.
É muito comum ao rodar um robô em uma plataforma local nos depararmos com alguns problemas técnicos tais como queda de energia e de conexão com internet, além de ser necessário deixar a máquina ligada o tempo todo.
Uma solução bem bacana é rodar a plataforma de negociação em uma máquina virtual em um servidor nas nuvens, tal como o servidor EC2 da AWS, que oferece um plano grátis de 12 meses para novos clientes. Após esse período, o usuário pode desabilitar a máquina EC2 sem custos.
Minha experiência pessoal
Eu já utilizo uma máquina virtual há mais ou menos 5 meses e antes de continuarmos vou passar um pouco da minha experiência, os prós e contras, para que você possa decidir se faz sentido para você utilizar ou não um EC2 para executar o Profit Chart.
Vantagens de utilizar uma máquina virtual:
- Máquina Windows que trabalha 24×7, ou seja 24 horas por dia e 7 dias por semana;
- Não tem problemas com queda de conexão;
- Não precisa se preocupar com quedas de energia;
- Pode ser acessada de qualquer lugar com acesso a internet;
- Seu computador fica livre para outras tarefas diárias.
Desvantagens de utilizar uma máquina virtual:
- Na versão gratuita por 12 meses a máquina disponibilizada é bem modesta com apenas 1 GB de memória RAM;
- Não é viável operar manualmente dentro da máquina virtual por causa da limitação de memória RAM. A não ser que você contrate um plano com mais capacidade de processamento;
- O Profit não aceita logar a mesma conta em dois locais diferentes ao mesmo tempo. Se você quiser operar de forma manual enquanto a máquina virtual trabalha, você precisará de duas contas diferentes no Profit Chart.
Eu uso duas contas: uma na Clear para operar o robô na máquina virtual e outra conta no BTG, para operações manuais. Caso queira usar o modulo de automação na máquina virtual e no seu computador você irá precisar contratar o modulo de automação de forma independente para cada conta.
Nesse período em que estou utilizando a máquina virtual nunca tive nenhum problema de falha, seja desconexão, travamento da máquina ou outra falha qualquer.
É importante ter em mente que essa máquina na versão grátis possui recursos mais limitados, e portanto não dá para ficar acessando outros programas ao mesmo tempo. Por isso eu recomendo utilizar apenas o Profit com o Módulo de automação, uma janela do relatório de performance e um relógio da plataforma (Abaixo segue um print da configuração que eu utilizo).
Para uma melhor experiência, eu adaptei o código das minhas estratégias usando limitador de horário via código, bem como limitador de gain e loss diário, assim a máquina virtual pode ficar ligada o tempo todo e as estratégias nunca são pausadas.
Caso você use horário de entrada e saída, limite de gain e loss via Módulo de Automação, a sua estratégia será pausada e, na maioria das vezes, você vai precisar fechar o Profit e abrir novamente para que a estratégia possa ser iniciada novamente (eu não sei o motivo disso acontecer provavelmente é algum bug do Profit).
Afinal o que é uma máquina virtual EC2?
Uma máquina virtual EC2 é uma instância em nuvem da Amazon que simula um ambiente computacional. Ela permite executar sistemas operacionais e aplicativos como se fosse uma máquina física.
O serviço de computação em nuvem da Amazon que oferece máquinas virtuais é chamado de (Elastic Compute Cloud) – EC2. Ele conta com uma configuração simplificada e redimensionável, facilitando upgrades caso você precise de mais capacidade computacional.
Basicamente, com o EC2 você pode executar qualquer aplicativo em um ambiente virtual na nuvem da Amazon. Você pode escolher entre diferentes tipos de instâncias, imagens e sistemas operacionais conforme a suas necessidades.
Posso rodar uma máquina virtual EC2 sem custos?
Sim! Existe um plano de nível gratuito na AWS, que oferece capacidade computacional EC2 para teste, apesar de ser uma máquina modesta ela pode rodar perfeitamente uma plataforma de negociação.
O nível gratuito da AWS abrange 750 horas mensais de utilização do Amazon EC2 executando instância t2.micro, Windows, Linux, RHEL ou SLES para novos clientes da AWS. 750 horas são suficientes para executar continuamente uma instância t2.micro a cada mês sem interrupção.
Uma instância t2.micro tem 1 GB de memória e suporte para plataformas de 32 e 64 bits. Ela é adequada para aplicações que não exigem muitos recursos computacionais ou que têm picos ocasionais de demanda.
Caso tenha alguma dúvida acesse o FAQ da AWS: Perguntas frequentes sobre o nível gratuito AWS.
Como criar uma máquina Virtual na AWS
Para abrir uma conta na AWS, você precisa seguir alguns passos simples:
1) Acesse a página inicial da Amazon Web Services (AWS) e escolha “Criar uma conta gratuita” (Imagem 2)
2) Na tela seguinte, clique em “Criar uma nova conta AWS”. (Imagem 3)
3) Insira seu e-mail e você receberá um código de confirmação. Verifique seu endereço de e-mail usando o código que a AWS enviará para você.
4) Crie uma senha de acesso a AWS e confirme seus dados.
5) Depois de criar sua conta da AWS, você pode acessar o console do Amazon EC2 fazendo login no AWS Management Console e selecionando EC2 na página inicial do console.
6) Na tela inicial clique em pesquisar e digite EC2, clique na primeira opção EC2. (Imagem 4)
7) Na tela do console clique em “Executar instância”. (Imagem 5)
8) Selecione o sistema operacional Windows 2019 (base) e deixe marcado a opção: “Qualificado para nível gratuito”. Do lado direito você poderá conferir as opções do nível gratuito da sua máquina virtual. (Imagem 6)
9) Feito isso crie um par de chaves e dê um nome para suas chaves. Salve no seu computador pois você irá precisar dessa chave para gerar uma senha de admin para sua máquina virtual. (Imagem 7)
Não altere as demais configurações para não sair do nível gratuito a não ser que você entenda o que está fazendo.
Caso queira acessar sua máquina de qualquer lugar deixe a opção marcada e também deixe marcado “Permitir tráfego SSH”. Não vou entrar nos detalhes de acesso, caso queira entender os tipos de acesso você pode aprofundar no assunto. Basicamente esse acesso poderá ser via qualquer computador com Windows instalado. (Imagem 8)
10) Realizadas as configurações clique em “Executar Instância”. (Imagem 9)
11) Aguarde a instância ser gerada e iniciar, após isso selecione a máquina e clique em “executar”. (Imagem 10)
12) Para acessar sua máquina a partir do Windows você vai precisar configurar um cliente RDP. (Imagem 11)
13) Depois clique em “Fazer download de arquivo de área de trabalho remota”. (Imagem 12)
14) Após finalizar o download, clique em “Obter senha” e nesse momento você irá precisar da chave criada anteriormente. Após descriptografar sua senha, clique no arquivo RDP que você baixou. Na janela que se abrir você deve inserir sua senha de acesso a máquina virtual. (Imagem 13).
15) Pronto! Tendo acessado sua máquina virtual EC2, o próximo passo é baixar o Profit dentro da máquina virtual e instalá-lo normalmente como você fez na sua máquina local, fazer o login e configurar o seu robô.
É isso! Espero que este artigo seja útil para os membros da Comunidade NeoTraderBot! Rodar o Profit Chart em uma máquina virtual na AWS é uma alternativa muito interessante, pois você poderá deixar suas estratégias rodando 24×7, com a vantagem de poder realizar acesso remoto de qualquer lugar que esteja.
Autor: Credson B. Santos (m4tr1xbr)
Membro da Comunidade NeoTraderBot
Obrigado. Vai me ajudar bastante