Skip to main content

Tickermood

Tickermood is a Python package that provides market sentiment analysis for stock tickers based on news from multiple sources. It combines web scraping techniques with large language models (LLMs) using the LangChain and LangGraph frameworks to generate sentiment scores for given tickers.


📦 Installation

Install Tickermood via pip:

pip install tickermood

Note: To use Tickermood locally, Ollama must be installed and qwen3:4b model needs to be available.

ollama pull qwen3:4b

🚀 Usage

Programmatic Usage

from tickermood import TickerMood

ticker_mood = TickerMood.from_symbols(["AAPL", "GOOGL", "MSFT"])
ticker_mood.run()

CLI Usage

tickermood AAPL GOOGL MSFT

This will:

  • Fetch the latest news for the specified tickers
  • Run LLM agents to analyze the news
  • Provide a sentiment score for each ticker

Results are stored in a SQLite database.

Tickermood Output


🗃️ Database

Tickermood creates a SQLite database in the current directory named tickermood.db if it doesn't already exist. It includes:

  • Sentiment ratings (e.g., Buy, Hold, Sell)
  • Price targets
  • Summaries of the fetched news articles

⚙️ LLM Backend Options

Default: Local LLM (Ollama)

  • Runs LLMs locally for free
  • Performance depends on your hardware

Optional: OpenAI API

  • Requires setting the OPENAI_API_KEY environment variable

Or, pass the key via CLI:

tickermood AAPL GOOGL MSFT --openai_api_key_path /path/to/openai_api_key.txt

📝 License

MIT License

Metadata

Release files for tickermood 0.29.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tickermood 0.29.0
File Size Uploaded Provenance Actions
tickermood-0.29.0.tar.gz 16.2 kB Without provenance Details for tickermood-0.29.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tickermood 0.29.0
File Interpreter ABI Platform Actions
tickermood-0.29.0-py3-none-any.whl Python 3 none any Details for tickermood-0.29.0-py3-none-any.whl

Total release size: 38.3 kB

Release files / tickermood-0.29.0.tar.gz

Download URL tickermood-0.29.0.tar.gz
Size 16.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0b7ceb161437f354db4e6389a03b1f9aed0454ac17380679fd023af4c155e50a
BLAKE2b-256 checksum
How to use checksums
6c2688cceb8a21660665c343ed51d67d7e4af2e4e2873c4523b403e1c2200328
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.12.11

Release files / tickermood-0.29.0-py3-none-any.whl

Download URL tickermood-0.29.0-py3-none-any.whl
Size 22.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7587f362fd5be5c3f44eddc285fdd90737b89f4a0378cf0a50a0d1087c5a94b4
BLAKE2b-256 checksum
How to use checksums
ad42522d07009e195e33bf9fb218a024baa4be10510f3d49d5bc04bb8bc92174
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.0 CPython/3.12.11

Security for tickermood 0.29.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page