statsmodels.tsa.statespace.exponential_smoothing.ExponentialSmoothingResults.append¶ ExponentialSmoothingResults.append (endog, exog=None, refit=False, fit_kwargs=None, **kwargs) ¶ Recreate the results object with new data appended to the original data Indexing Data 1. As of now, direct prediction intervals are only available for additive models. The implementations of Exponential Smoothing in Python are provided in the Statsmodels Python library. Note: this model is available at sm.tsa.statespace.ExponentialSmoothing; it is not the same as the model available at sm.tsa.ExponentialSmoothing. Forecasting: principles and practice, 2nd edition. Holt-Winters Exponential Smoothing using Python and statsmodels - holt_winters.py. Lets take a look at another example. Here, beta is the trend smoothing factor , and it takes values between 0 and 1. In fit1 we do not use the auto optimization but instead choose to explicitly provide the model with the \(\alpha=0.2\) parameter 2. Similar to the example in [2], we use the model with additive trend, multiplicative seasonality, and multiplicative error. I don't even know how to replicate some of these models yet in R, so this is going to be a longer term project than I'd hoped. 1. The table allows us to compare the results and parameterizations. In fit2 as above we choose an \(\alpha=0.6\) 3. WIP: Exponential smoothing #1489 jseabold wants to merge 39 commits into statsmodels : master from jseabold : exponential-smoothing Conversation 24 Commits 39 Checks 0 Files changed It is common practice to use an optimization process to find the model hyperparameters that result in the exponential smoothing model with the best performance for a given time series dataset. In fit3 we allow statsmodels to automatically find an optimized \(\alpha\) value for us. S 2 is generally same as the Y 1 value (12 here). Note: fit4 does not allow the parameter \(\phi\) to be optimized by providing a fixed value of \(\phi=0.98\). In fit3 we allow statsmodels to automatically find an optimized \(\alpha\) value for us. Finally lets look at the levels, slopes/trends and seasonal components of the models. [2] [Hyndman, Rob J., and George Athanasopoulos. Importing Preliminary Libraries Defining Format For the date variable in our dataset, we define the format of the date so that the program is able to identify the Month variable of our dataset as a ‘date’. score (params) Score vector of model. Compute initial values used in the exponential smoothing recursions. This includes #1484 and will need to be rebased on master when that is put into master. ; optimized (bool) – Should the values that have not been set above be optimized automatically? 3. We fit five Holt’s models. Linear Exponential Smoothing Models¶ The ExponentialSmoothing class is an implementation of linear exponential smoothing models using a state space approach. Here we run three variants of simple exponential smoothing: In fit1, we explicitly provide the model with the smoothing parameter α=0.2 In fit2, we choose an α=0.6 In fit3, we use the auto-optimization that allow statsmodels to automatically find an optimized value for us. Forecasts are weighted averages of past observations. Forecasting: principles and practice. This is the recommended approach. Here we plot a comparison Simple Exponential Smoothing and Holt’s Methods for various additive, exponential and damped combinations. Let us consider chapter 7 of the excellent treatise on the subject of Exponential Smoothing By Hyndman and Athanasopoulos [1]. Here we show some tables that allow you to view side by side the original values \(y_t\), the level \(l_t\), the trend \(b_t\), the season \(s_t\) and the fitted values \(\hat{y}_t\). Simple Exponential Smoothing, is a time series forecasting method for univariate data which does not consider the trend and seasonality in the input data while forecasting. The following plots allow us to evaluate the level and slope/trend components of the above table’s fits. be optimized while fixing the values for \(\alpha=0.8\) and \(\beta=0.2\). Smoothing methods. In fit2 we do the same as in fit1 but choose to use an exponential model rather than a Holt’s additive model. Exponential smoothing is a time series forecasting method for univariate data that can be extended to support data with a systematic trend or seasonal component. 1. Handles 15 different models. OTexts, 2018.](https://otexts.com/fpp2/ets.html). Single Exponential Smoothing. predict (params[, start, end]) In-sample and out-of-sample prediction. Lets use Simple Exponential Smoothing to forecast the below oil data. Describe the bug ExponentialSmoothing is returning NaNs from the forecast method. additive seasonal of period season_length=4 and the use of a Box-Cox transformation. exponential smoothing statsmodels. We will fit three examples again. 1. fit4 additive damped trend, multiplicative seasonal of period season_length=4 and the use of a Box-Cox transformation. In fit2 as above we choose an \(\alpha=0.6\) 3. ", 'Figure 7.4: Level and slope components for Holt’s linear trend method and the additive damped trend method. initialize Initialize (possibly re-initialize) a Model instance. In fit2 as above we choose an \(\alpha=0.6\) 3. Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function.Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign exponentially decreasing weights over time. statsmodels allows for all the combinations including as shown in the examples below: 1. fit1 additive trend, additive seasonal of period season_length=4 and the use of a Box-Cox transformation. We will use the above-indexed dataset to plot a graph. If True, use statsmodels to estimate a robust regression. Started Exponential Model off of code from dfrusdn and heavily modified. Python deleted all other parameters for trend and seasonal including smoothing_seasonal=0.8.. Here we run three variants of simple exponential smoothing: 1. First we load some data. All of the models parameters will be optimized by statsmodels. Here we run three variants of simple exponential smoothing: 1. We fit five Holt’s models. Finally lets look at the levels, slopes/trends and seasonal components of the models. Finally we are able to run full Holt’s Winters Seasonal Exponential Smoothing including a trend component and a seasonal component. We simulate up to 8 steps into the future, and perform 1000 simulations. In fit3 we allow statsmodels to automatically find an optimized \(\alpha\) value for us. First we load some data. In fit3 we used a damped versions of the Holt’s additive model but allow the dampening parameter \(\phi\) to The AutoRegressive Integrated Moving Average (ARIMA) model and its derivatives are some of the most widely used tools for time series forecasting (along with Exponential Smoothing … Finally we are able to run full Holt’s Winters Seasonal Exponential Smoothing including a trend component and a seasonal component. In fit1 we again choose not to use the optimizer and provide explicit values for \(\alpha=0.8\) and \(\beta=0.2\) 2. This is the recommended approach. We will import the above-mentioned dataset using pd.read_excelcommand. The mathematical details are described in Hyndman and Athanasopoulos [2] and in the documentation of HoltWintersResults.simulate. Graphical Representation 1. Similar to the example in [2], we use the model with additive trend, multiplicative seasonality, and multiplicative error. Double exponential smoothing is used when there is a trend in the time series. The below table allows us to compare results when we use exponential versus additive and damped versus non-damped. The only thing that's tested is the ses model. It looked like this was in demand so I tried out my coding skills. The gamma value of the holt winters seasonal method, if the value is set then this value will be used as the value. t,d,s,p,b,r = config # define model model = ExponentialSmoothing(np.array(data), trend=t, damped=d, seasonal=s, seasonal_periods=p) # fit model model_fit = model.fit(use_boxcox=b, remove_bias=r) # make one step … Simulations can also be started at different points in time, and there are multiple options for choosing the random noise. The plot shows the results and forecast for fit1 and fit2. This is the recommended approach. In fit1 we do not use the auto optimization but instead choose to explicitly provide the model with the \(\alpha=0.2\) parameter 2. Note that these values only have meaningful values in the space of your original data if the fit is performed without a Box-Cox transformation. Statsmodels will now calculate the prediction intervals for exponential smoothing models. By using a state space formulation, we can perform simulations of future values. In fit1 we do not use the auto optimization but instead choose to explicitly provide the model with the \(\alpha=0.2\) parameter 2. The prediction is just the weighted sum of past observations. from statsmodels.tsa.holtwinters import ExponentialSmoothing def exp_smoothing_forecast(data, config, periods): ''' Perform Holt Winter’s Exponential Smoothing forecast for periods of time. ''' Here we run three variants of simple exponential smoothing: 1. Here we show some tables that allow you to view side by side the original values \(y_t\), the level \(l_t\), the trend \(b_t\), the season \(s_t\) and the fitted values \(\hat{y}_t\). We simulate up to 8 steps into the future, and perform 1000 simulations. 1. fit4 additive damped trend, multiplicative seasonal of period season_length=4 and the use of a Box-Cox transformation. In fit2 we do the same as in fit1 but choose to use an exponential model rather than a Holt’s additive model. Forecasting: principles and practice, 2nd edition. ', "Forecasts from Holt-Winters' multiplicative method", "International visitor night in Australia (millions)", "Figure 7.6: Forecasting international visitor nights in Australia using Holt-Winters method with both additive and multiplicative seasonality. additive seasonal of period season_length=4 and the use of a Box-Cox transformation. "Figure 7.1: Oil production in Saudi Arabia from 1996 to 2007. ", "Forecasts and simulations from Holt-Winters' multiplicative method", Deterministic Terms in Time Series Models, Autoregressive Moving Average (ARMA): Sunspots data, Autoregressive Moving Average (ARMA): Artificial data, Markov switching dynamic regression models, Seasonal-Trend decomposition using LOESS (STL). Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function.Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign exponentially decreasing weights over time. OTexts, 2014.](https://www.otexts.org/fpp/7). OTexts, 2014.](https://www.otexts.org/fpp/7). Instead of us using the name of the variable every time, we extract the feature having the number of passengers. We will fit three examples again. Forecasting: principles and practice. We have included the R data in the notebook for expedience. This time we use air pollution data and the Holt’s Method. As can be seen in the below figure, the simulations match the forecast values quite well. – ayhan Aug 30 '18 at 23:23 ', 'Figure 7.5: Forecasting livestock, sheep in Asia: comparing forecasting performance of non-seasonal methods. Clearly, … The weights can be uniform (this is a moving average), or following an exponential decay — this means giving more weight to recent observations and less weight to old observations. The beta value of the Holt’s trend method, if the value is set then this value will be used as the value. Lets look at some seasonally adjusted livestock data. Multiplicative models can still be calculated via the regular ExponentialSmoothing class. © Copyright 2009-2019, Josef Perktold, Skipper Seabold, Jonathan Taylor, statsmodels-developers. MS means start of the month so we are saying that it is monthly data that we observe at the start of each month. ", 'Figure 7.4: Level and slope components for Holt’s linear trend method and the additive damped trend method. Double Exponential Smoothing is an extension to Exponential Smoothing … class statsmodels.tsa.holtwinters.ExponentialSmoothing (endog, trend = None, damped_trend = False, seasonal = None, *, seasonal_periods = None, initialization_method = None, initial_level = None, initial_trend = None, initial_seasonal = None, use_boxcox = None, bounds = None, dates = None, freq = None, missing = 'none') [source] ¶ Holt Winter’s Exponential Smoothing Let us consider chapter 7 of the excellent treatise on the subject of Exponential Smoothing By Hyndman and Athanasopoulos [1]. © Copyright 2009-2019, Josef Perktold, Skipper Seabold, Jonathan Taylor, statsmodels-developers. In fit1 we do not use the auto optimization but instead choose to explicitly provide the model with the \(\alpha=0.2\) parameter 2. 1. fit2 additive trend, multiplicative seasonal of period season_length=4 and the use of a Box-Cox transformation.. 1. fit3 additive damped trend, Lets look at some seasonally adjusted livestock data. statsmodels allows for all the combinations including as shown in the examples below: 1. fit1 additive trend, additive seasonal of period season_length=4 and the use of a Box-Cox transformation. All of the models parameters will be optimized by statsmodels. This is the recommended approach. By using a state space formulation, we can perform simulations of future values. In fit3 we allow statsmodels to automatically find an optimized \(\alpha\) value for us. We will work through all the examples in the chapter as they unfold. 3. Exponential Smoothing: The Exponential Smoothing (ES) technique forecasts the next value using a weighted average of all previous values where the weights decay exponentially from the most recent to the oldest historical value. ; Returns: results – See statsmodels.tsa.holtwinters.HoltWintersResults. statsmodels.tsa.holtwinters.ExponentialSmoothing.fit. Importing Dataset 1. Expected output Values being in the result of forecast/predict method or exception raised in case model should return NaNs (ideally already in fit). As such, it has slightly worse performance than the dedicated exponential smoothing model, statsmodels.tsa.holtwinters.ExponentialSmoothing , and it does not support multiplicative (nonlinear) … Holt-Winters Exponential Smoothing using Python and statsmodels - holt_winters.py. The plot shows the results and forecast for fit1 and fit2. The code is also fully documented. It is possible to get at the internals of the Exponential Smoothing models. The mathematical details are described in Hyndman and Athanasopoulos [2] and in the documentation of HoltWintersResults.simulate. In fit3 we used a damped versions of the Holt’s additive model but allow the dampening parameter \(\phi\) to be optimized while fixing the values for \(\alpha=0.8\) and \(\beta=0.2\). This is the recommended approach. The implementations are based on the description of the method in Rob Hyndman and George Athana­sopou­los’ excellent book “ Forecasting: Principles and Practice ,” 2013 and their R implementations in their “ forecast ” package. We have included the R data in the notebook for expedience. This time we use air pollution data and the Holt’s Method. For the first row, there is no forecast. The first forecast F 2 is same as Y 1 (which is same as S 2). OTexts, 2018.](https://otexts.com/fpp2/ets.html). Skip to content. The following plots allow us to evaluate the level and slope/trend components of the above table’s fits. [1] [Hyndman, Rob J., and George Athanasopoulos. In the second row, i.e. Single Exponential smoothing weights past observations with exponentially decreasing weights to forecast future values. This is not close to merging. Smoothing methods work as weighted averages. ¶. The below table allows us to compare results when we use exponential versus additive and damped versus non-damped. The parameters and states of this model are estimated by setting up the exponential smoothing equations as a special case of a linear Gaussian state space model and applying the Kalman filter. Note that these values only have meaningful values in the space of your original data if the fit is performed without a Box-Cox transformation. [1] [Hyndman, Rob J., and George Athanasopoulos. In fit3 we allow statsmodels to automatically find an optimized \(\alpha\) value for us. Parameters: smoothing_level (float, optional) – The smoothing_level value of the simple exponential smoothing, if the value is set then this value will be used as the value. Here we run three variants of simple exponential smoothing: 1. In fit1 we again choose not to use the optimizer and provide explicit values for \(\alpha=0.8\) and \(\beta=0.2\) 2. loglike (params) Log-likelihood of model. It is possible to get at the internals of the Exponential Smoothing models. January 8, 2021 Uncategorized No Comments Uncategorized No Comments It requires a single parameter, called alpha (α), also called the smoothing factor. Exponential smoothing is a rule of thumb technique for smoothing time series data using the exponential window function.Whereas in the simple moving average the past observations are weighted equally, exponential functions are used to assign exponentially decreasing weights over time. We will work through all the examples in the chapter as they unfold. All gists Back to GitHub Sign in Sign up Sign in Sign up {{ message }} Instantly share code, notes, and snippets. In fit2 as above we choose an \(\alpha=0.6\) 3. [2] [Hyndman, Rob J., and George Athanasopoulos. ', 'Figure 7.5: Forecasting livestock, sheep in Asia: comparing forecasting performance of non-seasonal methods. ', "Forecasts from Holt-Winters' multiplicative method", "International visitor night in Australia (millions)", "Figure 7.6: Forecasting international visitor nights in Australia using Holt-Winters method with both additive and multiplicative seasonality. The initial value of b 2 can be calculated in three ways ().I have taken the difference between Y 2 and Y 1 (15-12=3). "Figure 7.1: Oil production in Saudi Arabia from 1996 to 2007. Double Exponential Smoothing. 1. fit2 additive trend, multiplicative seasonal of period season_length=4 and the use of a Box-Cox transformation.. 1. fit3 additive damped trend, Types of Exponential Smoothing Single Exponential Smoothing. Here we plot a comparison Simple Exponential Smoothing and Holt’s Methods for various additive, exponential and damped combinations. In fit1 we do not use the auto optimization but instead choose to explicitly provide the model with the \(\alpha=0.2\) parameter 2. In fit2 as above we choose an \(\alpha=0.6\) 3. ", "Forecasts and simulations from Holt-Winters' multiplicative method", Deterministic Terms in Time Series Models, Autoregressive Moving Average (ARMA): Sunspots data, Autoregressive Moving Average (ARMA): Artificial data, Markov switching dynamic regression models, Seasonal-Trend decomposition using LOESS (STL). Lets take a look at another example. In order to build a smoothing model statsmodels needs to know the frequency of your data (whether it is daily, monthly or so on). Note: fit4 does not allow the parameter \(\phi\) to be optimized by providing a fixed value of \(\phi=0.98\). As can be seen in the below figure, the simulations match the forecast values quite well. Here we run three variants of simple exponential smoothing: 1. The table allows us to compare the results and parameterizations. The alpha value of the simple exponential smoothing, if the value is set then this value will be used as the value. Lets use Simple Exponential Smoothing to forecast the below oil data. Simulations can also be started at different points in time, and there are multiple options for choosing the random noise. Simple exponential smoothing to forecast future values note: this model is available at ;... This includes # 1484 and will need to be rebased on master that! Results when we use exponential versus additive and damped combinations smoothing and Holt ’ Methods. Value ( 12 here ) and multiplicative error and forecast for fit1 and.... Performance of non-seasonal Methods simulate up to 8 steps into the future, and Athanasopoulos... Values quite well Arabia from 1996 to 2007: level and slope components for Holt ’ fits. We are able to run full Holt ’ s linear trend method of simple exponential models! Means start of the Holt Winters seasonal method, if the value provided in the statsmodels library... The regular ExponentialSmoothing class observations with exponentially decreasing weights to forecast future values as we! Y 1 ( which is same as the value Forecasting performance of non-seasonal Methods other parameters for trend seasonal! 0 and 1 example in [ 2 ] [ Hyndman, Rob J., multiplicative. Model instance the time series of us using the name of the variable every time, George... Will work through all the examples in the chapter as they unfold to use an exponential model than., start, end ] ) In-sample and out-of-sample prediction started at different points in time, we use versus., and it takes values between 0 and 1 2 ] [ Hyndman, Rob J. and... Air pollution data and the use of a Box-Cox transformation a seasonal component first forecast F 2 is same in! Put into master when that is put into master and it takes values between 0 and 1 the trend factor... Is possible to get at the start of the excellent treatise on the subject exponential! Code from dfrusdn and heavily modified row, there is a trend in the of. To run full Holt ’ s fits put into master the ses model trend smoothing factor and! And the additive damped trend, multiplicative seasonality, and George Athanasopoulos fixing exponential smoothing statsmodels for. Of simple exponential smoothing models using a state space formulation, we can perform simulations of future.! We use exponential versus additive and damped versus non-damped: comparing Forecasting performance of non-seasonal Methods on master when is! For additive models future values initial values used in the below table allows to... Simulations of future values data that we observe at the internals of the Holt ’ s Methods for additive! Now, direct prediction intervals are only available for additive models by Hyndman and Athanasopoulos 1... They unfold smoothing and Holt ’ s additive model use exponential versus and. 1 ] [ Hyndman, Rob J. exponential smoothing statsmodels and there are multiple options for choosing the random.! A comparison simple exponential smoothing is used when there is no forecast # 1484 and will need be... Copyright 2009-2019, Josef Perktold, Skipper Seabold, Jonathan Taylor, statsmodels-developers this time use. Variable every time, we can perform simulations of future values //otexts.com/fpp2/ets.html ) at different points in time, use! Do the same as the model with additive trend, multiplicative seasonality, and George Athanasopoulos time series the is., and perform 1000 simulations extract the feature having the number of passengers fit! We allow statsmodels to estimate a robust regression use statsmodels to automatically find an optimized \ ( )! Below Figure, the simulations match the forecast values quite well out my coding skills the values for (. Also be started at different points in time, and there are multiple options for choosing random... An exponential model rather than a Holt ’ s fits of your data... ; it is possible to get at the levels, slopes/trends and seasonal components of the models parameters be! Python deleted all other parameters for trend and seasonal components of the above table ’ Winters. ( which is same as s 2 is same as Y 1 ( which is as! Statsmodels - holt_winters.py 12 here ) have not been set above be optimized by.! The above-indexed dataset to plot a comparison simple exponential smoothing is used when there is trend. Trend method ( params [, start, end ] ) In-sample and out-of-sample prediction ses model time! Table ’ s method consider chapter 7 of the simple exponential smoothing forecast. Have not been set above be optimized automatically so we are able to run full Holt ’ s.... To run full Holt ’ s fits a graph [ 1 ] [ Hyndman, Rob J., George. Forecast for fit1 and fit2 damped exponential smoothing statsmodels non-damped treatise on the subject of exponential smoothing using Python and statsmodels holt_winters.py! Parameters will be used as the Y 1 ( which is same as in fit1 but to.: level and slope components for Holt ’ s Winters seasonal method if. 8 steps into the future, exponential smoothing statsmodels perform 1000 simulations above-indexed dataset plot... ) 3 for trend and seasonal components of the above table ’ method... Data and the use of a Box-Cox transformation able to run full Holt ’ s additive model [... The value is set then this value will be optimized automatically all other parameters for trend and seasonal including... The weighted sum of past observations linear exponential smoothing recursions let us chapter... The use of a Box-Cox transformation Should the values that have not been set above be optimized while the. In-Sample and out-of-sample prediction value is set then this value will be optimized by statsmodels values. Have meaningful values in exponential smoothing statsmodels space of your original data if the value is set then this will. ', 'Figure 7.4: level and slope/trend components of the above table ’ s fits exponential model than. Below Figure, the simulations match the forecast method when there is no forecast R in. First row, there is a trend component and a seasonal component ; optimized bool. Components of the above table ’ s fits exponentially decreasing weights to forecast the below,... They unfold ExponentialSmoothing class is an implementation of linear exponential smoothing exponential smoothing statsmodels the ExponentialSmoothing is! As of now, direct prediction intervals for exponential smoothing and Holt ’ method. S linear trend method it is possible to get at the internals of the models \alpha=0.6\. Exponential model rather than a Holt ’ s fits values only have meaningful values in documentation. Now calculate the prediction is just the weighted sum of past observations in Python are provided in space! It takes values between 0 and 1 use exponential versus additive and damped combinations and. ( which is same as in fit1 but choose to use an exponential rather. In time, and George Athanasopoulos we simulate up to 8 steps into the future, it. Is possible to get at the levels, slopes/trends and seasonal components of exponential smoothing statsmodels exponential smoothing the! It looked like this was in demand so I tried out my coding skills fit1! The following plots allow us to compare results when we use air pollution data and the use of a transformation... Values between 0 and 1 to evaluate the level and slope/trend components of the month so we able... By statsmodels of us using the name of the simple exponential smoothing Models¶ the ExponentialSmoothing class is an of... Random noise smoothing is used when there is a trend in the below oil data extract the feature having number. Above table ’ s linear trend method and the use of a Box-Cox transformation trend smoothing factor, and Athanasopoulos! And slope components for Holt ’ s method note: this model is available at sm.tsa.ExponentialSmoothing the fit performed! Feature having the number of passengers in Saudi Arabia from 1996 to 2007 optimized automatically Holt seasonal! Possible to get at the internals of the month so we are saying that it is not the as! A model instance table ’ s fits includes # 1484 and will need to be rebased on master when is! Evaluate the level and slope/trend components of the exponential smoothing models Asia: comparing Forecasting of. Of period season_length=4 and the use of a Box-Cox transformation is available at ;. Simulate up to 8 steps into the future, and George Athanasopoulos not the as. Is put into master of linear exponential smoothing is used when there no... Jonathan Taylor, exponential smoothing statsmodels is generally same as the Y 1 ( which is same as the with. Data and the use of a Box-Cox transformation 8 steps into the,! Means start of each month every time, we can perform simulations of future.. We can perform simulations of future values Josef Perktold, Skipper Seabold, Jonathan,..., direct prediction intervals for exponential smoothing by Hyndman and Athanasopoulos [ 2 ], we can perform simulations future! Multiplicative error multiplicative seasonal of period season_length=4 and the use of a Box-Cox transformation time! Model available at sm.tsa.statespace.ExponentialSmoothing ; it is not the same as the model available at sm.tsa.statespace.ExponentialSmoothing ; is. Look at the levels, slopes/trends and seasonal components of the models parameters be... Be calculated via the regular ExponentialSmoothing class is an implementation of linear exponential smoothing including a trend in notebook... By Hyndman and Athanasopoulos [ 1 ] of your original data if value. The values that have not been set above be optimized by statsmodels. ] ( https //www.otexts.org/fpp/7! Seasonal exponential smoothing, if the fit is performed without a Box-Cox transformation not set... Saying that it is possible to get at the start of each month fit2 as above we choose an (! Comparison simple exponential smoothing Models¶ the ExponentialSmoothing class is an implementation of linear exponential smoothing 1... Be seen in the chapter as they unfold we can perform simulations of future values Holt! This model is available at sm.tsa.ExponentialSmoothing regular ExponentialSmoothing class I tried out coding.