Software de Análise Técnica, em C/C++
Este é um software de Análise Técnica, ao estilo dos famosos Metastock e Metatrader, que irei desenvolver para Linux e Windows, completamente gratuito.
Eu costumo dizer que consigo programar qualquer coisa sozinho, até criaria um Windows ou Linux do zero se preciso (se me dessem uns 100 ou 200 anos para o fazer, claro está).
Fica aqui um vídeo do software a funcionar já em 2024 com efeitos:
Fica aqui um vídeo do software em acção antigamente, numa fase inicial de 2022:
E pensei: «Porque não um software de Análise Técnica? Seria facílimo para mim, nem entendo porque há empresas a ganhar milhões com esses softwares!».
Mas nunca tive tempo, ando sempre com 1001 projectos, e a minha parte do “Trading” estava virada para o Trading Systems’ Back-Tester.
E eu preciso de me dividir entre vários projectos, para não me cansar de nenhum.
Assim, vou alternando de tempos a tempos entre projectos, para nunca me cansar dos mesmos.
E como terminei o Knowledge\ Tester há meses, antes de voltar aos jogos, este pareceu-me boa ideia.
Ao mesmo tempo, um dia misturo-o com o Trading Systems’ Back-Tester e fico com uma versão gráfica do mesmo.
Ou seja, vou usar este para testar sistemas de trading também, antes de publicar os que desejo publicar.
Este estava na lista de espera.
Mas sempre tive a ideia de se um dia acabasse esse, fazer este.
No começo de 2022, ao dar formação a uma turma de Programação, ao me pedirem um desafio melhor que uma simples calculadora ou jogo do galo, propus-lhes tentarem fazer um gráfico de linhas, e aos melhores tentar um de velas japonesas (isto claro, a quem não quisesse tentar só uma calculadora ou jogo do galo pois como é óbvio nem todos tentaram).
Ao ver um aluno motivado a criar um gráfico em .Net, eu pensei: «Ei, porque não começar o tal software antes de voltar aos jogos, e ao mesmo tempo usaria isso para lhes mostrar que é possível?».
E voila, comecei.
Claro que eles só tinham de fazer algo simples, eu só fiz isto mais complexo píxel a píxel para lhes mostrar que nada é impossível, e agora vou usá-lo para mim mesmo um dia. 😛
Aqui ficam algumas imagens e posts do que vou fazendo, e lembrem-se, se ficar muito tempo sem mexer nele, é por estar a variar com outros projectos.
Mas nem que leve anos, um dia terminá-lo-ei.
Lembrem-se que tenho muitos projectos activos!
2022-03-01.
Ficam aqui os posts associados:
- 2024-04-15 – Estado final da 2ª fase de desenvolvimento do meu Software de Análise Técnica, agora com Fibonacci Retracements, e vídeo de 3 minutos para mostrar…O estado final do meu software de Análise Técnica antes de o deixar de lado uns tempos e partir para o back-tester gráfico. Aqui podem ver a última novidade, que são Fibonacci Retracements, um estudo de linhas muito usado na Análise Técnica, que como podem ver está bem mais giro do que os mais famosos
- 2024-04-03 – Adicionadas linhas de tendência animadas e canais de tendência ao meu software de Análise Técnica em C++…Aqui têm as minhas novas adições ao meu software de Análise Técnica: Linhas de tendência já funcionais e agarradas aos preços; Canais de tendência animadas também; Quanto às linhas de tendência, antes eram agarradas ao ecrã e não aos preços, pelo que quando eu movia o mapa, elas ficavam presas ao ecrã e agora podem
- 2024-03-24 – Adicionados botões para Linhas de Tendência ao meu Software de Análise Técnica em C++…Com mais umas horitas, já adicionei um sistema de botões para neste caso adicionar linhas de tendência aos gráficos. Convém lembrar que é tudo feito do zero píxel a píxel, sem bibliotecas de gráficos ou afins, e píxel a píxel, e em C++ e não noutras linguagens mais fáceis como Javas ou afins, não vá
- 2024-03-20 – Gráficos já com labels e posições limitadas à área do gráfico, optimizado para 2000 FPS, e com linhas dinâmicas já inseridas…O meu software de Análise Técnica continua a avançar. Como sabem eu crio as minhas próprias ferramentas, e não achei que o Metastock e outros tivessem tudo o que desejava… Convém demonstrar mais umas melhorias antes de dar o passo final. Primeiro, esqueci de referir que da última vez tinha compilado sem as flags de
- 2024-03-18 – De volta ao Game Engine, melhorando a performance das linhas dinâmicas, para usar depois também no software de Análise Técnica em C++…Eu sei que disse que só após terminar o software de Análise Técnica e o Trading System’s Back-Tester (versão GUI) é que retornaria ao maravilhoso mundo dos videojogos, e desenvolver o meu próprio Game Engine do 0 em C++. Mas tive de regressar por umas horas ao meu remake futuro do Master of Orion, porque
- 2024-03-15 – Gráficos com renderização já bem optimizada (460 FPS numa máquina velha), código melhorado, e renderização perfeita, no meu Software de Análise Técnica em C++…A parte dos gráficos está quase pronta, e foi optimizada, 460 FPS quando em esforço, ocupando menos de 1/10 do CPU num portátil com I5 velhinho. Da última vez que partilhei notava-se que tinha alguns bugs, ela ao fazer resize tinha uma dupla renderização, e meio torta, com os gráficos desalinhados (fiz à pressa com
- 2024-03-07 – Sistema de Gráficos do meu Software de Análise Técnica já com os gráficos e labels 100% funcionais, em C++…A fase principal dos gráficos está terminada. Neste momento, temos não só vários tipos gráficos como Velas Japonesas (Japanese Candlesticks), gráficos de barra, linha, áreas, etc, como temos muitos efeitos 3D, e funcionalidades essenciais. Podem ver que as labels estão funcionais já, e temos uma cruz (estilo mira) que não só indica nas labels a
- 2024-02-28 – Melhorias nos gráficos do meu Software de Análise Técnica em C++…Novas melhorias no meu futuro Software de Análise Técnica, pois como sabem, eu crio as minhas próprias ferramentas/softwares. É preciso sempre relembrar que é feito tudo do zero em C++, nada de livrarias GUI (usarei as minhas), nem de gráficos, nem nada, tudo desenhado no ecrã píxel a píxel à old-school, low level, pointers por
- 2024-02-23 – Finalizadas as estatísticas, de volta ao meu Software de Análise Técnica…Terminadas as estatísticas, chegou a altura de regressar ao software de Análise Técnica. As estatísticas podem vê-las à direita, num dos sistemas testado entre 2020-2024 no estilo scalping com apenas 5.000% de lucro (média de 8% ao mês), mas sem money management, sem risk management, sem stop-losses (só margin-calls), etc (atenção que o sistema do
- 2024-02-15 – Um ecrã do meu portátil enquanto vou desenvolvendo o meu Trading Systems’ Back-Tester em C++ com o CodeBlocks no meu Linux…Aqui vai o estado actual do Trading Systems’ Back-Tester, num screenshot tirado da minha máquina em Linux, o portátil onde desenvolvo estas coisas… Neste caso é um sistema que tem perto de 91% de ordens a ganhar e 9% de ordens a perder, com 5.350% de lucro em 4 anos (2020-2024). Isto corresponderia a perto
- 2024-02-10 – O Papel da Matemática no desenvolvimento de Trading Systems, e alguns vídeos relacionados a ver…Uma pequena parte que define o que faço, de um documentário famoso que é o “Quants – The Alchemists of Wall Street”, cujo vídeo deixo abaixo. Eu desconhecia este vídeo, mas agora ao retornar aos mercados financeiros após uns quase 20 anos de pausa, amigos mandaram-me alguns vídeos assim que eu referi que as coisas
- 2024-01-28 – O meu Ambiente de Trabalho enquanto vejo as performances dos meus Trading Systems num terminal de Linux com C++, e assisto a uma série de tv…Eu sei, 1.763.207.649.496.357.888% parece muito lucro, ou seja, 1.763 milhões de milhões de porcento de lucro, mas reparem que é em juros compostos, em 21 anos seguidos de trading, em velas de 1 minuto, a uma média de 300% ao ano. 😛 Já tinham saudades de ver o meu ambiente de trabalho? Ah, viram a
- 2024-01-25 – Múltiplos indicadores no meu Software de Análise Técnica em C++…Hoje passei a ter a possibilidade de se poder adicionar mais do que um indicador ao meu Software de Análise Técnica. É que antes de continuar a desenvolver os Trading Systems, tenho de ter uma maneira de os poder visualizar, pois apenas fórmulas matemáticas sem representação visual não ajudam muito, especialmente na detecção de possíveis
- 2024-01-20 – A mudança de comportamento nos mercados cambiais nos últimos 4 anos, analisada pelo meu Trading Systems Back-Tester em C++, com novas performances…Esta imagem é para vos mostrar como o mercado mudou nos últimos anos, e explicarei também porque deixarei de partilhar performances. Neste caso específico, o mercado cambial, fruto de high frequency trading, scalping, 1001 forex bots a fazer asneira que prometem 1001 riquezas, estratégias idiotas de youtubers que inventam estratégias porque querem ganhar subscritores, etc.
- 2024-01-16 – A testar parâmetros (optimização) nos meus trading systems, num Terminal de Linux em C++…Aqui podem espreitar eu a testar uma variante dos meus trading systems, num único ano de câmbios, para ver qual o parâmetro que daria mais lucro nesse ano, com alavancagem de 25/1: E em gráficos que fiz no terminal, até um dia o fazer melhor, são rascunhos. Agora alavancagem de 25/1, e testar parâmetros, para
- 2024-01-12 – Back-Testers já com um dos meus sistemas reais a calcular lucros entre 2002-2003 no EUR/USD com boas performances e gráficos melhorados, em C++…Fica aqui o que vou fazendo a nível de trading systems, como meu 2º post do ano. Sim, 15.000% de lucro em 2 anos de Euro-Dólar, e se por um lado parece surreal, lembrem-se que por outro… É feito por mim, por isso é normal. 😛 Não é curve-fitted (explicado abaixo). Os gráficos demonstrados são
- 2024-01-01 – Começar bem o Ano Novo voltando aos meus Sistemas de Trading para preparar o meu retorno um dia aos Mercados Financeiros…Para começar bem o ano, mudança de vida e aqui vai a Resolução do Ano Novo: As minhas horas vagas neste ano serão dedicadas 90% aos mercados financeiros, para regressar a eles aos poucos mais tarde. Eu tirei um print básico porque era para tentar dedicar uma horita no primeiro dia do ano a testar
- 2023-03-02 – Regresso gradual ao Mundo da Bolsa…Pessoal do Trading: Após 2 décadas de inactividade, decidi que em 2024, vou voltar! Por isso, neste ano assim que parar o Knowledge Tester, vou dedicar perto de 80% do tempo à preparação para o mundo do Trading, e 20% para o Game Engine. Pois vou usar o meu próprio software de Análise Técnica, os
- 2022-04-11 – Os retoques finais aos gráficos do meu software de Análise Técnica, em C++…Hoje sim, dei os últimos retoques aos gráficos do meu software de Análise Técnica, criado do zero em C++ (vídeo abaixo). Sim, tudo aqui foi criado do zero, píxel a píxel, sem quaisquer librarias de gráficos, as velas foram desenhadas píxel a píxel, as linhas, as médias móveis, as grids, os efeitos de 3D ou
- 2022-04-02 – Concluído o 1º objectivo no desenvolvimento do meu software de Análise Técnica, em C++…Foi dado o passo final no primeiro objectivo de desenvolvimento do meu futuro software gratuito de Análise Técnica com testes à performance de Trading Systems, que era o de ter no ecrã a visualização das posições de cada trade, bem como setas indicadoras, labels com o lucro feito, etc. Feito tudo do zero, píxel a
- 2022-03-29 – Gráficos já com setas indicadoras, em C++…Só para mostrar como vai o software de análise técnica. Não tenho tido tempo para nada, tive de ir uns dias ao Porto e tudo. Hoje dediquei alguns minutos a colocar setinhas melhor no gráfico. Só falta mesmo (talvez se eu quiser, claro), colocar info visível nas setas, dos ganhos actuais. A curva de ganhos
- 2022-03-22 – Efeito “Bourne Identity” no sistema de gráficos, em C++No dia 22, entreti-me numa horita livre, a desenvolver um pouco os gráficos, e fiz uma experiência engraçada, a imitar os créditos finais do filme “Bourne Identity”, em que as linhas percorrem o ecrã, e eu meti esse efeito nos gráficos: Claro que não bate certo em vários, mas depois encaixa nos locais certos, espreitem
- 2022-03-15 – Adição de cores aos gráficos de performance do meu Trading System Software em C/C++…Já avancei com a funcionalidade de demonstração de lucros de um trading system. Neste momento, já são expostas as ordens actuais, a azul as longas, e a vermelho as curtas (short-selling), e através delas, podemos visualizar bem se cada uma teve lucro ou não (lucro será as azuis subirem e as vermelhas caírem, obviamente, conforme
- 2022-03-14 – Indicação das posições de trading systems nos meus gráficos em C/C++…Não mexia nisto há mais de uma semana por falta de tempo! Hoje dei o passo seguinte numa horita extra, que já estava meio feito, que foi colocar as posições actuais de cada ordem do trading system, no mapa! Mas uso um trading system terrível que não dá qualquer lucro (média móvel qualquer), só para
- 2022-03-06 – Melhoria nas labels, no meu software de Análise Técnica, criado em C/C++…Eu aproveitei mais algum tempito livre ontem (ou melhor, hoje ao deitar, normalmente a essa hora), para adicionar legendas a todas as sub-janelas do gráfico, além de melhorar a funcionalidade das sub-janelas. E ainda adicionei a típica funcionalidade de encurtar números, ou seja, de aparecer um “100K” ao invés de “100.000”, ou mesmo “100M” ao
- 2022-03-05 – Gráficos 3D e com efeitos de sombra, em C/C++…Ontem fiz uma pausa nos meus afazeres, e tornei mais bonitos os gráficos de volume e neste caso o da curva de ganhos acima, e criei um sistema de sub-janelas já. Dei-lhes efeitos 3D e também sombreados, e é claro que quem quiser, não terá nem uns nem outros, e poderá ter gráficos com cores
- 2022-03-03 – Gráficos melhorados já com várias janelas e escalas, e indicadores, em C++…Mais umas horitas nisto, e o que foi feito? (Tem vídeo abaixo). 1 – Em primeiro lugar um sistema de divisão de janelas para que possa incluir indicadores vários em janelas separadas dentro do gráfico, como o gráfico de Volume (aleatório) colocado acima e abaixo do gráfico principal. Estas janelas serão usadas depois para inserir
- 2022-03-01 – O software de Análise Técnica, já com Volume e indicadores, em C++…Hoje numas horitas de pausa, avancei mais o software de análise técnica Bolsista, criado do zero em C++, e a ser gratuito. Hoje, acrescentei-lhe o Volume, e uma funcionalidade para misturar escalas de gráficos diferentes num só, e a funcionalidade de adicionar indicadores com escala misturada com o próprio gráfico, como esta média móvel de
- 2022-02-28 – Axis e Labels dos gráficos perfeitas, em C++Hoje com algum tempo livre, melhorei as labels dos gráficos, e a precisão das axis dos gráficos, e pelo que podem ver estão perfeitas, com precisão máxima, e as labels já não se sobrepõem, com dias, meses e anos nas labels, etc. Abaixo podem ver com mais qualidade no vídeo (e com uma pequena música
- 2022-02-22 – Gráficos já com as labels, em C++…Uma melhoria pequena aos meus gráficos, vejam o vídeo abaixo. E tinha de ser com música, devido ao dia especial em que estamos, de 22 de 02 de 2022, ou seja, 22-02-22. 🙂 Hoje, já têm as axis X e Y bem criadas, com as labels 100% certas com precisão total, e ainda com labels.
- 2022-02-21 – Gráficos já com zoom e navegação, em C++…Espreitem a animação acima ou abaixo! Aqui podem ver que num bocadinho que tive livre ontem já adicionei um zoom e navegação aos gráficos, bem como uma escala já correcta, tanto no eixo X como Y. Vejam na animação a simulação de uma navegação pelo histórico, seguida da animação de zoom in e zoom out!
- 2022-02-18 – O início oficial do meu software gratuito estilo Metastock, em C++…Só para informar que iniciei um novo projecto a longo prazo. Um software gratuito estilo Metastock para Análise Técnica de mercados financeiros, e com testes de sistemas de trading, talvez até com linguagem própria estilo a do Metastock ou o MQL do Metatrader, quem sabe. Tenho andado mega-ocupado com a cena da Formação (exames, etc),
- 2022-02-17 – Gráfico já com Velas Japonesas, em C++…Um gráfico de Velas Japonesas, em C++. Peguei no código como o deixei ontem, a meio de correcção de exames, enquanto via a novela da Serra da semana passada, e criei os gráficos de Velas Japonesas, ou seja, transformei os pontinhos em Velas Japonesas, e coloquei alguns ajustes. Não está perfeito, falha em alguns pontos
- 2022-02-15 – O começo de um programa de Análise Técnica de mercados financeiros, em C/C++…Este é o começo de uma nova aplicação de Análise Técnica, é a criação do gráfico em si, em C++. Estive um mês quase sem programar nada, porque estive ocupado na cena de Formação, com 1001 exames e coisas a corrigir e etc, e não tive tempo para mais nada. Mas a formandos de Programação,
- 2021-05-10 – Uma história sobre os primeiros Trading Systems que desenvolvi, muitos anos atrás…Deixo aqui a história de um dos primeiros trading systems que desenvolvi com sucesso, e que tornei público ao redor de 2005, e que é curiosamente aquele cuja fórmula pretendo divulgar assim que o testar, nos próximos 1 a 2 anos: Mais tarde criei outros melhores, mas este na altura deu 19.000% em EUR/USD a
- 2021-02-19 – Adicionando cálculo de lucros ao Trading Systems Back-Tester em C/C++…E assim vai o meu software de backtesting de trading systems (em C/C++), a testar um sistema muito básico e mau, uma simples média móvel, que após 2 anos, ao fim de muitas trades, daria 1% de lucro, mas na realidade, -99% se tivermos em conta as comissões, spreads, uma pequenita alavancagem, etc. Mas estes
- 2021-02-18 – Incluindo um indicador básico para testes ao meu Trading System Back-Tester em C/C++…Hoje aproveitei mais umas horitas, já que o pc está super lento e não dá para muitas coisas, para começar a criar o sistema de ordens para com ele fazer o cálculo posterior dos ganhos e perdas. À direita vêem a imagem de ontem, e hoje podem ver à esquerda que já são mostradas as
- 2021-02-17 – Garantindo que o Back-Tester não olha para o futuro dos dados, em C/C++…Ontem partilhei uma foto de dia 18 e esqueci-me de esta anterior de dia 17, esta é do dia 17, hoje já tenho o motor a calcular performances (mostro amanhã), mas dia 17, tinha feito pouco, ainda ia como podem ver à esquerda, em testes de cálculos de indicadores simples (neste caso uma simples média
- 2021-02-17 – Teste à origem dos dados para os Trading Systems em C/C++…Podem ver à esquerda um teste à origem dos dados quando são calculados os sistema de trading (os gráficos são só para enfeitar). Se o sistema for algo super básico e que nunca daria lucro, como uma média móvel simples, como sabem, a média móvel é calculada com base nos últimos x dias, por exemplo,
- 2021-02-12 – De volta aos Trading Systems por umas semanas (com C/C++)…De volta por umas semanas aos trading systems, o Game Engine ficará de lado uns tempos por motivos explicados abaixo. Após 6 meses sem mexer nos sistemas de trading, está na hora de fazer isto andar mais um pouco, até porque tenho estimados 3.200.000.000.000.000.000 de cálculos a fazer para apresentar relatórios de resultados (sim, terão
- 2020-08-17 – Trading – Gráficos de Cotações em modo de texto para terminais Linux em C++1º passo no projecto dos sistemas de trading dado. Além de criar ferramentas de conversão de históricos de cotações (inclusivé time-frames), criei uma libraria de gráficos em modo de texto, para poder exibir vários tipos de gráficos nos terminais que tanto gosto, em C++, claro. Vou começar pelos gráficos, funcionam até com gráficos numa única
- 2020-08-16 – Três Ferramentas de Conversão de Históricos de Cotações, com reorganizador por Time-Frames, para Linux, em C++Três ferramentas importantes para o projecto dos trading systems foram terminadas. Duas para conversão de históricos de cotações (reordenar, dividir, etc), e hoje o reorganizador por time-frames, se virem acima, o histórico original teria tudo o que é períodos de 1 minuto do câmbio EUR/USD do ano de 2000, e após conversão, foi tudo adaptado
- 2020-08-14 – Trading Systems – Conversor de Histórico de Cotações, com splitter e padrões, para terminais de Linux em C++O primeiro passo para trabalhar com históricos de cotações, é criar ferramentas para converter históricos de cotações. Neste caso criei uma mini-ferramenta, à qual chamei de “splitter”, que como podem ver, nos permite simplesmente ou alterar a ordem de campos num ficheiro, ou alterar mesmo a nível de letra a letra, podem ver os dois
- 2020-08-12 – Trading Systems – Conversões de Históricos de Cotações em Linux com C++O começo dos programas que darão origem à publicação um dia de sistemas de trading. Neste caso, começo pelo mais básico, criar funções/ferramentas, para converter históricos de cotações de todos os tipos, acções, câmbios, etc. Neste caso podem ver que eu associo letras a cada posição de um texto, e depois posso alterar a ordem
- 2020-08-10 – Trading Systems – Regresso ao projecto MMAT – Back-Testing de Sistemas de Trading, em C++Mensagem de 10 de Agosto, quando decidi voltar a este projecto parado há 10 anos: «Pessoal do Trading/Bolsa/Forex/Finanças/Banca, estou de volta a algo que já me têm perguntado quando retomaria. Vou finalmente retomar o projecto MMAT, que visaria tornar público um sistema de trading que criei em 2006, e que dava 19.000% de lucro no
- 2020-07-16 – Testando o SQLite para possíveis usos no futuro programa de testes de Sistemas de Trading em C++Umas experiências com o SQLite, a sondar coisas necessárias no Futuro, no dia 16 de Julho. Explicado na descrição da altura, abaixo: «2020-07-16 – Umas experiências com a BD SQLite, isto porque, um dos projectos que tenho para o Futuro é a criação de um sistema de testes de sistemas de trading (para optimização de