Winning Investments é um Sistema em Python que aplica as estratégias e técnicas empregadas pelos mais renomados investidores do mundo aqui no mercado de ações brasileiro, visando um rigoroso processo de análise fundamentalista comparativa. 🥋
Ao eleger uma estratégia, o sistema desencadeia um processo de ranqueamento, revelando as jóias do mercado até as oportunidades menos promissoras, sempre alinhado com a estratégia selecionada do investidor desejado.
Os dados essenciais são minuciosamente capturados através de diversas APIs disponíveis gratuitamente na vasta rede da internet.
Neste momento, é possível aplicar as estratégias dos seguintes mestres da arte financeira:
- Benjamin Graham
- Joel Greenblatt
- Décio Bazin
- Joseph D. Piotroski
- Kenneth Fisher
Além de outras estratégias bastante interessantes, como encontrar as Dividend Aristocrats aqui no Mercado Brasileiro, que era uma estratégia adotada somente no Mercado de Ações Americano.
É importante ressaltar que também foi empreendida uma extensa busca na literatura especializada, com o propósito de identificar e incorporar as estratégias de investimento mais promissoras e eficazes. Este projeto, de minha autoria, promete desvendar jóias do mercado brasileiro e auxiliar na tomada de decisões estratégicas do investidor, já que agora suas decisões terão o alicerce nas decisões dos maiores investidores do mundo 🙌
- Python 3
- Libs (
pip3 install them
)- pandas
- lxml
- yfinance
- pyfolio
- click
- tabulate
- matplotlib
- pyperclip
Basta rodar um destes comandos, dependendo da estratégia que deseja-se aplicar.
Ao final de cada comando, é mostrado no terminal a tabela resultante e salvo no Ctrl+C. Para melhor visualizar o resultado, basta colar via Ctrl+V em algum editor de Markdown, como o site https://dillinger.io/
python3 graham.py
python3 greenblatt.py # Aplica tanto ROE e P/L quanto ROIC e EV/EBIT
python3 greenblatt.py "{ 'formula': 'ROE' }" # Aplica ROE e P/L
python3 greenblatt.py "{ 'formula': 'ROIC' }" # Aplica ROIC e EV/EBIT
python3 bazin.py
python3 piotroski.py
python3 fisher.py
- Arquivo:
graham.py
Aplica-se ensinamentos de Benjamin Graham em todas as ações do mercado de ações brasileiro, que é o Mercado de Ações brasileiro, produzindo um ranking com base na análise fundamentalista dos dados de todas as empresas.
Para a análise, são utilizados ensinamentos do livro "O Investidor Inteligente" de Benjamin Graham.
Também é calculado o Valor Intrínseco (Preço Justo) definido por Benjamin Graham para cada ação.
Benjamin Graham foi o mentor dos melhores investidores do mundo, como o grandíssimo Warren Buffet, além do Irving Kahn e Walter Schloss.
No algoritmo, cada ação recebe uma nota que vai de 0 a 14, considerando se ela se adequou a cada uma dessas características abaixo estipuladas por Benjamin Graham.
- 1. Sobrevivência: Sobreviveu nos últimos 10 anos. https://www.estrategista.net/o-fracasso-de-benjamin-graham-na-bolsa-atual/
- 2. Estabilidade ds Lucros: Lucro > 0 nos últimos 10 anos. https://www.estrategista.net/o-fracasso-de-benjamin-graham-na-bolsa-atual/
- 3. Crescimento dos Lucros: Lucros crescentes nos últimos 10 anos https://www.estrategista.net/o-fracasso-de-benjamin-graham-na-bolsa-atual/
- 4. Crescimento dos Lucro Por Ação: LPA atual > 1.33 * LPA 10 anos atrás. (Calculado através da média dos 3 anos do começo e dos 3 anos do fim deste período) http://seuguiadeinvestimentos.com.br/a-tecnica-de-investimento-de-benjamin-graham-ii/
- 5. Estabilidade dos Dividendos: Dividendos pagos nos últimos 10 anos. http://seuguiadeinvestimentos.com.br/a-tecnica-de-investimento-de-benjamin-graham-ii/
- 6. Preço Justo > 1.5 * Preço de Mercado. Neste caso, Preço Justo é a raíz_quadrada_de(22.5 * VPA * LPA) (Criado por Benjamin Graham) https://www.sunoresearch.com.br/artigos/valor-intrinseco/?utm_source=PR&utm_medium=artigo&utm_campaign=investing_05122019
- 7. P/L (Preço/Lucro) => Quanto menor, melhor (ideal, < 15 E >= 0) http://seuguiadeinvestimentos.com.br/a-tecnica-de-investimento-de-benjamin-graham-ii/
- 8. P/VP (Preço/Valor Patrimonial) => Quanto menor, melhor (ideal, < 1.5 E >= 0) http://seuguiadeinvestimentos.com.br/a-tecnica-de-investimento-de-benjamin-graham-ii/
- 9. Crescimento em 5 anos => Quanto maior, melhor (ideal, > 5%) https://daxinvestimentos.com/analise-fundamentalista-mais-de-200-de-rentabilidade-em-2-anos/
- 10. ROE (Return On Equity) => Quanto maior, melhor (ideal, superior a 20%) https://daxinvestimentos.com/analise-fundamentalista-mais-de-200-de-rentabilidade-em-2-anos/
- 11. Dividend Yield (Rendimento de Dividendo) => Quanto maior, melhor (ideal, > Taxa Selic (4.5%)) https://foconomilhao.com/acoes-com-dividend-yield-maior-que-a-selic/
- 12. Liquidez Corrente => Quanto maior, melhor (ideal > 1.5) https://daxinvestimentos.com/analise-fundamentalista-mais-de-200-de-rentabilidade-em-2-anos/
- 13. Dívida Bruta/Patrimônio => Quanto menor, melhor (ideal < 50%) https://daxinvestimentos.com/analise-fundamentalista-mais-de-200-de-rentabilidade-em-2-anos/
- 14. Patrimônio Líquido => Quanto maior, melhor (ideal > 2000000000)
- https://www.amazon.com/Intelligent-Investor-Definitive-Investing-Essentials/dp/0060555661
- https://www.bluechipinvest.com.br/educacional-det/benjamin-graham/7
- Arquivo:
greenblatt.py
Aplica-se ensinamentos de Joel Greenblatt em todas as ações do mercado de ações brasileiro, depois rankeia das ações que mais se adequaram para as que menos se adequaram.
Para a análise, são utilizados ensinamentos do livro "The little book that beats the Market" de Joel Greenblatt
Em sua fórmula mágica, Greenblatt utiliza os seguintes indicadores: ROE (indicador de Qualidade) e o P/L (indicador de Preço). Através desses 2 indicadores ele monta dois rankings, um com as empresas de maior ROE (mais rentáveis) e outro com as ações de menor P/L (maior custo-benefício). Feito os 2 rankings, é somado a posição de cada ação nos rankings. As empresas de menor soma são aquelas escolhidas para montar a carteira pois seriam as ações mais baratas e mais rentáveis ao mesmo tempo.
Uma outra abordagem dessa fórmula é utilizar os indicadores: ROIC (indicador de Qualidade) EV/EBIT (indicador de Preço). É seguido então a mesma estratégia de usar ROE+P/L, mas substituindo ROE por ROIC e P/L por EV/EBIT.
- 1. maior ROE e menor P/L
- 2. maior ROIC e menor EV/EBIT
- https://www.amazon.com/Little-Book-That-Beats-Market/dp/0471733067
- https://comoinvestir.thecap.com.br/joel-greenblatt-estrategia-investimentos/
- http://bibliotecadigital.fgv.br/dspace/bitstream/handle/10438/15280/Tese%20-%20Leonardo%20Milane%20-%20Magic%20Formula.pdf?sequence=1
- http://bibliotecadigital.fgv.br/dspace/bitstream/handle/10438/12099/Disserta%C3%A7%C3%A3o_RodolfoZeidler_MPFE_27.09.2014.pdf?sequence=1&isAllowed=y
- http://dspace.insper.edu.br/xmlui/bitstream/handle/11224/2244/Rafael%20Domingues%20dos%20Santos_Trabalho.pdf?sequence=1
- Arquivo:
bazin.py
Aplica-se ensinamentos de Décio Bazin em todas as ações do mercado de ações brasileiro, depois rankeia das ações que mais se adequaram para as que menos se adequaram.
Para a análise, são utilizados ensinamentos do livro "Faça Fortuna Com Ações" de Décio Bazin, que é tido como literatura indicada até mesmo por Luis Barsi, o maior investidor na bolsa brasileira de todos os tempos.
Também é calculado o Valor Intrínseco (Preço Justo) definido por Décio Bazin para cada ação.
No algoritmo, cada ação recebe uma nota que vai de 0 a 8, considerando se ela se adequou a cada uma dessas características abaixo estipuladas por Décio Bazin.
- 1. Preço Justo (Bazin) > 1.5 * Preço. Preço Justo (Bazin) é o Dividend Yield Médio * 16.67 (Por: Décio Bazin)
- 2. Dívida Bruta/Patrimônio < 0.5 (50%)
- 3. Dividend Yield > 0.06 (6%)
- 4. Média do Dividend Yield nos últimos 5 anos > 0.05 (5%)
- 5. Mediana do Dividend Yield nos últimos 5 anos > 0.05 (5%)
- 6. Pagamento constante de dividendos nos últimos 5 anos
- 7. Pagamento crescente de dividendos nos últimos 5 anos
- 8. 0 < Payout < 1
- https://www.amazon.com/Faca-Fortuna-com-Acoes-Antes/dp/8585454164
- https://www.sunoresearch.com.br/artigos/entenda-estrategia-de-decio-bazin/
- https://clubedovalor.com.br/blog/decio-bazin/
- https://medium.com/@lucastrcalixto/o-m%C3%A9todo-bazin-e-o-progresso-da-bolsa-ccd7ec7a144b
- Se alguém achar algum artigo de backtest, eu agradeço. No mais, essa estratégia se mostrou uma estratégia extremamente eficiente através dos backtests que eu fiz neste programa.
- Arquivo:
piotroski.py
Aplica-se ensinamentos de Joseph D. Piotroski em todas as ações do mercado de ações brasileiro, depois rankeia das ações que mais se adequaram para as que menos se adequaram.
Para a análise, são utilizados ensinamentos do paper "Value Investing: The Use of Historical Financial Statement Information to Separate Winners from Losers" de Joseph D. Piotroski.
No algoritmo, cada ação recebe uma nota que vai de 0 a 9, considerando se ela se adequou a cada uma dessas características abaixo estipuladas por Piotroski.
- 1. ROA > 0 (Returno sobre o Ativo) https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 2. FCO > 0 (Fluxo de Caixa Operacional) https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 3. FCO > Lucro Líquido https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 4. ROA atual > ROA ano anterior https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 5. Alavancagem atual < Alavancagem ano anterior. Medida por: Dívida Líquida / Patrimônio Líquido https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 6. Liquidez Corrente atual > Liquidez Corrente ano anterior https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 7. Nro. Ações atual = Nro. Ações ano anterior https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 8. Margem Bruta atual > Margem Bruta ano anterior https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- 9. Giro Ativo atual > Giro Ativo ano anterior https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- https://www.ivey.uwo.ca/cmsmedia/3775523/value_investing_the_use_of_historical_financial_statement_information.pdf
- https://medium.com/@gutenbergn/piotroski-d9a722b8ef9a
- https://www.equitieslab.com/piotroski-f-score-faq/
- https://areademembros.dicadehoje7.com/wp-content/uploads/2019/09/F-Score-de-Piotroski-1.pdf
- http://dspace.insper.edu.br/xmlui/bitstream/handle/11224/1724/Felippe%20Naccarato%20Baldo_Trabalho.pdf?sequence=1
- https://www.quant-investing.com/blogs/backtests/2018/11/06/piotroski-f-score-back-test
- Arquivo:
fisher.py
Aplica-se ensinamentos de Kenneth Fisher em todas as ações do mercado de ações brasileiro, depois rankeia das ações que mais se adequaram para as que menos se adequaram.
Kenneth Fisher é o filho de Philip Fisher, têm uma fortuna atual de 4 bilhões de dólares e é dono de um fundo de investimento (Fisher Investments). Com base nas suas ações públicas, estimate-se que o desempenho de Ken Fisher tenha superado o mercado de ações dos EUA em uma média de 4,2 potos percentuais por ano.
No algoritmo, cada ação recebe uma nota que vai de 0 a 4, considerando se ela se adequou a cada uma dessas características abaixo estipuladas por Kenneth Fisher.
- 1. PSR < 3 https://www.fundamentus.com.br/pagina_do_ser/kenneth_Fisher.htm
- 2. PSR < 1 https://www.fundamentus.com.br/pagina_do_ser/kenneth_Fisher.htm
- 3. PSR < 0.75 https://www.fundamentus.com.br/pagina_do_ser/kenneth_Fisher.htm
- 4. Taxa de Rentabilidade alta: L/P > Selic http://investidoremvalor.com/filosofia-ken-fisher/
- https://comoinvestir.thecap.com.br/quem-e-kenneth-fisher-o-jeito-ken-investir/
- http://investidoremvalor.com/filosofia-ken-fisher/
- Se alguém achar algum artigo de backtest, eu agradeço.
- Arquivo:
score.py
Para compor esse Score, é aplicado um mix de estratégias.
Além dos pontos defendidos por Benjamin Graham (Veja os 14 pontos da seção de Benjamin Graham), é também avaliado o ROIC, Margem Líquida, Endividamento, PSR, EV/EBITDA e Peg Ratio. Aplicando, assim, ensinamentos também de Kenneth Fisher por exemplo e de outros grandes investidores.
No algoritmo, cada ação recebe uma nota que vai de 0 a 21, avaliando se cada uma se adequou às características mostradas por Benjamin Graham. Também é avaliado 7 características adicionais, mostradas abaixo...
- 1. ROIC (Return on Invested Capital) => Quanto maior, melhor (ideal, > 10%) https://www.sunoresearch.com.br/artigos/o-investidor-inteligente-entenda-a-obra-de-benjamin-graham/
- 2. PSR (Price Sales Ratio) => Quanto menor, melhor (ideal, < 0.75) https://www.moneyshow.com/articles/tptp072513-46306/
- 3. Margem Líquida => Quanto maior melhor (ideal, > 10%) https://www.youtube.com/watch?v=7tB_ym4Cabc E https://www.sunoresearch.com.br/artigos/5-indicadores-para-avaliar-solidez-de-uma-empresa/
- 4. Dívida Líquida/EBIT => Quanto menor melhor (ideal, <= 3) https://www.sunoresearch.com.br/artigos/5-indicadores-para-avaliar-solidez-de-uma-empresa/
- 5. Dívida Líquida/Patrimônio => Quanto menor, melhor (ideal < 50%) https://www.sunoresearch.com.br/artigos/5-indicadores-para-avaliar-solidez-de-uma-empresa/
- 6. EV/EBITDA (Enterprise Value / EBITDA) => Quanto menor melhor (ideal, < 10) https://www.investopedia.com/ask/answers/072715/what-considered-healthy-evebitda.asp
- 7. Peg Ratio (P/L / CAGRLucros5Anos) => Quanto menor melhor (ideal <= 1) https://bugg.com.br/2018/01/24/buggpedia-o-que-e-o-peg-ratio/
*This repository is maintained and developed by Victor Cordeiro Costa. For inquiries, partnerships, or support, don't hesitate to get in touch.