JB3 package – unified access to LJSE, FRED and NASDAQ financial data
Project description
JB3
JB3 is a Python package providing unified access to LJSE, NASDAQ, and FRED (Federal Reserve Economic Data). It enables unified downloading, cleaning, transforming, and pivoting of financial and macroeconomic time-series data for analysis, trading strategies, or machine-learning pipelines.
Features
NASDAQ & LJSE Stock Market Data
- Download historical NASDAQ and LJSE stock data
- Clean and normalize numeric columns (open, high, low, close, volume)
- Pivot data by ticker for analysis-ready DataFrames
- Screener with flexible filtering:
- Exchange
- Market cap
- Analyst rating
- Sector
- Region
- Country
FRED Macroeconomic Data
- Search FRED series by keyword (e.g., GDP, CPI, M2, UNRATE)
- Download multiple macroeconomic series at once
- Automatic detection of the lowest valid FRED frequency (Daily → Weekly → Monthly → Quarterly → Annual)
- Optional server-side unit transformations:
- pch = percent change
- pc1 = percent change from year ago (YoY)
- chg = change from previous period
- log = natural log
- Clean, aligned DataFrames with datetime index
- Built-in retry logic for stable API access
Installation
pip install jb3
Usage Examples
1. Download NASDAQ Historical Data
from jb3 import nasdaq
df = nasdaq.download_ticker_data("AAPL", clean=True, pivot_col="close") print(df.head())
2. NASDAQ Screener Example
from jb3 import nasdaq
screener = nasdaq.get_nasdaq_screener( exchange="NASDAQ", marketcap="Large", sector="Technology", limit=50 )
print(screener.head())
3. FRED Example — GDP & CPI (auto frequency detection)
from jb3 import fred
df = fred.get_fred_series( ["GDP", "CPIAUCSL"], api_key="YOUR_FRED_API_KEY" ) print(df.tail())
4. FRED Example — YoY Inflation (pc1 transformation)
df = fred.get_fred_series( "CPIAUCSL", api_key="YOUR_FRED_API_KEY", units="pc1" ) print(df.head())
5. Search FRED Tickers (GDP-related)
tickers = fred.get_fred_tickers("GDP", api_key="YOUR_FRED_API_KEY") print(tickers[["id", "title", "frequency"]].head())
LJSE Documentation
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file jb3-0.1.3.tar.gz.
File metadata
- Download URL: jb3-0.1.3.tar.gz
- Upload date:
- Size: 7.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df5ccf6a1d4bd179fd866d630a3b9d8dafef5fa88d65311f0486a134664f96c9
|
|
| MD5 |
f567da821bc39588e0a24e4add976b07
|
|
| BLAKE2b-256 |
811d23dad618d537711c3299d5f326c3f800ff2caec5c55634c423b365ec12fb
|
File details
Details for the file jb3-0.1.3-py3-none-any.whl.
File metadata
- Download URL: jb3-0.1.3-py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a406560f6cb205ee15175691a61e33dc850244767d5389c2b850da1dfb8fba8f
|
|
| MD5 |
f6123e9ed46891c6b1c3dfaa5c6037ac
|
|
| BLAKE2b-256 |
fca952b0c523a2b9fd79a20dba40eff49761af1ccff7542a4c171326fa66b779
|