O objetivo deste trabalho é montar uma carteira de investimentos utilizando diferentes algoritmos. Três algoritmos de seleção de ativo foram desenvolvidos e podem ser verificados na classe {Asset}.
- Ruby 2.7.4
A documentação do projeto pode ser acessada de duas formas:
-
Servindo a documentação presente em
/doc
- Servido com Ruby:
ruby -run -e httpd . -p 8000
- Pode-se utilizar extensões do VsCode conhecidas como Live Server
- Existem diversas outras formas de servir os arquivos
-
Gerando e Servindo a documentação com a gema Yard
- Com a gema devidamente instalada, execute:
yard server -r -p 8808
- Com a gema devidamente instalada, execute:
O projeto foi desenvolvido com base no Padrão MVC, com a inclusão de uma classe {Router} para melhor organização.
Para utilizar o projeto basta executar entrypoint.rb
, fornecendo o arquivo CSV contendo os dados como parâmetro. Ex:
ruby entrypoint.rb /home/joao/code/PUC/asset_porfolio/data/data.csv
Caso um arquivo CSV não seja fornecido, o projeto utilizará o arquivo data.csv
presente na pasta data
. Como é fácil perceber, os usuários deste projeto também podem, convenientemente ,adicionar o arquivo na basta data
ao invés de passá-lo como parâmetro. No entanto, caso escolha por colocar o arquivo na pasta, é necessário que o nome seja data.csv
, ou alterar o arquivo entrypoint.rb
com o nome desejado.
Com o projeto iniciado, basta selecionar a opção desejada no menu da aplicação.