O Que um Programa Automático num Gráfico Tem Autorização para Fazer
Um programa pode correr e ainda assim não enviar uma ordem, e a recusa só aparece num sítio. A autorização como cadeia, o tempo de vida como a verdadeira distinção, e o que um comentário não aguenta.
Estar a correr e ter autorização são dois estados diferentes
Um programa associado a um gráfico pode estar completamente carregado e ser completamente incapaz de negociar. Lê os preços que chegam, atualiza o seu próprio estado, chega às suas próprias conclusões, e depois vê cada ordem que tenta enviar ser recusada antes de essa ordem sair da máquina. Enquanto isto acontece, nada no gráfico parece errado.
A distância entre correr e ter autorização é a coisa mais útil a compreender sobre automação numa plataforma de retalho, porque a maior parte das histórias que começam com uma estratégia que não fez nada durante a noite vive lá dentro. O programa não estava avariado e o mercado não estava calmo. Simplesmente não lhe era permitido agir.
A autorização é uma cadeia, não um interruptor
Se um programa associado pode enviar uma ordem é normalmente decidido por mais do que uma definição. Há um interruptor para todo o terminal, uma definição por programa, e em algumas contas também uma autorização do lado da corretora. Uma ordem só passa quando todas elas a deixam passar, o que faz da autorização uma cadeia: um elo fechado trava tudo, e todos eles produzem a mesma aparência exterior.
Por isso dizer que a negociação automática foi ligada é uma afirmação incompleta — nomeia um elo. Estabelecer que um programa pode agir é estabelecer que cada um deles diz que sim no mesmo momento, e o que está ao nível da conta não é sequer visível a partir do terminal. É um facto sobre a conta, respondido pela corretora e não pelo programa.
A recusa é silenciosa exatamente onde está a olhar
Quando falta a autorização, a ordem é recusada pelo terminal antes de chegar ao servidor, pelo que nunca se torna nada que a conta lhe possa mostrar. Não há uma ordem rejeitada no histórico, porque não houve ordem. O gráfico continua a desenhar, o programa continua a correr, e o único registo do que aconteceu está no registo da própria plataforma.
É por isso que a autorização merece ser tratada como um estado a verificar e não como uma definição a configurar uma vez. Pode ser alterada por uma atualização, por um reinício, por abrir um esquema de janelas guardado, ou por uma alteração na conta, e nenhuma dessas coisas se anuncia. O registo é a única superfície onde a diferença entre ter decidido não agir e não ter sido autorizado a agir é sequer visível.
Um programa que corre uma vez e um programa que fica
As plataformas costumam distinguir dois tipos de programa associado, e a distinção é o tempo de vida e não a linguagem. Ambos são escritos da mesma maneira e ambos falam com o terminal pela mesma interface. Um é invocado, faz o seu trabalho sobre o estado da conta tal como está naquele momento, e para. O outro fica carregado e é invocado de novo a cada preço que chega.
Quase todas as consequências práticas decorrem disso. Um programa de execução única serve para um trabalho definido pelo momento presente — fechar tudo, colocar um conjunto de ordens preparado, escrever o conteúdo de um gráfico para um ficheiro — porque não precisa de saber o que acontece a seguir. Também não pode gerir aquilo que colocou, porque nessa altura já não está lá. Tudo o que tenha de reagir a preços posteriores tem de ser do tipo que fica, e escolher o tipo errado produz um programa que funciona na perfeição e depois não faz mais nada, o que se lê como uma falha e não é.
O seu silêncio não é um relatório
Um programa associado age sobre os preços que o terminal lhe entrega. Enquanto a ligação está em baixo não chegam preços, por isso nada é calculado e nada é enviado — e visto de fora isso é indistinguível de um programa que recebeu tudo e concluiu que não havia nada a fazer.
Os dois casos são diferentes em tudo o que importa e idênticos no ecrã. Separá-los obriga a ir aos registos: o que o registo diz que o programa andava a fazer, e se a conta mostra alguma coisa do outro lado. Nem o gráfico nem o que o próprio programa desenha no gráfico resolvem a questão, porque ambos são construídos a partir do que o terminal tem, que é precisamente o que está em causa.
Uma etiqueta numa ordem não é um identificador
A maioria das plataformas deixa uma ordem levar consigo um pedaço curto de texto livre: um comentário enviado com a ordem, que viaja para o servidor e costuma aparecer junto à posição resultante e nos extratos da conta. Para isso é genuinamente útil — ler um extrato mais tarde e conseguir ver que regra ou que programa colocou aquilo.
O que não é é um campo em que um programa possa confiar. O texto é curto e o texto mais longo é truncado. Corretoras e servidores podem acrescentar-lhe coisas ou substituí-lo. E uma posição fechada por um stop ou por um processo automático leva muitas vezes um comentário escrito pelo servidor e não aquele com que foi aberta, pelo que a etiqueta à saída não é necessariamente a que entrou. Tudo o que tenha de ser lido de volta com fiabilidade pertence a um campo destinado a identificação, ficando o comentário como aquilo que é — uma nota para uma pessoa que leia um extrato mais tarde.
O que uma descrição de uma corrida automática deixa de fora
Qualquer afirmação sobre o que um programa fez durante um período é uma afirmação sobre uma versão concreta de um terminal, um servidor concreto, um conjunto concreto de autorizações e um gráfico concreto, e só é reproduzível na medida em que esses o forem. Uma descrição que os omite não disse o suficiente para alguém a verificar, incluindo quem a escreveu.
Há uma coisa que pode ser verificada sem nada disso, que é a coerência interna. O registo da plataforma e o extrato da conta são escritos por sistemas diferentes e registam os mesmos acontecimentos de lados diferentes. Onde concordam, alguma coisa aconteceu como foi descrita. Onde discordam, ou onde o registo guarda recusas de que o extrato não tem rasto, a resposta está na distância entre os dois. Essa comparação não tem glamour nenhum, e é a única parte do quadro que não depende de acreditar na descrição.
Capital em risco. Negociar forex e CFDs envolve um alto nível de risco e pode não ser adequado para todos os investidores — a maioria das contas de varejo de CFD perde dinheiro. Nunca opere com dinheiro que você não pode perder. Ler o aviso de risco completo