def test_print_csv(capfd, get_df): # GIVEN calling 'print_csv()' # THEN output must be a csv with many lines fundamentus.print_csv(get_df) out, err = capfd.readouterr() msg = out.split('\n') typ = type(msg) # output csv assert len(msg) > 5
# import set_path_fundamentus from fundamentus import get_papel from fundamentus import print_csv if __name__ == '__main__': my_list = ['VALE3', 'WEGE3', 'ABEV3', 'ITSA4', 'PETR4', 'SAPR11'] my_cols = [ 'Cotacao', 'Data_ult_cot', 'Ult_balanco_processado', 'Valor_da_firma', 'Nro_Acoes', 'Ativo', 'Disponibilidades', 'Ativo_Circulante', 'Div_Bruta', 'Div_Liquida', 'Patrim_Liq', 'Receita_Liquida_3m', 'EBIT_3m', 'Lucro_Liquido_3m', ] df1 = get_papel(my_list) df2 = df1[my_cols] print_csv(df2)
#!/usr/bin/env python3 # # # import set_path_fundamentus from fundamentus import get_resultado from fundamentus import print_csv if __name__ == '__main__': data = get_resultado() # Reorder by ticker data = data.sort_index(ascending=True) # filter on DataFrame data = data[data.pl > 0] data = data[data.pl < 100] data = data[data.roe > 0] data = data[data.roic > 0] print_csv(data[['cotacao', 'pl', 'dy', 'roic', 'roe']])
#!/usr/bin/env python3 # # # import set_path_fundamentus from fundamentus import get_resultado from fundamentus import print_csv if __name__ == '__main__': data = get_resultado() # Reorder by ticker data = data.sort_index(ascending=True) # filter on DataFrame data = data[data.pl > 0] data = data[data.pl < 100] data = data[data.roe > 0] data = data[data.roic > 0] print_csv(data)
#!/usr/bin/env python3 # # import set_path_fundamentus from fundamentus import get_resultado from fundamentus import print_csv from fundamentus import print_table if __name__ == '__main__': data = get_resultado() # Top 10: data.sort_values(by='dy', inplace=True, ascending=False) top_10 = data[:10] print_csv(top_10)
# filters data2 = data data2 = data2[data2.pl > 0] data2 = data2[data2.pl < 30] data2 = data2[data2.roic > 0] data2 = data2[data2.roe > 0] data2 = data2[data2.evebit > 0] data2 = data2[data2.evebitda > 0] data2 = data2[data2.divbpatr < 3] data2 = data2[data2.liq2m > 0] data2 = data2[data2.c5y > 0] data2 = data2[data2.pacl > 0] # my_columns = data.columns # my_columns = ['cotacao', 'pl', 'pvp', 'psr', 'dy', 'pa', 'pcg', 'pebit', 'pacl', # 'evebit', 'evebitda', 'mrgebit', 'mrgliq', 'roic', 'roe', # 'liqc', 'liq2m', 'patrliq', 'divbpatr', 'c5y'] my_columns = [ 'pl', 'pvp', 'psr', 'dy', 'pa', 'pcg', 'pebit', 'pacl', 'evebit', 'evebitda', 'mrgebit', 'mrgliq', 'roic', 'roe', 'liqc', 'divbpatr', 'c5y' ] df1 = data2[my_columns] # filter: list of finance companies: remove df2 = filter_out(df1) # Magic Formula: create rankings magic = ranking(df2) print_csv(magic)
#!/usr/bin/env python3 # from fundamentus import get_fundamentus from fundamentus import print_csv if __name__ == '__main__': # Parametros usados em 'Busca avancada por empresa' params = { 'pl_min': '0', 'pl_max': '90', 'roic_min': '0', 'roic_max': '', 'roe_min': '0', 'roe_max': '', } data = get_fundamentus(params) # Reorder by ticker print_csv(data.sort_values(by='Papel'))
from fundamentus import print_csv from fundamentus import list_papel_setor if __name__ == '__main__': data = get_resultado() # Filter by 'row' # transpose 1: filter by row # transpose 2: print by column setor = list_papel_setor(35) data2 = data.T[setor] data2 = data2.T print_csv(data2.sort_index()) ## Setores: ## 42 : Agropecuária ## 33 : Água e Saneamento ## 15 : Alimentos ## 16 : Bebidas ## 27 : Comércio ## 12 : Comércio ## 20 : Comércio e Distribuição ## 28 : Computadores e Equipamentos ## 13 : Construção e Engenharia ## 26 : Diversos ## 6 : Embalagens ## 32 : Energia Elétrica ## 9 : Equipamentos Elétricos