1- Introdução
Este documento descreve a história, a arquitetura de dados e alguns
features da versão 5.0 do Gol e servidores Enfoque associados.
O texto procura dar uma visão algo técnica sobre a arquitetura
do sistema Enfoque de distribuição de informações
financeiras. Destina-se a usuários interessados em compreender
melhor como funciona o sistema Enfoque Cotações, para poder
obter a melhor performance deste sistema.
2- Histórico
O sistema Enfoque Cotações evoluiu - desde a versão
1.0 de 1988 - como um conjunto de ferramentas para acompanhamento do mercado
em tempo real. Naquela época, os computadores eram do tipo 286,
usavam o sistema operacional DOS, tinham 4 MB de memória e rodavam
a uma velocidade de apenas 33 MHz. As limitações dessas
máquinas tornavam necessário o uso de programas otimizados
para manter a atualização em real time. Desde o início,
o sistema da Enfoque integrava gráficos, páginas de cotações,
calculos e notícias em um único programa. Foi o primeiro
tradestation do mercado brasileiro.
De lá para cá, a potência dos computadores cresceu
em progressão geométrica em todos os sentidos: um computador
padrâo de hoje tipicamente funciona a 1 GHz (30 x mais rápido)
e tem 128 MB de memória (32 x mais). Isso permite que esses computadores
rodem multiplos programas simultaneamente, em um ambiente gráfico
que demanda muito processamento, como o Windows.
A versão 5.0 do Gol incorpora várias capacidades novas,
atingindo um grau de integração ainda maior.
Stream real time
Na segunda metade dos anos 90, o uso Internet cresceu de maneira explosiva.
Houve um enorme avanço nas tecnologias de formatação
e visualização de informações em programas
do tipo browsers, como o MS Internet Explorer e Netscape. O sucesso destes
programas foi tal, que muitos chegaram a achar que tecnologias mais tradicionais
de transmissão e visualização de informações
financeiras em real time ficariam obsoletas, sendo substituídas
pelos browsers.
Mas isso não aconteceu. Não foi devido a ruptura da bolha
da Internet, mas sim pela inadequação da arquitetura dos
browsers para visualização de cotações. O
browser foi concebido para difundir com textos científicos, documentos
que permanecem relativamente estáticos após a sua criação.
Quando voce digita um endereço no browser - ou clica em um link
em uma página - o programa estabelece uma conexão com o
servidor, baixa o documento e desfaz a conexâo.
Cotações, gráficos e notícias do mercado
financeiro tem uma característica muito mais dinâmica. Para
difusão dessas informações, se faz necessária
a manutenção contínua da conexão de dados.
Um evento gerado no mercado - por exemplo um negócio de um determinado
ativo - deve ser transmitido pela bolsa, passando pelo distribuidor de
informações, até chegar ao seu computador no menor
tempo possível.
Isso é o que se chama de "stream real time": um processo
contínuo de transmissão de todos os eventos relacionados
a um conjunto de ativos, com a iniciativa das atualizações
partindo da origem: a bolsa.
Broadcast x unicast
Dentro da categoria de stream real time, existem duas variantes: o broadcast
e o unicast.
Nos anos 70, as empresas de difusão de informações
financeiras usavam mainframes - enormes e dispendiosos computadores -
e instalavam nos clientes os chamados terminais "burros", que
apenas exibiam páginas formatadas pelo mainframe remotamente. Neste
modelo, cada cliente selecionava um conjunto de ativos para exibição,
recebendo as atualizações para estes ativos. Assim, o primeiro
modelo de distribuição foi unicast: cada usuário
recebia um fluxo de atualizações individualizado.
A década de 80 foi marcada pela popularização dos
computadores pessoais. Isso possibilitou o aparecimento de novas tecnologias
de difusão de informações. Uma que ganhou força
foi o FM. As empresas difusoras de informações passaram
a condensar todos os negócios de todas as bolsas em um único
fluxo, que era transmitido via FM para os clientes. Como esses agora contavam
com PCs - e não mais com terminais burros - a "inteligência"
do computador era usada para tratar o sinal e exibir apenas os ativos
que interessavam ao usuário. Isso permitiu uma sensível
redução nos custos de difusão, pois a operação
dos mainframes era caríssima. E assim o modelo de broadcast - um
único sinal unidirecional sendo transmitido para multiplos clientes
- ganhou mercado rapidamente.
Mas o modelo de broadcast tinha limitações. Era necessário
condensar todas as atualizações de todos os ativos de todas
as bolsas em um único sinal. Com a globalização,
o aumento contínuo no número de ativos e na velocidade dos
mercados, é fácil perceber que o volume de informações
contida neste sinal tende a crescer indefinidamente. Como a banda do FM
é limitada, logo se observou a saturação desses canais,
com atraso das atualizações em momentos de pico. A tecnologia
de broadcast era barata, mas inadequada para difusão de informações
financeiras.
Em 95, com o início da popularização da Internet
no Brasil, a Enfoque foi pioneira em um projeto que poderia parecer uma
volta para o passado: usar a Internet para difundir informações
financeiras por meio de fluxos de dados individualizados: o bom e velho
unicast. Neste modelo, cada usuário, através da operação
do programa Gol, seleciona os ativos que interessam. Os servidores na
Enfoque criam então um fluxo de dados customizado para cada usuário,
contendo apenas os ativos assinados por ele. Esse processo é possível
graças a característica bidirecional da Internet.
Como cada usuário recebe apenas as atualizações
dos ativos selecionados - tipicamente uma pequena fração
dos mais de 8000 ativos atualmente disponíveis no sistema Enfoque
Cotações - o fluxo tem um tamanho reduzido, resultando em
baixo consumo da banda da rede, baixa demanda na CPU do computador e maior
rapidez nas atualizações.
3- Arquitetura do sistema
O sistema Enfoque Cotações tem uma arquitetura desenhada
e otimizada para difusâo de informações em tempo real.
Ele é composto por multiplos computadores e programas especializados
e interconectados.
Servidores Enfoque
No lado da Enfoque, as tarefas de processamento sâo distribuídas
entre multiplos servidores:
- Concentradores de dados, que tratam os sinais das várias bolsas
e agências de notícias.
- Servidores de bancos de dados, responsáveis pelo armazenamento
a longo prazo das informações.
- Servidores Enfoque Cotações, responsáveis pela
distribuição das cotações para os diferentes
usuários.
- Servidores de Headlines responsáveis pela distribuição
das manchetes tempo real.
- Servidores de Séries, para manutenção e distribuição
de séries históricas de preços.
- Servidores Web, para distribuição de documentos e aplicações
em browser.
Essa arquitetura distribuida garante a escalabilidade e velocidade de
resposta dos servidores Enfoque. Cada servidor pode se conectar a multiplos
outros, e a topologia da rede é determinada pela carga observada
em cada componente.
Programa de Cliente: o Gol
No lado do cliente, um único programa - o Gol - concentra todas
as funções de recepção, visualização
de cotações, gráficos e notícias; servidor
DDE e cálculos. Isso simplifica a operação e despolui
o desktop do usuário. Há também um ganho de desempenho
em relação a outros sistemas que distribuem o servidor DDE,
o display de cotações e notícias, e a aplicação
de gráficos em tres programas separados. Menos programas rodando
significa mais confiabilidade, melhor tempo de resposta e maior simplicidade
na operação.
Internamente, o Gol tem uma arquitetura orientada a objetos e distribui
o processamento entre vários componentes, conforme o diagrama abaixo:
GolEngine - É o centro nervoso das cotações,
desenhado com o objetivo de desempenho e confiabilidade. Esse componente
é responável por:
- Conectar, manter e monitorar a conexâo com os Servidores Enfoque
Cotações. Em caso de queda da conexão, o GolEngine
se reconecta automaticamente, assim que as condições de
comunicação se normalizarem.
- Assinar e manter atualizados os ativos em uso. É um banco de
dados de ativos e séries em memória de máximo desempenho.
O GolEngine negocia com os servidores Enfoque quais os ativos subscritos
e autorizados.
- Calcular valores de fórmulas, ativos fórmula e ativos
carteira.
- Manter e disparar alarmes de preços.
- Atualizar e manter séries de preços, intraday e longo
prazo.
- Notificar objetos usuarios sobre atualizações em ativos
e séries. Todos os objetos periféricos - janelas de gráficos,
fórmulas, flashs de cotações, páginas de
cotações etc - recebem as atualizações através
do GolEngine.
- Servidor DDE, responsável pelo fornecimento de dados a outros
aplicativos (p.e. Excel)
- Cliente DDE, responsável por ligações com outros
servidores DDE, para atualização de ativos ou fórmulas.
Isso permite que ativos de outros feeders sejam usados no Gol, para
consolidação ou redundância de fontes de informação.
- Download on demand de séries de preços intraday e longo
prazo.
Central de Notícias - Responsável pelo tratamento
do fluxo de manchetes em tempo real. As manchetes sâo recebidas
no Gol por uma conexão independente, de modo a nâo impactar
na conexão de cotações.
Notar que somente as manchetes são recebidas em tempo real. O
texto integral de cada notícia está disponivel em uma página
web associada, acessada através de browser integrado no Gol. Desta
forma, apenas aquelas notícias cuja manchete interessa são
efetivamente baixadas, resultando em um uso racional da banda da rede.
Dentro da Central de Notícias atua o Agente de Notícias,
componente que lê e separa as notícias em caixas postais,
de acordo com a ocorrência de palavras chave, notificando o usuário
quando necessário. Ele funciona como um filtro, evitando que voce
tenha que ler as centenas de notícias geradas pelas agências
em tempo real. Para se ter uma idéia, as fontes de notícia
disponíveis no sistema Enfoque Cotações atualmente
geram em média 1500 notícias por dia.
A central de notícias permite a conexão com multiplos servidores
de headlines, permitindo que voce possa integrar notícias geradas
internamente na sua organização às notícias
das agências em tempo real. E cada usuário pode, se autorizado,
publicar notícias no sistema.
Janelas de visualização - A parte de visualização
de dados (cotações, gráficos e notícias) é
independente do funcionamento do GolEngine e Centro de notícias.
Essa separação entre a interface gráfica e o modelo
de dados simplifica a criação de outros programas que usem
o GolEngine, como aplicações para servidores web. E também
reflete no desempenho: o programa Gol gasta um mínimo de recursos
da maquina para manter o banco de dados.
O Gol tem as seguintes tipos de janelas para visualização:
- Flash de cotacoes - Detalhe completo sobre um ativo, com cotações,
minigráfico (para os ativos mais liquidos) e links para outras
informações dobre o ativo.
- Página de cotações - Display de cotações
poderoso, com layout configurável nas linhas e colunas, etc
- Janela de Gráfico -
- Janela de Minigráfico - Gráfico simples, de fácil
visualização.
- Janela de gráfico de ponto e figura e perfil de mercado
- Calculadora - Permite o calculo de fórmulas com atualização
em tempo real e resultado multimidia (com voz)
- Lista de Notícias - Notícias recebidas, com recursos
de busca e reordenação.
4- Arquitetura de dados
É importante que você entenda a arquitetura de dados do
Gol, e como ela se reflete no uso do programa. O GolEngine mantém
tabelas de diferentes tipos de objetos: ativos, séries e alertas.
Ativos são ações, mercadorias, moedas, índices,
fórmulas e carteiras. Cada ativo tem multiplas cotações
ou tipos, como último, variação, máximo, mínimo
etc. Na categoria dos ativos sâo possíveis vários
subtipos:
- Ativos Enfoque - São ativos transmitidos pela Enfoque. Atualmente
são mais de 8000, incluindo as principais bolsas nacionais e
estrangeiras.
- Ativo fórmula - São fórmulas contendo cotações
de ativos. São criados e mantidos na ponta, em seu computador
(exemplo IBOVUS = IBOV/EUSCOM ou seja, o valor do índice em dólar
comercial)
- Ativo carteira - Uma carteria de ativos. Também criado na ponta.
O valor da cota da carteira é o valor do ativo. Permite que voce
compre e venda papéis e administre o caixa, com ajuste automático
do número de cotas.
- Ativo Indicadores - Conjunto de indicadores de uma série.
- Ativo DDE - Ativos cujos valores são fornecidos por outros
servidores DDE. Gol tem interfaces DDE para Broadcast, CMA, Reuters,
TIBLink, ComStock e RealTick.
Todos os ativos são atualizados online, e os valores de suas cotações
podem ser usados em fórmulas, para construção de
séries e gráficos, em alertas de preços, em páginas
e flashs de cotações.
As séries podem ser intraday ou longo prazo. As séries
intraday são sempre baseadas em uma cotação de um
ativo (normalmente o último preço, mas nada impede que voce
faça séries de outros tipos de cotações).
As séries intraday permitem multiplos horários de pregão
configuráveis e definição de filtros de preços
(percentual e absoluto) para detecção de bad ticks. Essas
séries podem ser fornecidas pela Enfoque ou armazenadas na ponta,
em seu computador, conforme descrito no ítem Gráficos adiante.
As séries de longo prazo são sempre mantidas em seu computador,
para permitir seu uso em análises mesmo quando desconectado da
Enfoque. Para a sua comodidade, a Enfoque mantém um banco de dados
com mais de 500 séries para download. A atualização
das suas séries de longo prazo é automática, mesmo
que você fique vários dias sem atualizá-las. O aplicativo
LPMaster permite a edição das séries LP.
5- Gráficos
A Enfoque tem tradição na área de análise
t écnica, com mais de 20 anos de atuação neste setor.
O próprio nome do programa - Gol - vem de "Gráficos
On Line". Embora o sistema atual seja muito mais do que um programa
de gráficos, a parte gráfica continua a receber atenção
especial e melhoramentos continuados.
Gol pode plotar gráficos intraday (com qualquer peridicidade)
e longo prazo (diário, semanal e mensal) atualizados online. São
disponíveis vários tipos de gráficos (barras, candletick,
linhas, comparativos, ponto & figura e perfil de mercado) com multiplos
indicadores. Além dos 13 indicadores padrâo (IFR, Estocástico,
Volume, médias moveis aritmética e exponencial, parabólico,
DMI, MaCD, Bollinger Bands, OBV, Trix, Willians %R) o usuário pode
ainda criar indicadores customizados, usando scripts nas linguagens JavaScript
ou VBScript (para mais detalhes sobre indicadores tipo script, clique
aqui).
As séries intraday podem ser administradas pela Enfoque ou criadas
na ponta, em seu computador.
A Enfoque foi a pioneira na transmissão de séries completas
para gráficos, poupando o usuário de ter que estar conectado
ininterruptamente durante os pregões para coleta das cotações;
e que tenha que editar manualmente séries com bad ticks. Usando
as séries intraday administradas pela Enfoque, você tem a
comodidade de não ter que se preocupar com as séries. Um
formato altamente compactado faz com que os downloads de séries
sejam rápidos.
Por outro lado, as séries mantidas na ponta permitem que você
crie gráficos de seus ativos fórmula ou carteiras, ou com
tamanhos maiores do que o padrão Enfoque. Como essas séries
serão locais, o download não é necessário
e a carga dos gráficos é mais rápida. Se voce optar
por criar uma série na ponta, e perder parte da série por
algum motivo, a Enfoque oferece um serviço de atualização
de séries intraday, onde o programa preenche o trecho faltante
com fragmentos de séries fornecidos pela Enfoque.
Você pode ainda misturar os dois tipos de séries, de acordo
com as características de cada uma. Em resumo, o Enfoque Cotações
oferece as vantagens dos dois tipos de séries.
6- Servidor DDE - ligação com Excel
O especificação do protocolo DDE (Dynamic Data Exchange)
foi criada pela Microsoft para transferência de dados entre aplicativos
no Windows. Embora criticado por alguns pela sua complexidade, o DDE acabou
sendo adotado como padrão para intercâmbio de dados entre
aplicativos do mercado financeiro. Com o tempo a própria Microsoft
tentou criar outras formas de intercambio (OLE, COM automation etc), mas
o DDE permanece até hoje como padrão.
A maioria dos usuários tem boa familiaridade com a planilha Excel,
e gosta de usar este programa para cálculos ou simples visualização
das cotações. Por isso é importante que a exportação
de cotações online (hot links) entre o Gol e o Excel se
faça de maneira eficiente e confiável.
Reconhecendo essa necessidade, o Gol implementa a exportação
DDE no formato nativo do Excel. Isso garante um máximo de velocidade
nas atualizações, e evita problemas associados a conversão
dos dados de formato numérico para texto e vice-versa.
O servidor DDE do Gol é uma ferramenta provada no tempo, em funcionamento
há mais de 7 anos. Em testes, foram feitos mais de 2 milhões
de atualizações em um prazo de 3 dias. A taxa de transferência
ultrapassa 300 kbytes por segundo, sendo mais do que suficiente mesmo
para as aplicações mais complexas.
Além disso, Gol pode ser usado para atualizar outras aplicações
que usem DDE nos formatos texto ou sylk, sendo o servidor DDE mais versátil
do mercado.
A nova versão expandiu a sintaxe do tópico DDE ATIVO. Anteriormente
um link deste tipo retornava o conjunto de 24 tipos de um ativo (ULT,
ABE, FEC, MAX, MIN etc) em 24 células contigüas da planilha.
A nova versão permite que a lista de tipos retornados seja especificada
na fórmula. Exemplo:
=GOL|ATIVO!DJIA.ULT.VAR.MAX.MIN.ABE.FEC.OCP.OVD
Além disso, é possível a definição
de nomes que representam de conjuntos de tipos. Exemplo:
FLASH=ULT.VAR.MAX.MIN.ABE.FEC.OCP.OVD
A fórmula abaixo é equivalente à primeira, porém
muito mais fácil de digitar:
=GOL|ATIVO!DJIA.FLASH
Essa nova sintaxe, associada a macros especiais para o Excel desenvolvidos
pela Enfoque, permitem que você digite o codigo de um ativo em uma
célula e depois faça o link DDE com apenas uma combinação
de teclas.
Outra novidade desta versão é o acesso ao livro de ofertas
online (5 ofertas em cada direção), resumo das ofertas (5
melhores preços em cada direção) e tipos calculados,
com variação em pontos, máximo em pontos etc.
Para mais informações sobre o servidor DDE do Gol, clicque
aqui.
7- Integração com browser
Gol integra o browser Internet Explorer no desktop, para visualização
de notícias e informações fundamentais sobre ativos.
Esta integração permite que você acesse esses serviços
a partir do desktop do Gol, sem perder de vista as cotações
e gráficos. A autenticação no servidor web é
feita automaticamente, para sua máxima comodidade. Gol permite
ainda que voce mantenha um banco de dados local de notícias em
seu computador.
xxx
v1.0 ofr 02/out/02
(c)copr 1988-2005 Enfoque Gráfico Sistemas Ltda
- todos os direitos reservados
|