ARTURART commited on
Commit
4a7ecb4
·
verified ·
1 Parent(s): 9b49a8b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -4
app.py CHANGED
@@ -3,8 +3,17 @@ import pandas as pd
3
  import matplotlib.pyplot as plt
4
  from prophet import Prophet
5
  import gradio as gr
 
6
 
7
  def previsao_precos(ticker, start_date, end_date, future_date):
 
 
 
 
 
 
 
 
8
  # Obter dados históricos
9
  data = yf.download(ticker, start=start_date, end=end_date)
10
  data.reset_index(inplace=True)
@@ -19,7 +28,7 @@ def previsao_precos(ticker, start_date, end_date, future_date):
19
  model.fit(data)
20
 
21
  # Fazer previsões
22
- future = model.make_future_dataframe(periods=(pd.to_datetime(future_date) - data['ds'].max()).days, freq='B')
23
  forecast = model.predict(future)
24
 
25
  # Criar gráfico
@@ -44,9 +53,9 @@ iface = gr.Interface(
44
  fn=previsao_precos,
45
  inputs=[
46
  gr.Textbox(label="Ticker da Ação", value="GOOG"),
47
- gr.Date(label="Data de Início", value="2019-10-19"),
48
- gr.Date(label="Data de Fim", value="2024-10-19"),
49
- gr.Date(label="Data Futura para Previsão", value="2029-10-19")
50
  ],
51
  outputs=[
52
  gr.Textbox(label="Tabela de Previsões"),
 
3
  import matplotlib.pyplot as plt
4
  from prophet import Prophet
5
  import gradio as gr
6
+ from datetime import datetime
7
 
8
  def previsao_precos(ticker, start_date, end_date, future_date):
9
+ # Converter as datas de string para datetime
10
+ try:
11
+ start_date = pd.to_datetime(start_date)
12
+ end_date = pd.to_datetime(end_date)
13
+ future_date = pd.to_datetime(future_date)
14
+ except ValueError:
15
+ return "Erro: Verifique o formato das datas. Use YYYY-MM-DD.", None
16
+
17
  # Obter dados históricos
18
  data = yf.download(ticker, start=start_date, end=end_date)
19
  data.reset_index(inplace=True)
 
28
  model.fit(data)
29
 
30
  # Fazer previsões
31
+ future = model.make_future_dataframe(periods=(future_date - data['ds'].max()).days, freq='B')
32
  forecast = model.predict(future)
33
 
34
  # Criar gráfico
 
53
  fn=previsao_precos,
54
  inputs=[
55
  gr.Textbox(label="Ticker da Ação", value="GOOG"),
56
+ gr.Textbox(label="Data de Início (YYYY-MM-DD)", value="2019-10-19"),
57
+ gr.Textbox(label="Data de Fim (YYYY-MM-DD)", value="2024-10-19"),
58
+ gr.Textbox(label="Data Futura para Previsão (YYYY-MM-DD)", value="2029-10-19")
59
  ],
60
  outputs=[
61
  gr.Textbox(label="Tabela de Previsões"),