In this project, I have developed a scalable time-series forecasting pipeline using Prophet, designed to predict the future stock price of a given company or entity specifically focusing on its performance one year ahead. The pipeline integrates critical features such as seasonality, holiday effects, and trend analysis to provide accurate and actionable forecasts.
The primary goal of this project is to create a time-series forecasting system that can:
- Analyze historical data to predict future trends.
- Enable easy parameter tuning to improve model performance.
- Provide seamless tracking, logging, and deployment of forecasting models using MLflow.
To run this project, you need to install the following libraries:
- Python 3.12+
- Pandas: This library performs data manipulation and analysis also provides powerful data structures like dataframes.
- Prophet: A forecasting tool for time-series data, designed to handle trends, seasonality and holidat effects.
- Streamlit: Streamlit is a framework that builds interactive, data-driven web applications directly in python.
- MLFlow: An Open-source platform for tracking, managing and deploying machine learning workflows.
Other Utility Libraries : Matplotlib, io.
pip install pandas
pip install streamlit
pip install prophet
pip install mlflow
pip install matplotlib
- Create new directory 'Prophet_Forecasting'.
- Inside that directory/folder create new environment.
python -m venv mlflowpf
Now, activate this 'mlflowpf' venv.
- Clone this Repository :
https://github.com/Rajcr2/Prophet-Forecasting.git
- Now, Install all mentioned required libraries in your environment.
- After, that Run 'main.py' file from Terminal. To activate the dashboard on your browser.
streamlit run main.py
- Now, move to your browser.
- Upload the csv file from your local machine or you can use sample csv file given here.
- After, uploading set the model parameters such as changepoint or forecast period.
- Then convert data into prophet preffered format i.e 'ds' and 'y' format.
- and then just 'Train Model' and see the forecast results and also, don't forgot to verify model forecast results after 365 days or your mentioned period 😁.
Results of MODEL :
Vid_20250115_135027.mp4
Model has predicted INR has expected to maintain stability against USD by end of 2025, showing minimal fluctuations in its exchange rate indicating a stable currency.
As per Model, TCS Stock is projected to experience a 1.58% change by the end of 2025, indicating slight growth or decline which reflecting steady market trend for company.
Infosys stock is expected to undergo an 7.72% change by end of 2025, reflecting a moderate but significant movement in the company's market performance over the period.