Skip to main content

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

https://pypi.org/project/LJSE/

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

jb3-0.1.4.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jb3-0.1.4-py3-none-any.whl (12.5 kB view details)

Uploaded Python 3

File details

Details for the file jb3-0.1.4.tar.gz.

File metadata

  • Download URL: jb3-0.1.4.tar.gz
  • Upload date:
  • Size: 12.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for jb3-0.1.4.tar.gz
Algorithm Hash digest
SHA256 e8ad8f2efb5de01b802eee3490ce251d2a6c94e3c1819ec73b4cd55faf357c5a
MD5 048c31f5ae7cdbd7f0d72acaecccc45c
BLAKE2b-256 03d3f75a98f573cf5148b86125a7d6825630686094fa69d05e832e855da77de3

See more details on using hashes here.

File details

Details for the file jb3-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: jb3-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 12.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for jb3-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 c8309b913906bf1fb6e8caa19a22d409c7c29c6c21ea110039cdbb3babc90193
MD5 c1352db0d67b0c23244cba7715a85a45
BLAKE2b-256 724d55db63c16f0fe3c119703928b3db3a555a1fe758f348b6c8bd39c5c6e214

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page