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.3.tar.gz (7.3 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.3-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

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

Hashes for jb3-0.1.3.tar.gz
Algorithm Hash digest
SHA256 df5ccf6a1d4bd179fd866d630a3b9d8dafef5fa88d65311f0486a134664f96c9
MD5 f567da821bc39588e0a24e4add976b07
BLAKE2b-256 811d23dad618d537711c3299d5f326c3f800ff2caec5c55634c423b365ec12fb

See more details on using hashes here.

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

Hashes for jb3-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a406560f6cb205ee15175691a61e33dc850244767d5389c2b850da1dfb8fba8f
MD5 f6123e9ed46891c6b1c3dfaa5c6037ac
BLAKE2b-256 fca952b0c523a2b9fd79a20dba40eff49761af1ccff7542a4c171326fa66b779

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