quinta-feira, 31 de janeiro de 2013

QUARTA, 30 DE JANEIRO

To vendo agora que não postei nenhum relato de terça, dia 29.

Não foi por falta de trabalho mas sim por cansaço puro. Os resultados diários estão planilhados e a qualquer hora coloco em algum post.

Estou trabalhando fortemente no código. Estou desenvolvendo uma versão nova a cada dia, com novas e importantes implementações. Alguns conceitos estão entrando de forma não ordenada, como foi o processamento hoje. Vacilei na entrada da versão I00 (lê-se "i" zero-zero) e acabei comendo bola no setup dos stops curto, longo e lambda.

Tive que mexer durante o trade por duas vezes para reconfigurar os setups e à tarde ainda tive interrupção da internet por uns 6 minutos... por conta disto, os resultados de hoje serão desconsiderados, foi barbeiragem de minha parte.

De qualquer forma, destaco as importantes implementações que estou fazendo no código. A versão J que trabalhei fortemente hoje está com a implementação do novo conceito de avaliar ponto de entrada pelo histórico das variações do valor do ativo. Este novo conceito conjugado à trava do "Garante 5" devem ajudar a positivar os resultados. Evidente que muitos testes, simulações e ajustes de setup deverão ser feitos.

Mas esta versão J tem implementado importantes novidades.

Amanhã ainda não conseguirei por em teste de mercado mas vamos ver se na sexta, implemento.

Abr!
hh

P.S.: recebi email da Impacta informando que tenho direito de refazer o C# módulo II. Tenho 3 meses a partir de hoje (ontem), então o prazo de encerramento é 30 de abril. Até lá espero concluir os módulos I e II do VBA e ainda fazer o VB.NET e só depois, refazer o C#. Vamos ver.

terça-feira, 29 de janeiro de 2013

SEGUNDA, DIA 28 DE JANEIRO

Expectativa do primeiro dia fulltime, com o GL+Automate.

Não mexi no Automate. Estou focando no núcleo de decisão do algoritmo e nesta segunda, dia 28, avancei no código.

Fiz alterações no layout, colocando o painel de controle na horizontal (estava na vertical) e implementei no painel e nos logs, o resultado em tempo real, com o acumulado do dia.

O GL deu problema pela manhã (as 9h00) de modo que não peguei a abertura do índice, como gostaria. Consegui ativá-lo (problemas lá na corretora) às 9h44.

Os resultados de hoje:
21.686 processamentos
396 trades
Resultado: -745 pontos
Neste dia, cheguei a ter pico de +815 com pico negativo de -810 pontos.

Escrevi um novo código com uma nova variável Lambda. É preciso mais testes e avaliação calma de processos e pontos da curva para operar. Isso requer tempo, paciência e dedicação. A inspiração na definição da lógica e o empenho em codificar custaram uma reunião marcada a noite que acabei furando. Mal...

Por hoje, cansado...

segunda-feira, 28 de janeiro de 2013

VBA MÓDULO I - AULA 2 DOMINGO 27

Domingo, 27 de Janeiro de 2013.

Bem, como registro no "Diário de Bordo", destaco que apesar de ser penoso acordar cedo e passar um domingo inteiro em curso, este tem valido muito a pena, comparando por exemplo, com o curso do C# Módulo II, que concluí semana passada.

O Hildebrando tem lá seus "momentos de fama" mas regra geral, é um bom instrutor, muito atento e preocupado com o desenvolvimento da turma. Ele para, explica e volta ao assunto sempre que necessário. De certa forma, meu conhecimento prévio também têm ajudado, mas o instrutor tem se esforçado e dedicado em passar as informações do VBA. Faz exercícios e obriga aos alunos a fazerem, o que é ótimo pois força o efetivo conhecimento.

Qdo aos destaques do dia, penso que o principal aprendizado foi relativo ao uso de "select" e dos movimentos do cursor, que consomem tempo e processamento do código. Pensei muito na minha rotina pro relatório do Antivirus e tenho certeza que posso melhorar a performance agora com os conhecimentos adquiridos ontem (estou produzindo este post na segunda, dia 28).

Evitar usar SELECT ou movimentos de célula são fundamentais na melhoria do código e não é necessário estes movimentos de célula e sim uso de variáveis, para aumentar o desempenho do código.

É isso.

sexta-feira, 25 de janeiro de 2013

SEXTA DIA 25 DE JANEIRO

É feriado em São Paulo, aniversário da cidade. Portanto, não houve pregão mas aproveitei e trabalhei o dia todo no código.

No almoço em conversa com o Koiti externei a dificuldade e a diferença em trabalhar no código, nas linhas, nos comandos, na sintaxe dos comandos e trabalhar na concepção, na lógica e no modo como o algoritmo deve pensar, decidir e agir. São duas formas distintas de desenvolvimento, uma requer 99% de transpiração de testes e o segundo, precisa de 90% inspiração (precisa dos 10% de transpiração tbm), criatividade, mas também forte raciocínio lógico.

O que mata nesta parte do desenvolvimento é a parte de "debug" do código e da lógica. Olhar os 8 mil registros que geraram os comportamentos de trade e daí desenvolver soluções criativas de melhoria, é uma demanda grande de trabalho.

Gosto de trabalhar a noite e de madrugada pois além do tempo ameno, o silêncio e sossego ajudam no desenvolvimento. Evidente que há o cansaço físico (e mental), mas acredito que vai valer (muito) a pena, todo esse trabalho.

