Build A Time-Series Forecast
Forecasts a chosen metric over a set horizon from historical data, granularity, known patterns, and external factors, with a justified choice of model — moving average, exponential smoothing, ARIMA/SARIMA, or Prophet. Delivers 80% and 95% confidence intervals, a trend/seasonality/residual decomposition, holdout accuracy metrics like MAPE and RMSE, and optimistic, baseline, and pessimistic scenarios, so the forecast carries honest uncertainty bounds instead of a single line.
Build a forecast for {metric} across the next {forecast_horizon}. Historical data: - Time range: {historical_range} - Granularity: {granularity} - Known patterns: {known_patterns} - External factors: {external_factors} {historical_data} Produce: 1. Model selection with justification (moving average, exponential smoothing, ARIMA/SARIMA, Prophet) 2. The forecast with 80% and 95% confidence intervals 3. A decomposition into trend, seasonality, and residual components 4. Accuracy metrics on a holdout set (MAPE, RMSE) 5. Optimistic, baseline, and pessimistic scenarios 6. Key assumptions and what could break the forecast Include the Python code (statsmodels, Prophet, or scikit-learn, as fits).