Nesse curso foram abordadas características das negociações de ativos buscando suporte em algoritmos de machine learning com python. Nesse repositório estão minhas anotações sobre as aulas e scripts desenvolvidos. Abaixo segue uma breve descrição dos módulos do curso.
No módulo mais básico, o conteúdo exposto foi a aquisição de dados financeiros por meio do Yahooo Finance e, além disso, tópicos básicos como o cálculo de retorno e volatilidade foram trabalhados, assim como o índice Sharpe.
Breve introdução a análise técnica foi feita, abordando a interpretação e construção do gráfico de candlesticks por meio do python, padrões básicos de análise gráfica e indicadores técnicos. Ainda sobre os indicadores, os que receberam maior destaque foram:
- Médias móveis;
- Bandas de Bollinger;
- Níveis de suporte e resistência;
- RSI.
Além da parte teórica, nesse módulo também tive a oportunidade de criar o meu primeiro algoritmo de negociação que foi baseado nas médias móveis de 5 e 20 dias, com os algoritmos conhecidos como Golden/Death Cross.
Nesta seção a análise do algoritmo foi trabalhada.
Itens como a criação dos sinais de decisão (compra, venda ou espera) foram desenvolvidas, tal como a compreensão da importância e aplicação dos conceitos de take profit e stop loss.
Por ultimo, o módulo encerra com o desenvolvimento de um algoritmo para realizar o backtesting dos scripts de negociação baseando-se no investimento hipotético de um valor x, sujeito às condições de variação do preço com determinado take profit e stop loss. Para mais, a comparação entre o desempenho do algoritmo com diferentes ativos também foi realizada.
Em um primeiro momento, a definição de Machine Learning (ML) foi apresentada, no qual foi feita a distinção entre os aprendizados supervisionados e não supervisionados, sempre os relacionando com sua aplicação dentro do mundo de finanças e também sua aplicação:
-
Supervisionado
- Classificação: decisão sobre compra ou venda;
- Regressão: previsão de preços;
-
Não supervisionado
- Clustering: análise de características de grupos e setores;
- Redução: identificação das variáveis mais relevantes na avaliação de algum ativo.
Apesar dessa breve introdução, o módulo focou principalmente nos algoritmos de classificação e os principais testados foram:
- SVM - Support Vector Machine;
- Árvore de Decisão: Básica;
- Árvore de Decisão: Random Forest
- Redes Neurais: Modelo MLPC de 64 e 32 camadas.
Além disso, outros indicadores foram apresentados, como o ATR - Average True Range e Williams Range, assim como a "normalização" das médias móveis (processo necessário para tratar os dados antes de inputa-los em um algoritmo de ML.
Ainda sobre esse módulo, foram apresentadas e desenvolvidas métricas para a avaliação dos algoritmos de ML, como a medida de acurácia, matriz de confusão, curva ROC e AUC - Area Under Curve.
Por último, o backtest desenvolvido no módulo anterior foi utilizado para validar a eficácia os modelos de ML e próximos passos para continuar os estudos sobre a aplicação de ML no campo de finanças foram apresentados, como otimização dos parâmetros, alimentação dos dados por meio da avaliação conjunta de ativos.
Certificado: https://www.coursera.org/account/accomplishments/certificate/ETH7XYEXN2J5