Leaderboards

fasterfastestoverallresidual-k_001residual-k_002residual-k_003residual-k_005residual-k_008residual-k_013residual-k_021residual-k_034special-k_001special-k_002special-k_003special-k_005special-k_008special-k_013special-k_021special-k_034univariate-k_001univariate-k_002univariate-k_003univariate-k_005univariate-k_008univariate-k_013univariate-k_021univariate-k_034

Accuracy and Speed of Some Short Term Automated Time-Series Forecasting Approaches (Python Packages only)

The Elo Ratings in this table are produced transparently in the repo timeseries-elo-ratings and based on k-step ahead prediction duels using live time series data. See METHODOLOGY.md for interpretation of Elo ratings. The table named univariate-k_002 refers to 2-step ahead prediction, and so forth. Residual leaderboards use so-called z-streams (as explained in An Introduction to Z-Streams).

There is some motivation in the blog post Fast Python Time-Series Forecasting. All algorithms utilized here can be called the same way using the TimeMachines Python package. However, as indicated in the table, some of these draw an important part of their functionality (if not all) from other packages such as Facebook Prophet, Statsmodels TSA, Flux, PmdArima, Uber Orbit and more. Take relative performance with with a grain of salt, since many packages don't intend completely autonomous use and some are aimed at longer term seasonal forecasts. If you have a suggestion for a package or technique that should be included, please file an issue or, even better, add a skater and make a pull request. There is a guide for contributors and a long list of popular time-series packages.

Some of these methods are used in real-time to provide free prediction to anyone who publishes public data using a community API explained at microprediction.com. See the example crawlers folder for examples of algorithms calling the timemachines package. See the knowledge center or contributor guide for instructions on publishing live data that can influence these ratings.

