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 são para ver se o back-testing funciona bem.

À direita podemos ver em cima os testes iniciais para verificar se os x períodos passados da SMA coincidiam, pois se neste caso a SMA tivesse em conta as cotações da própria vela em que executa a ordem, seria um sistema viciado, pois veria o Futuro, o que é mau (seria batota).

Abaixo à direita já o cálculo correcto da rasca SMA a 20 dias (um período bom para testes) e a meio acima já a mostrar o indicador actual e o anterior, para ver se tudo corre bem.

Os gráficos do meio são só para mostrar os gráficos que vou usar, são meramente indicativos.

E à esquerda, é como está hoje, e já podem ver o mesmo a abrir posições Long ou Short, e calculando os lucros de cada trade e os finais. O bom serão os sistemas em si, mais tarde virão, esta aplicação é meramente para os testar.

E relembro que os meus sistemas sempre foram testados nas piores condições possíveis, ou seja, nunca out of market, sem stop losses, e com margin calls, comissões, spreads, etc.

Tendo depois este sistema de testes acabado, poderei realizar quadriliões de testes e relatórios de performances enquanto durmo, no dia-a-dia, para depois exibir resultados.

Talvez crie do zero também em C++ um sistema de visualização de gráficos real (que grave imagens reais e bem feitas em PNG com boa qualidade), pois vou ter de ter uma forma de mostrar gráficos e indicadores, pois os gráficos de texto são muito giros mas não dão para colocar muito detalhe, e como seria fácil para mim criar isso (apesar de levar o seu tempo), que até parece mal dizer, mas é a verdade, eu farei.

Cya later. 🙂

2021-02-19.

Leave a Reply

Your email address will not be published. Required fields are marked *

RSS
Follow by Email
LinkedIn
LinkedIn
Share