Integração Externa
Esta função está disponível no
Trader Gráfico PRO e
Trader Gráfico DMA.
Por ser um robô em potencial, o Trader Gráfico nas versões
PRO e
DMA possui uma função específica de vinculação de
Estudos Personalizados com o módulo de
Estratégias e com o
TG Broker. Mas para alguns desenvolvedores a programação disponível dentro dos
Estudos Personalizados (baseada em VB Script) possui alguns limites instransponíveis, principalmente quando o assunto está relacionado com variáveis globais e número de funções de programação (ambos limitados a 4 dentro dos
Estudos Personalizados).
Se você entende que precisa de mais recursos para suas programações, então poderá utilizar a integração externa do Trader Gráfico para alimentar
Estudos Personalizados específicos, próprios para interagir com sinais criados fora do sistema Trader Gráfico (ver o tópico
Programação na parte de baixo desta ajuda). Antes de começarmos com as explicações técnicas, segue uma lista de possíveis aplicações para esta tecnologia:
- Vincular o Robô do Trader Gráfico a estudos complexos demais para serem programados como um estudo personalizado ou que precisem ter seu código fonte protegido (será necessário criar um aplicativo externo independente do Trader Gráfico).
- Distribuir um sinal de estratégia único para vários clientes protegendo o código fonte do sinal (como o Top Hedger, por exemplo).
- Criar um sistema onde uma operação, mesmo que manual, seja difundida entre vários clientes por meio da internet.
- Criação de sistemas paralelos de desenvolvimento de estudos com códigos protegidos, como já existe em softwares internacionais de operação de Forex (sistema de negociação de moedas estrangeiras), por exemplo.
É importante termos em mente que todo o desenvolvimento e programação externos ao Trader Gráfico, sua distribuição e captação de clientes é de responsabilidade do desenvolvedor interessado nesta integração. O Trader Gráfico, em hipótese alguma, ajudará no desenvolvimento de estudos ou na captação de clientes para esta integração. Nós nos limitamos a oferecer a ferramenta com as cotações em tempo real de Bovespa e/ou BM&F e pela execução das ordens via robô. Toda a parte desenvolvida fora do Trader Gráfico é de responsabilidade de seus desenvolvedores.
Limitações
Por ser uma integração com GRÁFICOS, há uma limitação de uso prático:
- A menor escala de tempo dos sinais externos é limitada ao gráfico intraday de 1 minuto, logo o menor tempo gráfico para disparo dos sinais é de 1 minuto.
Integrações
É possível consultar as cotações e gráficos do Trader Gráfico para calcular os sinais de compra e venda externos, as informações disponíveis são:
- Leitura dos gráficos intraday em arquivos texto.
Todos os gráficos intraday ficam disponíveis para consulta em arquivos texto quando pelo menos um gráfico estiver aberto neles. Ao fazer a consulta é importante não bloquear este arquivo texto, pois isso poderá travar o gráfico que o utiliza.
Os gráficos ficam salvos na pasta "Dados" dentro da pasta de instalação do Trader Gráfico, esta pasta é oculta no Windows. Há vários arquivos nesta pasta, mas os de intraday são formados pelo código do ativo, seguido pelo caracter "_" e do tempo gráfico em minutos correspondente. Exemplo, o gráfico de 5 minutos de PETR4 será formado por um arquivo de nome "PETR4_5" (não há extensão nestes arquivos e apenas gráficos intraday são salvos nesta pasta).
Abaixo um exemplo (string única sem quebras de linha) do conteúdo de um arquivo chamado "WINM13_6" (6 minutos do mini Ibovespa Futuro WINM13):
FUTURO DE IBOVESPA MINI 12-06-13 (BMF)|20130612? 201304170900|5351000|5346000|5352000|5318500|1016|291|1097980900|1@ 201304170906|5345500|5341000|5346000|5333000|624|229|666314400|1@
O começo do arquivo possui uma descrição do ativo, essa descrição fica antes do caracter "?". Após este caracter teremos as barras guardadas entre os caracteres "@". Os campos que separam cada informação de uma barra são separados pelo caracter "|". A ordem das barras é da mais antiga para a mais recente, logo as barras mais recentes são adicionadas ao final do arquivo. A ordem dos campos de cada barra segue abaixo (Informação entre as "@". Os preços estarão multiplicados por 100):
Data (formato AAAAMMDDHHMM) | Abertura | Fechamento | Máxima | Mínima | Volume | Nº Negócios | Volume R$ | Campo de verificação (deve ser ignorado)
- Leitura de cotações em tempo real por meio do Servidor DDE, veja mais na ajuda desta função.
- Gravação dos sinais de compra e venda para integração com os gráficos em arquivos texto:
A única forma de enviar os sinais externos ao Trader Gráfico será gravando-os como arquivos texto dentro da pasta "Integra" que fica dentro da pasta de instalação do Trader Gráfico. Como esta pasta pode variar de local de cliente para cliente, é recomendável posicionar o seu aplicativo dentro desta mesma pasta para fazer a gravação dos arquivos. Os arquivos devem seguir um layout extremamente simples, como segue:
Nome do Arquivo
Identificado no código do estudo personalizado como Integra_C (para compras) ou Integra_V (para vendas). O nome deve ser formado pelo código do ativo em letras maiúsculas, seguido do caracter ".", do caractere que identifica se é compra ou venda ("C" para compra e "V" para venda), seguido do caracter "_" e, por último, da data no formato AAAAMMDDHHMM. A extensão do arquivo deve ser ".int".
Exemplo: Sinal de compra em VALE5 para a barra as 11:03 do dia 03 de Maio de 2013 será VALE5.C_201305031103.int
Conteúdo do Arquivo
Identificado no código do estudo personalizado como Integra_PrC (para preço das compras) ou Integra_PrV (para preço das vendas). Embora possa parecer estranho, o conteúdo do arquivo é OPCIONAL. Se necessário pode ser guardado o valor da flecha dentro do conteúdo do arquivo (o valor deve ser multiplicado por 100, exemplo: 16,05 = 1605). Para que o Trader Gráfico utilize uma valor automático para as flechas basta colocar um texto neste conteúdo, como por exemplo a letra "A". Se for a intenção de passar o preço da flecha, apenas o valor numérico do preço (multiplicado por 100) deve constar do conteúdo do arquivo.
Local do Arquivo
A partir da versão 5.5.368 é possível criar sub-pastas dentro da pasta "Integra" que fica na pasta de instalação do Trader Gráfico, como já foi citado acima. Normalmente o local desta pasta é:
Meus Documentos/Trader Grafico/Integra/
Para usar sub-pastas e permitir diversos robôs para o mesmo Ativo basta passar o parâmetro PastaIntegra dentro do código fonte, de preferência no começo da primeira linha. Este comando é OPCIONAL, se nada for declarado aqui a plataforma tentará ler os arquivos na pasta "Integra" raiz. Exemplo:
Para ler os arquivos gravados em uma pasta nova - dentro da pasta "Integra" (o que é obrigatório) - chamada hipoteticamente de "Exemplo", é necessário criar esta pasta em Meus Documentos/Trader Grafico/Integra/Exemplo e depois declarar apenas o nome da pasta (e não o endereço completo) no código, desta forma:
PastaIntegra = "Exemplo"
Estudo Personalizado Exemplo
Quem faz realmente a integração entre os arquivos texto que possuem os sinais de compra e venda e os gráficos é um estudo personalizado que deve ser programado para este fim. Este estudo personalizado será, então, vinculado ao Robô por meio de um gráfico determinado pelo desenvolvedor (como intraday de 1 minuto, por exemplo) e disparará as ordens de compra e venda sempre que um arquivo for gravado na pasta "Integra". Abaixo um exemplo de estudo personalizado que já vem com o Trader Gráfico, no menu Estudos > Estudos Personalizados > Categroria: Outros > Testa_Integra:
Abaixo o código fonte da Linha1:
If Integra_C = "X" Then
Func = 2
Flecha = Integra_PrC
ElseIf Integra_V = "X" Then
Func = - 2
Flecha = Integra_PrV
Else
If L1_B = 2 Then
Func = 1
ElseIf L1_B = - 2 Then
Func = - 1
Else
Func = L1_B
End If
End If
Programação
A integração funciona da seguinte forma, as barras dos gráficos intraday são identificadas pelo seu preço de abertura, sempre. Logo, a barra das 10:05 do dia 03/05/2013 (cuja primeira cotação será às 10:05:00) será identificada pela string 201305031005. Mesmo que o tempo gráfico seja o de 5 minutos ou o de 1 minuto, como ambos terão uma barra das 10:05 esta barra será válida. Já um sinal gravado para a barra das 10:01 não será aproveitado em um gráfico de 5 minutos, pois este gráfico só terá as barras das 10:00 e das 10:05. Neste caso o gráfico a ser usado deve ser o de 1 minuto.
Quando um arquivo salvo na pasta "Integra" corresponder a uma barra do gráfico, as variáveis Integra_C (no caso de ser uma compra) ou Integra_V (no caso de uma venda) terão seus valores modificados para a string "X", por isso que no código acima existem códigos IF que só são verdadeiros quando estas funções possuem o valor "X". O valor destas variáveis quando não há sinal é a string "N".
No exemplo acima as flechas que serão marcadas no gráfico estão sendo abatecidas pelos arquivos de integração externa, mas se estas linhas forem retiradas do código o estudo passará a pegar automaticamente o preço de fechamento das barras. Também é possível passar outros preços no código das flechas, como a abertura (fazendo um Flecha = Ab_A). As variáveis Integra_PrC (preço da compra) e Integra_PrV (preço da venda) são os valores contidos dentro dos arquivos de texto da pasta "Integra", se os valores não forem numéricos o fechamento da barra será automaticamente assumido pelo Trader Gráfico.
Exemplo de gráfico abastecido com sinais externos por meio do estudo personalizado Testa_Integra (cada flecha de compra e venda visualizada neste gráfico representa um arquivo texto salvo na pasta "Integra" como explicado acima):