NameRatingGamesActiveSecondsDependencies
tsa_p2_d0_q12584.0511yes70.9statsmodels , timemachines
pmd_univariate2458.0510yes6.5pmdarima , timemachines
tsa_precision_d0_ensemble2284.029yes218.8statsmodels , timemachines
tsa_p1_d0_q12234.0185yes37.2statsmodels , timemachines
slowly_moving_average2163.0914yes0.0timemachines
elo_faster_residual_balanced_ensemble2131.0906yes6.8timemachines
thinking_slow_and_fast2120.0959yes0.1timemachines
elo_faster_residual_aggressive_ensemble2116.0487yes13.9timemachines
aggressive_ema_ensemble2107.0711yes0.4timemachines
elo_fastest_residual_aggressive_ensemble2104.0875yes0.9timemachines
sk_autoarima2094.072yes127.4sktime , timemachines
pmd_exogenous_hypocratic2083.0613yes4.5pmdarima , timemachines
tsa_balanced_d0_ensemble2080.012yes2594.0statsmodels , timemachines
elo_faster_residual_precision_ensemble2044.0423yes10.0timemachines
divine_univariate_hypocratic_slow2013.0126yes0.0divinity , timemachines
slow_precision_ema_ensemble2000.0623yes0.5timemachines
elo_fastest_univariate_balanced_ensemble1999.0779yes1.8timemachines
elo_faster_univariate_aggressive_ensemble1997.0550yes-3.1timemachines
slow_aggressive_ema_ensemble1982.0939yes0.3timemachines
fbprophet_cautious1969.0162yes122.3prophet , timemachines
bats_damped_arma1968.09yes1397.4tbats , timemachines
tsa_p3_d0_q01964.0182yes126.7statsmodels , timemachines
tsa_quickly_hypocratic_d0_ensemble1960.037yes196.8statsmodels , timemachines
elo_fastest_residual_balanced_ensemble1959.0679yes0.8timemachines
tsa_slowly_hypocratic_d0_ensemble1956.042yes315.3statsmodels , timemachines
elo_fastest_residual_precision_ensemble1943.0900yes1.8timemachines
bats_damped_bc1932.020yes1089.5tbats , timemachines
merlion_arima1916.031yes58.2timemachines
tsa_p2_d0_q01904.0363yes23.0statsmodels , timemachines
slow_balanced_ema_ensemble1889.0846yes0.3timemachines
bats_trendy_arma_bc1882.012yes1549.1tbats , timemachines
quick_balanced_ema_ensemble1866.0716yes0.3timemachines
gk_basic_skater1864.04yes3756.3greykite , timemachines
bats_damped_arma_bc1856.05no1325.4tbats , timemachines
bats_fast1839.019yes866.4tbats , timemachines
divine_univariate_hypocratic_fast1834.0115yes-0.1divinity , timemachines
tsa_precision_combined_ensemble1826.017yes482.0statsmodels , timemachines
fbprophet_exogenous1825.0142yes165.5prophet , timemachines
bats_trendy1824.019yes857.0tbats , timemachines
divine_univariate1823.0160yes-0.1divinity , timemachines
fbprophet_univariate_hypocratic1817.0130yes179.1prophet , timemachines
tsa_p1_d0_q01816.0433yes20.0statsmodels , timemachines
bats_trendy_bc1795.021yes365.3tbats , timemachines
elo_faster_univariate_balanced_ensemble1794.0482yes8.7timemachines
bats_damped1784.09yes422.4tbats , timemachines
elo_faster_univariate_precision_ensemble1783.0418yes6.4timemachines
thinking_precision_ensemble1774.042yes0.6timemachines
thinking_slow_and_slow1772.0764yes0.1timemachines
tsa_p3_d0_q11763.0132yes90.5statsmodels , timemachines
darts_autoarima1759.019yes166.8darts , timemachines
thinking_fast_and_slow1758.0763yes0.1timemachines
precision_ema_ensemble1751.0730yes0.2timemachines
dlm_univariate_a1709.072no-1.0pydlm , timemachines
balanced_ema_ensemble1708.0663yes0.3timemachines
bats_bc1701.010yes683.3tbats , timemachines
sk_ae1697.0508yes12.4sktime , timemachines
tsa_aggressive_combined_ensemble1692.014yes449.2statsmodels , timemachines
bats_trendy_arma1691.015yes1034.2tbats , timemachines
fbprophet_known1690.0141yes76.4prophet , timemachines
sluggish_moving_average1657.01088yes0.0timemachines
bats_arma1645.012yes2087.2tbats , timemachines
darts_theta1634.031no1.1darts , timemachines
fbprophet_exogenous_hypocratic1619.0103yes77.5prophet , timemachines
sk_ae_add_damped1606.0664yes10.2sktime , timemachines
regress_change_on_first_known16000no-1.0timemachines
tsa_p1_d1_q016000no-1.0statsmodels , timemachines
tsa_p2_d1_q016000no-1.0statsmodels , timemachines
tsa_p3_d1_q016000no-1.0statsmodels , timemachines
sk_ae_mul_damped16000no0.0sktime , timemachines
sk_ae_mul16000no-0.1sktime , timemachines
rvr_p3_d0_q016000no-1.0river , timemachines
rvr_aggressive_ensemble16000no-1.0river , timemachines
pycrt_median_816000no-1.0pycaret , timemachines
pycrt_mean_816000no-1.0pycaret , timemachines
pycrt_median_3_full16000no-5763.9pycaret , timemachines
fbprophet_chaser16000no-1.0prophet , timemachines
darts_nbeats16000no-1.0darts , timemachines
tsa_aggressive_d0_ensemble1599.030yes983.1statsmodels , timemachines
darts_prophet1595.012no94.0darts , timemachines
pycrt_median_31590.02no1918.1pycaret , timemachines
fbprophet_recursive1585.0155yes152.1prophet , timemachines
bats_arma_bc1577.010yes1064.6tbats , timemachines
quick_aggressive_ema_ensemble1565.01374yes0.3timemachines
pycrt_mean_31535.01no3111.9pycaret , timemachines
sk_ae_add1513.0771yes13.9sktime , timemachines
tsa_balanced_combined_ensemble1497.021yes539.1statsmodels , timemachines
elo_fastest_univariate_precision_ensemble1495.0584yes3.1timemachines
fbprophet_cautious_hypocratic1495.080yes81.3prophet , timemachines
rvr_slowly_hypocratic1491.0343yes0.6river , timemachines
suc_quick_aggressive_ema_ensemble1488.028no5.7successor , timemachines
darts_arima1476.054no16.4darts , timemachines
tsa_balanced_theta_ensemble1473.0724yes3.5statsmodels , timemachines
suc_tsa_aggressive_d0_ensemble1455.017yes4.4successor , timemachines
suc_tsa_p2_d0_q11450.028no7.2successor , timemachines
fbprophet_univariate1441.0176yes122.5prophet , timemachines
sk_theta1432.0681yes0.9sktime , timemachines
darts_fft1432.017no0.7darts , timemachines
dlm_univariate_b1422.078no-1.0pydlm , timemachines
nprophet_p51418.0257yes41.6neuralprophet , timemachines
merlion_prophet1398.012yes57.9timemachines
smdk_p5_d0_q3_n500_aggressive1392.0148yes64.9simdkalman , timemachines
darts_four_theta1363.061no1.6darts , timemachines
orbit_lgt_121362.08yes0.0orbit-ml , timemachines
tsa_precision_theta_ensemble1351.0651yes6.2statsmodels , timemachines
darts_exp_smoothing1301.042no10.6darts , timemachines
orbit_lgt_241296.05yes0.0orbit-ml , timemachines
elo_fastest_univariate_aggressive_ensemble1282.0583yes3.9timemachines
rapidly_moving_average1280.0735yes0.0timemachines
thinking_fast_and_fast1270.0690yes0.1timemachines
rvr_balanced_ensemble1260.0454yes0.5river , timemachines
quickly_moving_average1232.01155yes0.0timemachines
rvr_quickly_hypocratic1224.0509yes0.4river , timemachines
quick_precision_ema_ensemble1201.0646yes0.3timemachines
fbprophet_univariate_univariate_hypocratic1199.087yes248.4prophet , timemachines
rvr_p8_d0_q01192.0386yes0.1river , timemachines
nprophet_p31151.0228yes40.4neuralprophet , timemachines
merlion_mses1110.013yes64.4timemachines
nprophet_p11109.0579yes88.2neuralprophet , timemachines
nprophet_p21091.0211yes31.5neuralprophet , timemachines
nprophet_p3_hypocratic1065.0244yes53.5neuralprophet , timemachines
rvr_p1_d0_q01009.0417yes0.0river , timemachines
nprophet_p2_hypocratic997.0187yes54.0neuralprophet , timemachines
smdk_p5_d0_q3_n500976.0234yes56.0simdkalman , timemachines
nprophet_p5_hypocratic954.0209yes61.6neuralprophet , timemachines
nprophet_p1_hypocratic937.0212yes60.6neuralprophet , timemachines
tsa_aggressive_theta_ensemble928.0641yes3.5statsmodels , timemachines
nprophet_p8_hypocratic904.0190yes63.3neuralprophet , timemachines
fbprophet_exogenous_exogenous883.087yes619.6prophet , timemachines
rvr_p5_d0_q0859.0563yes0.1river , timemachines
nprophet_p8858.0174yes78.3neuralprophet , timemachines
empirical_last_value824.0620yes0.1timemachines
smdk_p5_d0_q3_n1000_aggressive779.075yes148.9simdkalman , timemachines
smdk_p5_d0_q3_n1000758.094no157.6simdkalman , timemachines
rvr_p2_d0_q0731.0908yes0.0river , timemachines