Skip to content

yourdanov/Stocks

Repository files navigation

📈 Stocks Forecaster (Modern Edition)

A high-performance, professional-grade stock market analysis and forecasting desktop application. Built with Python, CustomTkinter, and Matplotlib, this application offers an ultra-modern "Deep Space & Neon" aesthetic, blending dynamic financial visualizations with heavily optimized Machine Learning predictions.

App Icon

✨ Key Features

  • 9 Advanced Forecasting Models:
    • Statistical: ARIMA, ETS
    • Tree Ensembles: Random Forest, XGBoost, Gradient Boosting
    • Machine Learning: SVR (Support Vector Regression), KNN (K-Nearest Neighbors)
    • Deep Learning / Advanced: PyTorch LSTM, Meta Prophet
  • Recursive Lag Engine: All ML and Tree-based models utilize a custom recursive lag generation loop, ensuring long-term forecasts produce dynamic, mathematically complex curves rather than generic flat lines.
  • Inline Fullscreen Analytics: Click the ⛶ Expand Graph button to dynamically hide the sidebar and stretch the Forecast Models Comparison chart across your entire monitor for pixel-perfect analysis.
  • Premium UX/UI:
    • Deep Space & Neon color palette.
    • Intelligent dodging chart legends that move away from your mouse pointer.
    • Dynamic price indicators that highlight green or red based on 1-month market returns.
  • Robust Exporting: Easily export your forecasts and generated data to CSV, interactive HTML tables, or save high-resolution PNG/PDF plots.

🚀 Running from Source

Prerequisites

Make sure you have Python 3.10+ installed.

  1. Clone or download this repository.
  2. Install the required dependencies:
    pip install -r requirements.txt
    (Note: torch and prophet are optional but highly recommended. If they are missing, the app will still run perfectly but will gracefully disable the LSTM and Prophet checkboxes).
  3. Run the application:
    python stocks_forecast.py

📦 Running as a Standalone Application (No Python Required)

If you don't want to deal with Python environments, you can run or build standalone executables.

🪟 Windows Users

A pre-compiled .exe file can be built or located in the dist/ folder.

  1. Navigate to the dist/ folder.
  2. Double-click Stocks Forecaster.exe.
  3. Note: You can move this .exe file anywhere on your computer or send it to friends, and it will run instantly!

🍎 macOS Users (Apple Silicon & Intel)

Because macOS apps must be built natively on a Mac, we have included an automated build script.

  1. Move this entire project folder to your Mac computer.
  2. Open your Terminal and navigate to the project folder.
  3. Run the automated build script:
    bash build_mac.sh
  4. The script will automatically install PyInstaller and bundle the app. Once finished, your standalone macOS application will be waiting for you inside the dist/ folder!

🛠 Architecture & Design

This application was designed using a modular scikit-learn pipeline approach combined with Statsmodels.

  • UI: Driven by customtkinter to bypass the outdated native Windows/macOS Tkinter look.
  • Charting: Matplotlib with FigureCanvasTkAgg bindings, modified to completely strip out borders, spines, and white backgrounds to seamlessly blend into the dark UI frame.

⚖️ License

Feel free to use, fork, and expand upon this financial forecasting software!

About

Stocks analysis and forecasting tool.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors