Skip to main content

A stylish and feature-rich Terminal User Interface for monitoring stock prices, news, and historical data.

Project description

stocksTUI

A fast, minimalist terminal app for checking stock prices, crypto, news, and historical charts — without leaving your shell. Built with Textual, powered by yfinance, and made for people who prefer the command line over CNBC.

stocksTUI Screenshot - Main Interface stocksTUI Screenshot - CLI Mode stocksTUI Screenshot - FRED Data


✨ Features

  • Live-ish Price Data Watch your favorite tickers update in near real-time with configurable refresh intervals.

  • Watchlists That Make Sense Organize your assets into lists like "Tech", "Crypto", "Dividend Traps", or "Memes". Manage them entirely from the UI — no need to touch JSON unless you want to.

  • Tag-Based Filtering Assign tags (e.g., growth, ev, semiconductor) to your tickers and instantly filter any watchlist to see only what's relevant.

  • Charts & Tables, Your Way View historical performance from 1D to Max, from a table or a chart.

  • Options Chain Support View detailed options chains with strike prices, bid/ask spreads, Greeks (Delta, Gamma, Theta, Vega), and open interest visualization. Track your positions with quantity and average cost.

  • News That Matters See the latest headlines per ticker or a combined feed — no ads, no autoplay videos, just info.

  • Economic Data (FRED) Monitor key economic indicators directly with integration for St. Louis Fed (FRED) data. Track GDP, Unemployment, CPI, and more with rolling averages and Z-score trend analysis.

  • Deep Market Context View comprehensive asset details including All Time High (ATH), % Off ATH, PE Ratio, Market Cap, and historical performance charts.

  • Quick Actions & Open Mode Instantly edit ticker aliases and notes with e. Use "Open Mode" (o) to quickly jump to external resources or switch between news, history, and options.

  • Keyboard-Friendly, Mouse-Optional Navigate everything with Vim-style keys or arrow keys. Bonus: lots of helpful keybindings, fully documented.

  • Custom Themes & Settings Tweak the look and feel with built-in themes or your own. Set your default tab, hide unused ones, and make it feel like your dashboard.

  • Smart Caching The app remembers what it can. Market-aware caching keeps startup fast and avoids pointless API calls on weekends or holidays.

⚠️ Note: All symbols follow Yahoo Finance format — e.g., AAPL for Apple, ^GSPC for S&P 500, and BTC-USD for Bitcoin.


🛠 Requirements

  • Python 3.10 or newer

  • OS Support:

    • Linux / macOS — Fully supported
    • Windows — Use Windows Terminal with WSL2. It won’t work in the old cmd.exe.

🚀 Installation

The easiest way to install is with pipx:

1. Install pipx (if you don’t already have it):

# Debian/Ubuntu
sudo apt install pipx

# Arch Linux
sudo pacman -S python-pipx

# macOS
brew install pipx

# Or fallback to pip
python3 -m pip install --user pipx
python3 -m pipx ensurepath

2. Install stocksTUI:

pipx install stocksTUI

Done. You can now run stockstui from anywhere.


🧭 Usage

Run the app like so:

stockstui

Need help?

stockstui -h          # Short help
stockstui --man       # Full user manual

💡 Command-Line Examples

Open on Tesla's History tab.

stockstui --history TSLA

Get combined news for NVIDIA and AMD.

stockstui --news "NVDA,AMD"

Open on Apple's Options tab to view the options chain.

stockstui --options AAPL

Create a temporary watchlist for this session only.

stockstui --session-list "EV Stocks=TSLA,RIVN,LCID"

Launch a 5-day chart for Tesla.

stockstui --history TSLA --period 5d --chart

Open directly to a specific FRED economic series (e.g., Unemployment Rate).

stockstui --fred UNRATE

CLI mode: Output "stocks" list, filtered by the "tech" tag.

stockstui -o stocks --tags tech

🔑 FRED API Key

To use the Economic Data (FRED) features, you must provide a free API key from the Federal Reserve Bank of St. Louis.

  1. Create a free account and request an API key at fred.stlouisfed.org.
  2. Once you have your key, enter it in the app under Configs > FRED Settings.
  3. Click Save to enable FRED data fetching.

⌨️ Keybindings

  • Press ? inside the app for a quick keybinding cheat sheet
  • Run stockstui --man for the full breakdown

🧑‍💻 For Developers: Install from Source

Want to try the bleeding-edge version or contribute?

git clone https://github.com/andriy-git/stocksTUI.git
cd stocksTUI
./install.sh

This sets up a virtual environment and a global stockstui command so you can test and develop from anywhere.


⚖️ License

Licensed under the GNU GPL v3.0. See LICENSE for the legalese.

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

stockstui-0.1.0b12.tar.gz (151.8 kB view details)

Uploaded Source

Built Distribution

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

stockstui-0.1.0b12-py3-none-any.whl (127.2 kB view details)

Uploaded Python 3

File details

Details for the file stockstui-0.1.0b12.tar.gz.

File metadata

  • Download URL: stockstui-0.1.0b12.tar.gz
  • Upload date:
  • Size: 151.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for stockstui-0.1.0b12.tar.gz
Algorithm Hash digest
SHA256 824490f886a00d80fc00c3a4e8ef16d8e89d92906626b753ebea6a6512cfc566
MD5 fdba8371d74e8b9b0f823a1181de3ae1
BLAKE2b-256 949e1f9fd84781c6191224592290967e1b3022ba2ee5e6f33a726a5714495e40

See more details on using hashes here.

File details

Details for the file stockstui-0.1.0b12-py3-none-any.whl.

File metadata

  • Download URL: stockstui-0.1.0b12-py3-none-any.whl
  • Upload date:
  • Size: 127.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for stockstui-0.1.0b12-py3-none-any.whl
Algorithm Hash digest
SHA256 c51cca4efe9d9cf6c551c753f76f3075be60ef458ec62a4f9a3023480276441d
MD5 4bee5662c391d55a0d2a0e6f2f82d3ea
BLAKE2b-256 cbb424b24334748d152c69b3bb6aeb68c281817b09674edb1b517c94b32e8765

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