Artigos sobre: Robô Stark-Pro

[Manual Stark] Filtro de API Externa

No robô Stark é possível realizar integrações de API (RESTful) externas que poderão ser utilizadas como Sinal ou Filtro de entradas, este recurso possibilita a criação de uma inteligência externa para melhorar as tomadas de decisões do robô.

Você poderá utilizar todos os recursos do robô para criação de um sinal entrada e adicionalmente utilizar sua API com um filtro extra, ou ainda, poderá apenas informar o valor "1" nas expressões de Compra e Venda e deixar toda a lógica de entrada com a sua API.

Para utilizar o filtro de API externa basta configurar a URL da sua API nos parâmetros do robô e fazer a liberação do domínio no MT5:






O Stark fará as requisições à sua API de acordo com o tipo do seu setup, podendo ser A CADA TICK (limitado a 1 requisição por segundo) ou A CADA CANDLE;



A requisição será sempre como POST e os dados que serão enviados no POST são:

name_mt5 [string]=> Nome da Conta MT5 onde o robô está rodando.
login_mt5 [int]=> Login da Conta MT5 onde o robô está rodando.
real_account [int]=> Se for uma conta real esse campo será 1, se for demo será 0;
server_mt5 [string]=> Nome do servidor da conta MT5 onde o robô está rodando.
symbol [string]=> Código do ativo do gráfico onde o robô está rodando.
price [double]=> Preço do ultimo negócio do ativo do gráfico onde o robô está rodando.
set_name [string]=> Nome do Set que está rodando.
magic_number [int]=> MagicNumber do Set que está rodando.
open_position [double]=> Valor de lotes da posição aberta. Se maior que zero está comprado, se menor que zero está vendido e zero é sem posição aberta.
open_profit [double]=> Lucro da Posição aberta.
stark_version [double]=> Versão do robô que está rodando.
seu-parametro [string]=> Parâmetro de autenticação personalizado que poderá ser definido nos parâmetros do robô.

Sua API receberá todos os dados acima e poderá tomar a decisão e responder com um sinal de compra ou venda para o Stark, este sinal será dado no Response da requisição em formato JSON, conforme exemplo abaixo:

{ buy: 1, sell: 0 }

No exemplo acima está permitindo abertura de uma posição de compra ou ainda o fechamento de uma posição de venda aberta, caso o robô esteja configurado para isso, como exemplo abaixo:


Você pode ainda informar o TP e SL da operação, para isso deve incluir os dados no Response:

{ buy: 1, sell: 0, tp: 123000, sl: 122000}

Para que o Stark respeite esses valores de TP e SL é preciso fazer a configuração abaixo:



A sua API poderá ser desenvolvida na linguagem que desejar, as linguagens mais comuns para essa finalidade são Python e PHP, clique abaixo nos exemplos de API que deseja baixar;

API em PHP

API em Python


ATENÇÃO: Nenhuma alteração deve ser realizada nos parâmetros do setup enquanto o mesmo estiver com operação aberta, isso poderá causar a perda de informações em memória e prejudicar a operação em andamento. Para realizar qualquer alteração você deve aguardar a posição do magic number estar completamente zerada, é recomendável ainda desligar o algotrading antes da alteração e voltar a ligar somente quando o setup estiver totalmente recarregado.

Atualizado em: 01/02/2023

Este artigo foi útil?

Compartilhe seu feedback

Cancelar

Obrigado!