Home
Softono

Financial Chat

Open source Python
235
Stars
60
Forks
2
Issues
9
Watchers
1 year
Last Commit

 About Financial Chat

A financial chat application powered by LangChain, OpenBB, and Claude 3 Opus.

Platforms

Web Self-hosted

Languages

Python

Need Help Installing Financial Chat?

We provide expert installation service for this software. Our team will install, configure, and secure Financial Chat on your server. plans start at just $30.

Financial Chat

View on GitHub

financial-chat

A financial chat application powered by LangChain, LangGraph, OpenBB, Claude 3 Opus, and Streamlit.

Blog Articles

If you're curious about the journey of building this project, check out these blog articles:

Features

  • Fetches financial data using OpenBB
  • Generates technical analysis summaries using AI
  • Provides stock price history, quantitative stats, and more
  • Calculates relative strength for stocks
  • Sentiment analysis on news articles
  • Universe scanning using FinViz filters
  • Risk management techniques using technically-derived stops and R Multiples
  • Interactive Streamlit UI for chat-based interaction
  • Multiple Agent Workflows using LangGraph
  • Deployment to AWS with the Copilot CLI

Installation

  1. Install the required dependencies using Poetry:
poetry install
  1. Set up the necessary environment variables. You can create an .env at the project root for these:
export OPENAI_API_KEY=<your-api-key>
export OPENBB_TOKEN=<your-openbb-token>
export TIINGO_API_KEY=<your-tiingo-api-key>
export IMGUR_CLIENT_ID=<your-imgur-client-id>
export IMGUR_CLIENT_SECRET=<your-imgur-client-secret>
export FMP_API_KEY=<fmp-api-key>
export INTRINIO_API_KEY=<intrinio-api-key>

Usage

Streamlit UI

Run the Streamlit app:

streamlit run app/ui.py

FastAPI Server

Start the FastAPI server:

uvicorn app.server:app --host 0.0.0.0 --port 8080

You can view the Swagger Docs and test out the Playground, courtesy of LangServe.

Docker

Build the Docker image:

docker build -t financial-chat .

Run the Docker container:

docker run -p 8080:8080 --env-file .env financial-chat

Project Structure

  • app/: Main application code
    • chains/: LangChain agent and prompts
    • features/: Feature-specific code (technical analysis, charting)
    • tools/: Custom tools for data retrieval and analysis
    • ui.py: Streamlit UI
    • server.py: FastAPI server
  • Dockerfile: Dockerfile for building the application
  • pyproject.toml: Project dependencies and configuration
  • README.md: Project documentation

Flowchart

Flowchart