quinta-feira, 24 de janeiro de 2013

QUARTA, DIA 23

Fico me perguntando agora pq eu não postei o relato de ontem, dia 23. Mas agora relembrando, ontem tive que acordar as 5h30 por conta de meu rodízio do carro para ir à Paulista e estava com muito sono a noite. Acabei dormindo com livros à minha volta e resultou no não-relato do dia. Tava um lixo ontem a noite mas apesar do cansaço, fiz os esboços da nova lógica a ser implementado.

De qualquer forma, no GL tivemos na quarta das 13h22 as 18h00, um total de 8.455 cálculos feitos que decidiram por 89 trades gerando um resultado de -365 pontos.

O curso de C#? uma merda...

QUINTA, 24 DE JANEIRO

Terminou hoje o martírio do curso do C# Módulo II. Realmente lamentável, balanço geral é que "nunca paguei tão caro por um curso de digitação". Relatei ao Fabio, comercial da Impacta sobre o caso e pedi a ele que desejo fazer de novo o módulo II. Mas não em fevereiro, dia 4 como ele até se antecipou pois não posso dispor do horário diurno neste mês tão importante de fevereiro, que é o mês onde tenho o GL com Automate para testes.

Mas o destaque mesmo do dia é o resultado efetivado de +210 pontos. Isto foi obtido com 6.751 cálculos que geraram 103 trades, realizados das 16h06 às 18h00. Pela primeira vez o resultado é positivo!!! (e sem nenhuma alteração nos parâmetros e no código). Aliás, preciso fazer algumas alterações de correção do código, que trava quanto abro outra planilha. Preciso acertar isto e a entrada do primeiro trade que não sei, estava funcionando no Enfoque e não está no GL. Para avaliação mais minuciosa.

Outro destaque é que já tenho os esboços e a lógica para implementar na nova versão, com a rotina "garante 5". Tenho percebido que prioritariamente é muito mais importante investir o tempo na elaboração da lógica do que sair digitando código feito louco. Tenho muitos esboços e muitas limitações técnicas mas vejo o quão importante é ter claramente definido a lógica, as rotinas de entendimento e decisão. Codificar fica menos complicado, apesar do tempo gasto com pesquisas sobre como acertar que o código faça exatamente o que e como queremos.

Bem, ontem acabei não mexendo no Automate e hoje também não, ao menos no horário do pregão. Fiz alguns testes de conexão entre o Automate e o Excel que se mostraram muito proveitosos. Preciso ligar para a Sungard, fabricante do GL/Automate amanhã, vamos ver.

Os dados base para os cálculos de decisão de trades estão aumentando e estou seriamente pensando em como implementar estas informações em um banco de dados (SQL?, Access?), deixando o Excel mais livre para processar apenas a parte de decisão. O GL está dobrando a quantidade de elementos a calcular e isto em apenas parte do período de trade pois de manhã estava indo ao curso do C#.

terça-feira, 22 de janeiro de 2013

TERÇA, DIA 22 DE JANEIRO

Nesta próxima quinta, termina o curso de C# Módulo II. Mais uma aula lamentável, apesar de ter a percepção que o Carlos Magno seja um entendedor de C#. Mas isto não basta, precisa saber repassar este conhecimento e isto, definitivamente ele não sabe...

Refletindo no que vou dizer e como farei a reclamação formal, pois percebo que outros tbm irão reclamar do curso, e dele em especial. É o conjunto da obra: atrasos constantes, não usa a meia hora a mais como compensação da sexta que daria as 40 horas de curso, ele não segue um método e apenas vai repassando um sistema que ele tem em C# e o aproveita para repassar conceitos do curso, enfim, poderia ser um nível III e não nível II.

Bem, saindo desse assunto e indo para coisas boas: comecei a mexer no GL, iniciei algumas primeiras configurações e testes. Fiz meu primeiro trade nele, fazendo uma compra no mini a 61.700 e vendendo a 61.720, ganhando 20 pontos! Uma boa estréia!

Não resisti, comecei a fuçar no Automate também (até parece que não ia né?), estou vendo que com a ferramenta sem dúvida é mais fácil de entender os conceitos do manual, ainda que o tenha lido e relido. Consegui fazer a conexão ao Excel e vi algumas comunicações entre os dois.

Mas não podia ficar só nisso certo? Certo! Comecei a colocar ordens e cancelar e aquele desejo mais forte que eu fez fazer um trade real, pois o módulo de som, com frases que gravei via sintetizador de voz para disparo de alarmes, começou a funcionar exatamente como deveria, informando os alertas previstos. Coloquei ordem na ponta de compra, outra na ponta de venda e depois que disparou o alarme de desativação forçada, percebi que algo não estava certo...

Após desativar o Excel/Automate, vi que tinha executado 5 ordens de compra e outras 5 de venda, batendo numa trava de segurança que havia configurado junto com a Marcela do suporte técnico da XP (felizmente) no GL. Na verdade ela comentou e eu acabei configurando a trava para um total máximo de 5 contratos/dia, para mini índice.

Se não tivesse a trava, ficaria disparando ordens sabe-se lá por qto tempo e em que posição! Mas no fim das contas, estava zerado, com 5 vendas a 61.755 e 5 compras a 61.735, ou seja, com um resultado positivo de 100 pontos!!!

Acabei o dia com 120 pontos reais POSITIVOS, pois usei a conta real para os testes do GL e do Automate.

Amanhã faço mais testes, mas com mais cautela e procurando entender exatamente o que aconteceu.