Skip to content

Releases: Asifdotexe/StoDir

v1.0.0

15 Sep 19:13

Choose a tag to compare

StoDir v0.1.1 - Portfolio Generalization & Professional Tooling

This is a major milestone release for StoDir, transforming it from a single-ticker forecasting tool into a robust, end-to-end machine learning system. This update focuses on three core pillars: a vastly improved ML methodology, a professional-grade system architecture, and a complete overhaul of the developer and user experience.

Major Features & Architectural Overhaul

  • Portfolio-Based Model Generalization: The model is no longer trained on a few hardcoded tickers. It is now trained on a diverse portfolio of stocks from major global indices (S&P 500, NASDAQ-100, etc.), leading to a more robust and generalized forecasting ability.

  • Decoupled Training & Inference: The system is now split into two distinct parts: a standalone Training Pipeline (train.py) that builds the model artifact, and a lightweight Inference Application (Streamlit App & CLI) that loads the pre-trained model for fast, on-demand predictions.

  • Hugging Face Hub Integration: The project now uses Hugging Face Hub as a model registry to store and version trained artifacts. The Streamlit app securely downloads the pinned model version, ensuring stable and reproducible deployments.

  • New Command-Line Interface (CLI): Alongside the web app, a new CLI (cli.py) has been introduced for programmatic forecasting and automated plot generation directly from the terminal.

Machine Learning Methodology Upgrades

  • Robust Backtesting Engine: A proper time-series backtesting module (stodir/validation.py) has been implemented. It uses a sliding-window approach to simulate historical performance, providing a much more realistic evaluation of the model's precision than a simple train-test split.

  • Probabilistic Forecasts: The model now outputs not just a direction ("UP"/"DOWN") but also a confidence probability, providing users with a clearer understanding of the model's certainty for each forecast.

User Experience & UI Redesign

  • Complete UI Overhaul: The Streamlit application has been redesigned into a modern, two-column dashboard.
  • New "Model Insights" Card: To improve transparency, the UI now displays the exact feature values that the model used to make its latest prediction.
  • "Midnight Blue" Dark Theme: A custom, professional dark theme has been implemented for a better user experience. The data visualizations have been updated to match this theme, ensuring a seamless and polished look.

Developer Experience & Tooling

  • Migration to Poetry: The project has been migrated from requirements.txt to Poetry for dependency management. This ensures fully deterministic and reproducible builds via the poetry.lock file.

  • Centralized Configuration: All key parameters; from feature horizons and model settings to portfolio lists; are now managed in a single config.yaml file, making the system easy to configure and maintain.

  • Comprehensive Documentation: The project documentation has been significantly expanded, with a leaner main README.md and detailed explanations of the system architecture and methodology in the docs/ folder.

  • General Housekeeping: Added a LICENSE file, improved .gitignore, and configured static analysis tools for better code quality.

What's Changed

New Contributors

Full Changelog: https://github.com/Asifdotexe/StoDir/commits/v1.0.0