yougandar commited on
Commit
f7ecac2
Β·
verified Β·
1 Parent(s): 812b49a

Update polygon_loader.py

Browse files
Files changed (1) hide show
  1. polygon_loader.py +10 -11
polygon_loader.py CHANGED
@@ -2,18 +2,19 @@ import requests
2
  import pandas as pd
3
  from datetime import datetime, timedelta
4
 
5
- API_KEY = "HviulInrP_JHBbZQdm7EZdppph2iTwBJ"
6
 
7
- def fetch_ohlcv(symbol="AAPL", interval="minute", limit=100):
8
- end_time = datetime.utcnow()
9
- start_time = end_time - timedelta(minutes=limit)
 
10
 
11
- url = f"https://api.polygon.io/v2/aggs/ticker/{symbol}/range/1/minute/{start_time.date()}/{end_time.date()}"
12
 
13
  params = {
14
  "adjusted": "true",
15
  "sort": "asc",
16
- "limit": limit,
17
  "apiKey": API_KEY,
18
  }
19
 
@@ -22,16 +23,14 @@ def fetch_ohlcv(symbol="AAPL", interval="minute", limit=100):
22
  res.raise_for_status()
23
  data = res.json()
24
 
25
- if "results" not in data:
26
  return None
27
 
28
  df = pd.DataFrame(data["results"])
29
  df["t"] = pd.to_datetime(df["t"], unit="ms")
30
  df.set_index("t", inplace=True)
31
  df.rename(columns={"o": "Open", "h": "High", "l": "Low", "c": "Close", "v": "Volume"}, inplace=True)
32
- df = df[["Open", "High", "Low", "Close", "Volume"]]
33
-
34
- return df
35
  except Exception as e:
36
- print("Polygon error:", e)
37
  return None
 
2
  import pandas as pd
3
  from datetime import datetime, timedelta
4
 
5
+ API_KEY = "HviulInrP_JHBbZQdm7EZdppph2iTwBJ" # ← Replace this
6
 
7
+ def fetch_ohlcv(symbol="AAPL"):
8
+ # Use a fixed recent date that is guaranteed to have data
9
+ start = (datetime.utcnow() - timedelta(days=2)).strftime('%Y-%m-%d')
10
+ end = (datetime.utcnow() - timedelta(days=1)).strftime('%Y-%m-%d')
11
 
12
+ url = f"https://api.polygon.io/v2/aggs/ticker/{symbol}/range/1/minute/{start}/{end}"
13
 
14
  params = {
15
  "adjusted": "true",
16
  "sort": "asc",
17
+ "limit": 500,
18
  "apiKey": API_KEY,
19
  }
20
 
 
23
  res.raise_for_status()
24
  data = res.json()
25
 
26
+ if "results" not in data or not data["results"]:
27
  return None
28
 
29
  df = pd.DataFrame(data["results"])
30
  df["t"] = pd.to_datetime(df["t"], unit="ms")
31
  df.set_index("t", inplace=True)
32
  df.rename(columns={"o": "Open", "h": "High", "l": "Low", "c": "Close", "v": "Volume"}, inplace=True)
33
+ return df[["Open", "High", "Low", "Close", "Volume"]]
 
 
34
  except Exception as e:
35
+ print("Polygon API error:", e)
36
  return None