pizzly

Pizzly, financial market analysis combining technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️

https://github.com/louisbrulenaudet/pizzly

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.2%) to scientific vocabulary

Keywords

agent agentic-ai ai alpaca alpaca-trading-api artificial-intelligence duckduckgo finance financial-analysis huggingface huggingface-transformers llm nlp polars polars-dataframe python smolagents stock-market
Last synced: 4 months ago · JSON representation ·

Repository

Pizzly, financial market analysis combining technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️

Basic Info
Statistics
  • Stars: 12
  • Watchers: 2
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Topics
agent agentic-ai ai alpaca alpaca-trading-api artificial-intelligence duckduckgo finance financial-analysis huggingface huggingface-transformers llm nlp polars polars-dataframe python smolagents stock-market
Created 11 months ago · Last pushed 6 months ago
Metadata Files
Readme Funding License Code of conduct Citation Security

README.md

Plot

Pizzly, financial market analysis combining technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️

License Maintainer Python Version Code Style Package Manager

This agentic market analysis system is a Python-based framework that combines technical analysis with artificial intelligence to provide comprehensive market insights. At its core, the system implements a modular architecture that seamlessly integrates statistical analysis methods with natural language processing capabilities.

The system's foundation is built upon two primary technical indicators: the Relative Strength Index (RSI) and Bollinger Bands. The RSI implementation provides momentum analysis through a configurable calculation window (default: 14 periods), employing dynamic gain/loss computation and rolling averages to measure the velocity and magnitude of price movements. This is complemented by a Bollinger Bands implementation that utilizes Simple Moving Averages (SMA) and dynamic standard deviation calculations to create adaptive volatility bands that automatically adjust to market conditions.

Market data acquisition is handled through an integration with the Alpaca API, providing access to historical price data across various timeframes. The system employs Polars for high-performance data manipulation, leveraging its columnar storage format and lazy evaluation capabilities to efficiently process large datasets.

The AI integration layer bridges technical analysis with natural language processing using the Qwen2.5-72B-Instruct model via the Hugging Face API. This enables sophisticated market analysis by combining traditional technical indicators with real-time news sentiment analysis through DuckDuckGo search integration.

Implementation Guide

Installation

Install the package using pip:

bash pip install pizzly

Usage

First, set up your API credentials as environment variables:

bash export ALPACA_API_KEY=your_alpaca_api_token export ALPACA_API_SECRET=your_alpaca_api_secret export HF_TOKEN=your_hf_token

Then use Pizzly like this:

```python from smolagents import DuckDuckGoSearchTool, HfApiModel from smolagents.agents import ToolCallingAgent

from pizzly.data.alpaca import AlpacaStock from pizzly.tools import FinancialTool

model = HfApiModel( "meta-llama/Llama-3.3-70B-Instruct", token=hf_token )

dataprovider = AlpacaStock(apikey, secretkey) marketanalysistool = FinancialTool(dataprovider=data_provider)

search_tool = DuckDuckGoSearchTool()

agent = ToolCallingAgent( tools=[ marketanalysistool, search_tool ], model=model )

prompt = f"""Please give me a detailed analysis of the market conditions for NVDA. Include: - Technical indicators (RSI, Bollinger Bands) using financial_tool - Current news sentiment - PE ratio comparison with industry - Market trend analysis The date of the day is {datetime.now().strftime("%Y-%m-%d")}."""

agent_output = agent.run( prompt ) ```

Development

Prerequisites

  • Python 3.10 or higher
  • uv for package management

Setting up the development environment

  1. Clone the repository: bash git clone https://github.com/louisbrulenaudet/pizzly cd pizzly

  2. Initialize the development environment: bash make init

Citing this project

If you use this code in your research, please use the following BibTeX entry.

