Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

erro - metodo depreciado stack - alterar

Detalhes: "ADO.NET: ΡУţнǿń śçгĭφţ ēґѓог.
<pi>C:\Users\USU┴RIO\PythonScriptWrapper_fd513a93-0c6d-4990-9b57-1b9ddfa848b1\PythonScriptWrapper.PY:25: FutureWarning: The previous implementation of stack is deprecated and will be removed in a future version of pandas. See the What's New notes for pandas 2.1.0 for details. Specify future_stack=True to adopt the new implementation and silence this warning.
  cotacoes = df.stack(level=1)
KeyError: "['Ativo'] not in index"
</pi>"

aleterei para cotacoes = df.stack(level=1, future_stack=True)

outro erro aparece

Detalhes: "ADO.NET: ΡУţнǿń śçгĭφţ ēґѓог.
<pi>KeyError: "['Ativo'] not in index"
</pi>"
5 respostas

Oi Lourenço, tudo bem?

Peço que utilize o seguinte código:

# Código completo da obtenção dos dados históricos das cotações da carteira de 01/08/2022 à 01/08/2023
# Importando a biblioteca
import yfinance as yf

# Definindo a carteira de ações
carteira_yf = ['ABEV3.SA', 'B3SA3.SA', 'ELET3.SA', 'GGBR4.SA', 'ITSA4.SA',
               'PETR4.SA', 'RENT3.SA', 'SUZB3.SA', 'VALE3.SA', 'WEGE3.SA']

# Carregando os dados da carteira
df = yf.download(carteira_yf, start="2022-08-01", end="2023-08-01", auto_adjust=False)


# Passando os ativos para o multindex do df
cotacoes = df.stack(level=1)

# Resetando os índices e renomenado a coluna dos ativos
cotacoes = cotacoes.reset_index().rename(columns={'Ticker': 'Ativo'})

# Organizando o df
cotacoes = cotacoes[["Date", "Open", "High", "Low", "Close", "Ativo"]]

del carteira_yf, df

Também recomendo utilizar a versão 3.10 do Python, sem fixar versões específicas das bibliotecas.

Deixo abaixo outro tópico com o passo a passo detalhado:

Você pode seguir os mesmos passos que descrevi na minha última interação.

Espero ter ajudado.

Qualquer dúvida que surgir, compartilhe no fórum. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Detalhes: "ADO.NET: ΡУţнǿń śçгĭφţ ēґѓог.
Traceback (most recent call last):
File "C:\Users\USU┴RIO\PythonScriptWrapper_c72851a4-3275-4ec3-bd64-5176304ce2ab\PythonScriptWrapper.PY", line 2, in
import os, pandas, matplotlib
File "C:\Users\USU┴RIO\bulltrend\bt_dash\lib\site-packages\pandas_init_.py", line 31, in
raise ImportError(
ImportError: Unable to import required dependencies:
numpy: Error importing numpy: you should not try to import numpy from
its source directory; please exit the numpy source tree, and relaunch
your python interpreter from there.
"

instalei python 3.10, refiz os passos e continua com este erro
solução!

Oi, Lourenço!

Obrigado por trazer mais contexto. O erro "Unable to import required dependencies: numpy" indica que o Power BI está tentando rodar o script Python dentro da pasta de instalação do numpy, o que causa conflito. Isso acontece quando o ambiente configurado no Power BI não está corretamente apontando para o diretório do Python.

Peço que faça a seguinte verificação:

1 . Abra o Power BI → OpçõesScript Python e certifique-se de que o diretório raiz do script Python está apontando para a pasta bt_dash\Scripts, como na imagem abaixo:

Descrição da imagem: terminal com o diretório apontando para a pasta bt\_dash

Fico à disposição. Abraços e bons estudos!

Detalhes: "ADO.NET: ΡУţнǿń śçгĭφţ ēґѓог.
Failed to get ticker 'WEGE3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'VALE3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'GGBR4' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'B3SA3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'ABEV3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'ELET3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'PETR4' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'SUZB3' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'ITSA4' reason: Expecting value: line 1 column 1 (char 0)
Failed to get ticker 'RENT3' reason: Expecting value: line 1 column 1 (char 0)

10 Failed downloads:
['WEGE3', 'VALE3', 'GGBR4', 'B3SA3', 'ABEV3', 'ELET3', 'PETR4', 'SUZB3', 'ITSA4', 'RENT3']: Exception('%ticker%: No timezone found, symbol may be delisted')
KeyError: "['Ativo'] not in index"
"

novo erro, após reinstalar tudo

Oi Lourenço!

Para entender melhor o problema que está enfrentando peço que faça a verificação abaixo:

  1. Abra o CMD (Prompt de Comando)

  2. Navegue até a pasta bulltrend com o comando:

    cd bulltrend

  3. Ative o ambiente virtual com:

    bt_dash\Scripts\activate

  4. Com o ambiente ativado, execute este comando:

    python --version & pip show pandas numpy matplotlib seaborn fundamentus yfinance | findstr "Name Version"


Me retorne com:

  1. Print do Power BI da localização do diretório da raiz do Python (como no meu print)
  2. Print da saída completa do último comando acima ( python --version $ pip show ...).
  3. O código que está utilizando no Power BI.

Fico no aguardo das informações acima!