BibTeX @misc{louisbrulenaudet2025, author = {Louis Brulé Naudet}, title = {Pizzly, financial market analysis combining technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️}, howpublished = {\url{https://github.com/louisbrulenaudet/pizzly}}, year = {2025} }

Feedback

If you have any feedback, please reach out at louisbrulenaudet@icloud.com.

Owner

  • Name: Louis Brulé Naudet
  • Login: louisbrulenaudet
  • Kind: user
  • Location: Paris
  • Company: Université Paris-Dauphine (Paris Sciences et Lettres - PSL)

Research in business taxation and development (NLP, LLM, Computer vision...), University Dauphine-PSL 📖 | Backed by the Microsoft for Startups Hub program

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Brulé Naudet"
  given-names: "Louis"
  orcid: "https://orcid.org/0000-0001-9111-4879"
title: "Pizzly, financial market analysis combining technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️"
version: 0.1.3
date-released: 2025-03-24

GitHub Events

Total
  • Issues event: 2
  • Watch event: 2
  • Delete event: 1
  • Push event: 6
  • Pull request event: 1
  • Fork event: 1
  • Create event: 1
Last Year
  • Issues event: 2
  • Watch event: 2
  • Delete event: 1
  • Push event: 6
  • Pull request event: 1
  • Fork event: 1
  • Create event: 1

Committers

Last synced: 9 months ago

All Time
  • Total Commits: 12
  • Total Committers: 1
  • Avg Commits per committer: 12.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 12
  • Committers: 1
  • Avg Commits per committer: 12.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Louis Brulé Naudet l****t@i****m 12

Issues and Pull Requests

Last synced: 5 months ago

All Time
  • Total issues: 0
  • Total pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 18 days
  • Total issue authors: 0
  • Total pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 0
  • Pull requests: 1
  • Average time to close issues: N/A
  • Average time to close pull requests: 18 days
  • Issue authors: 0
  • Pull request authors: 1
  • Average comments per issue: 0
  • Average comments per pull request: 0.0
  • Merged pull requests: 1
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • thibaut-lemarchand (1)
Pull Request Authors
  • dependabot[bot] (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (1) python (1)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 21 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
  • Total maintainers: 1
pypi.org: pizzly

Python library for financial market analysis combining traditional technical indicators with LLMs, featuring real-time data processing and AI-powered market insights ⚡️

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 21 Last month
Rankings
Dependent packages count: 9.4%
Average: 31.3%
Dependent repos count: 53.1%
Maintainers (1)
Last synced: 5 months ago

Dependencies

pyproject.toml pypi
requirements.txt pypi
  • accelerate ==1.3.0
  • alpaca-py ==0.38.0
  • annotated-types ==0.7.0
  • beautifulsoup4 ==4.13.3
  • certifi ==2025.1.31
  • cfgv ==3.4.0
  • charset-normalizer ==3.4.1
  • click ==8.1.8
  • distlib ==0.3.9
  • duckduckgo-search ==7.3.2
  • filelock ==3.17.0
  • fsspec ==2025.2.0
  • huggingface-hub ==0.28.1
  • identify ==2.6.7
  • idna ==3.10
  • iniconfig ==2.0.0
  • jinja2 ==3.1.5
  • lxml ==5.3.1
  • markdown-it-py ==3.0.0
  • markdownify ==0.14.1
  • markupsafe ==3.0.2
  • mdurl ==0.1.2
  • mpmath ==1.3.0
  • msgpack ==1.1.0
  • networkx ==3.4.2
  • nodeenv ==1.9.1
  • numpy ==2.2.3
  • packaging ==24.2
  • pandas ==2.2.3
  • pillow ==11.1.0
  • platformdirs ==4.3.6
  • pluggy ==1.5.0
  • polars ==1.22.0
  • pre-commit ==4.1.0
  • pre-commit-uv ==4.1.4
  • primp ==0.12.1
  • psutil ==7.0.0
  • pydantic ==2.10.6
  • pydantic-core ==2.27.2
  • pydantic-settings ==2.7.1
  • pygments ==2.19.1
  • pyright ==1.1.394
  • pytest ==8.3.4
  • python-dateutil ==2.9.0.post0
  • python-dotenv ==1.0.1
  • pytz ==2025.1
  • pyyaml ==6.0.2
  • requests ==2.32.3
  • rich ==13.9.4
  • ruff ==0.9.6
  • safetensors ==0.5.2
  • setuptools ==75.8.0
  • six ==1.17.0
  • smolagents ==1.9.2
  • soupsieve ==2.6
  • sseclient-py ==1.8.0
  • sympy ==1.13.1
  • torch ==2.6.0
  • tqdm ==4.67.1
  • typing-extensions ==4.12.2
  • tzdata ==2025.1
  • urllib3 ==2.3.0
  • uv ==0.6.0
  • virtualenv ==20.29.2
  • websockets ==15.0
uv.lock pypi
  • accelerate 1.3.0
  • agentic-market-analysis 0.1.0
  • alpaca-py 0.38.0
  • annotated-types 0.7.0
  • beautifulsoup4 4.13.3
  • certifi 2025.1.31
  • cfgv 3.4.0
  • charset-normalizer 3.4.1
  • click 8.1.8
  • colorama 0.4.6
  • distlib 0.3.9
  • duckduckgo-search 7.3.2
  • filelock 3.17.0
  • fsspec 2025.2.0
  • huggingface-hub 0.28.1
  • identify 2.6.7
  • idna 3.10
  • iniconfig 2.0.0
  • jinja2 3.1.5
  • lxml 5.3.1
  • markdown-it-py 3.0.0
  • markdownify 0.14.1
  • markupsafe 3.0.2
  • mdurl 0.1.2
  • mpmath 1.3.0
  • msgpack 1.1.0
  • networkx 3.4.2
  • nodeenv 1.9.1
  • numpy 2.2.3
  • nvidia-cublas-cu12 12.4.5.8
  • nvidia-cuda-cupti-cu12 12.4.127
  • nvidia-cuda-nvrtc-cu12 12.4.127
  • nvidia-cuda-runtime-cu12 12.4.127
  • nvidia-cudnn-cu12 9.1.0.70
  • nvidia-cufft-cu12 11.2.1.3
  • nvidia-curand-cu12 10.3.5.147
  • nvidia-cusolver-cu12 11.6.1.9
  • nvidia-cusparse-cu12 12.3.1.170
  • nvidia-cusparselt-cu12 0.6.2
  • nvidia-nccl-cu12 2.21.5
  • nvidia-nvjitlink-cu12 12.4.127
  • nvidia-nvtx-cu12 12.4.127
  • packaging 24.2
  • pandas 2.2.3
  • pillow 11.1.0
  • platformdirs 4.3.6
  • pluggy 1.5.0
  • polars 1.22.0
  • pre-commit 4.1.0
  • pre-commit-uv 4.1.4
  • primp 0.12.1
  • psutil 7.0.0
  • pydantic 2.10.6
  • pydantic-core 2.27.2
  • pydantic-settings 2.7.1
  • pygments 2.19.1
  • pyright 1.1.394
  • pytest 8.3.4
  • python-dateutil 2.9.0.post0
  • python-dotenv 1.0.1
  • pytz 2025.1
  • pyyaml 6.0.2
  • requests 2.32.3
  • rich 13.9.4
  • ruff 0.9.6
  • safetensors 0.5.2
  • setuptools 75.8.0
  • six 1.17.0
  • smolagents 1.9.2
  • soupsieve 2.6
  • sseclient-py 1.8.0
  • sympy 1.13.1
  • torch 2.6.0
  • tqdm 4.67.1
  • triton 3.2.0
  • typing-extensions 4.12.2
  • tzdata 2025.1
  • urllib3 2.3.0
  • uv 0.6.0
  • virtualenv 20.29.2
  • websockets 15.0