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
merlion_arima2282.020yes29.9timemachines
tsa_balanced_combined_ensemble2275.014yes1634.6statsmodels , timemachines
tsa_p3_d0_q12221.0117yes120.0statsmodels , timemachines
elo_faster_univariate_aggressive_ensemble2172.0582yes24.3timemachines
tsa_precision_d0_ensemble2139.038yes142.9statsmodels , timemachines
elo_fastest_univariate_precision_ensemble2138.0931yes1.9timemachines
sk_autoarima2119.054yes108.2sktime , timemachines
tsa_p2_d0_q02110.0196yes15.3statsmodels , timemachines
elo_faster_univariate_balanced_ensemble2064.0453yes38.4timemachines
elo_fastest_residual_aggressive_ensemble2053.0608yes1.4timemachines
tsa_quickly_hypocratic_d0_ensemble2049.038yes3799.3statsmodels , timemachines
tsa_balanced_d0_ensemble2046.025yes136.8statsmodels , timemachines
tsa_slowly_hypocratic_d0_ensemble2034.045yes174.9statsmodels , timemachines
thinking_slow_and_slow2029.0666yes0.3timemachines
bats_trendy_arma2002.011yes1179.8tbats , timemachines
bats_damped_arma_bc2000.011yes1478.7tbats , timemachines
fbprophet_exogenous1989.040yes164.3prophet , timemachines
fbprophet_univariate1988.064yes82.4prophet , timemachines
sluggish_moving_average1978.0832yes0.0timemachines
elo_fastest_residual_precision_ensemble1966.0718yes2.6timemachines
tsa_p1_d0_q11958.0288yes114.9statsmodels , timemachines
bats_trendy_bc1952.015yes368.9tbats , timemachines
elo_faster_residual_precision_ensemble1945.0518yes10.0timemachines
pmd_univariate1938.0456yes5.1pmdarima , timemachines
thinking_slow_and_fast1934.0708yes0.1timemachines
pmd_exogenous_hypocratic1934.0534yes3.4pmdarima , timemachines
aggressive_ema_ensemble1928.0772yes1.2timemachines
fbprophet_exogenous_hypocratic1922.052yes82.6prophet , timemachines
divine_univariate_hypocratic_slow1904.078yes-0.1divinity , timemachines
rvr_quickly_hypocratic1897.0376no0.2river , timemachines
sk_ae1895.0803yes14.3sktime , timemachines
divine_univariate_hypocratic_fast1891.057yes95.2divinity , timemachines
elo_faster_univariate_precision_ensemble1888.0617yes2.8timemachines
sk_ae_add1884.01100yes9.0sktime , timemachines
slow_precision_ema_ensemble1881.0645yes0.2timemachines
suc_quick_aggressive_ema_ensemble1871.027no7.9successor , timemachines
tsa_aggressive_combined_ensemble1869.020yes168.8statsmodels , timemachines
tsa_precision_combined_ensemble1865.018yes812.3statsmodels , timemachines
elo_fastest_univariate_aggressive_ensemble1863.0666yes2.3timemachines
bats_trendy1861.024yes1098.9tbats , timemachines
rvr_slowly_hypocratic1859.0353yes0.2river , timemachines
elo_fastest_univariate_balanced_ensemble1853.0713yes2.0timemachines
fbprophet_univariate_hypocratic1845.046yes135.8prophet , timemachines
suc_tsa_aggressive_d0_ensemble1841.03yes10.3successor , timemachines
tsa_aggressive_d0_ensemble1833.029yes149.1statsmodels , timemachines
elo_faster_residual_balanced_ensemble1824.0474yes38.8timemachines
merlion_prophet1822.05yes41.9timemachines
elo_faster_residual_aggressive_ensemble1819.0393yes15.4timemachines
slowly_moving_average1818.0966yes0.1timemachines
balanced_ema_ensemble1795.0924yes0.1timemachines
tsa_balanced_theta_ensemble1787.0573yes5.0statsmodels , timemachines
tsa_p3_d0_q01785.0343yes55.8statsmodels , timemachines
gk_basic_skater1775.03yes4430.5greykite , timemachines
slow_aggressive_ema_ensemble1772.0618yes0.2timemachines
divine_univariate1769.051yes-0.1divinity , timemachines
darts_autoarima1768.016no115.3darts , timemachines
thinking_fast_and_slow1766.0643yes0.1timemachines
bats_trendy_arma_bc1763.017yes684.5tbats , timemachines
bats_damped1743.09yes789.3tbats , timemachines
bats_damped_bc1741.016yes884.7tbats , timemachines
bats_damped_arma1726.08yes852.0tbats , timemachines
elo_fastest_residual_balanced_ensemble1712.0555yes2.4timemachines
thinking_precision_ensemble1697.024yes2.8timemachines
tsa_p2_d0_q11694.0257yes50.5statsmodels , timemachines
darts_fft1693.027no0.7darts , timemachines
precision_ema_ensemble1662.01055yes0.1timemachines
bats_arma_bc1658.09yes947.1tbats , timemachines
rapidly_moving_average1639.0818yes0.1timemachines
tsa_p1_d0_q01630.0455yes21.6statsmodels , timemachines
fbprophet_recursive1623.047yes83.1prophet , timemachines
tsa_aggressive_theta_ensemble1621.0958yes3.1statsmodels , timemachines
sk_theta1617.0643yes0.8sktime , timemachines
fbprophet_univariate_univariate_hypocratic1608.041yes365.1prophet , timemachines
pycrt_mean_816000yes-1.0pycaret , timemachines
pycrt_median_3_full16000yes-1.0pycaret , timemachines
orbit_lgt_2416000yes-0.1orbit-ml , timemachines
orbit_lgt_1216000yes-0.1orbit-ml , 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_mul16000no-0.1sktime , timemachines
sk_ae_mul_damped16000no-0.3sktime , timemachines
rvr_p3_d0_q016000no-1.0river , timemachines
rvr_aggressive_ensemble16000no-1.0river , timemachines
dlm_univariate_a16000no-1.0pydlm , timemachines
dlm_univariate_b16000no-1.0pydlm , timemachines
pycrt_median_816000no-0.1pycaret , timemachines
pycrt_median_316000no-1.0pycaret , timemachines
pycrt_mean_316000no-1.0pycaret , timemachines
darts_nbeats16000no-0.2darts , timemachines
darts_prophet1600.024yes74.3darts , timemachines
darts_arima1599.036no8.4darts , timemachines
fbprophet_known1598.089yes166.1prophet , timemachines
rvr_p1_d0_q01587.0624yes0.0river , timemachines
quick_balanced_ema_ensemble1580.0665yes0.6timemachines
bats_arma1516.017yes1110.7tbats , timemachines
darts_theta1514.043yes1.3darts , timemachines
rvr_balanced_ensemble1493.0427yes0.4river , timemachines
quick_precision_ema_ensemble1478.0761yes1.1timemachines
sk_ae_add_damped1464.0832yes12.8sktime , timemachines
bats_bc1463.024yes262.7tbats , timemachines
merlion_mses1462.08yes98.2timemachines
bats_fast1459.010yes179.6tbats , timemachines
quickly_moving_average1420.0723yes0.0timemachines
darts_exp_smoothing1419.067no9.7darts , timemachines
darts_four_theta1401.043no1.4darts , timemachines
fbprophet_cautious1398.035yes126.3prophet , timemachines
slow_balanced_ema_ensemble1369.0901yes0.6timemachines
tsa_precision_theta_ensemble1348.0582yes5.6statsmodels , timemachines
fbprophet_exogenous_exogenous1321.044yes224.7prophet , timemachines
quick_aggressive_ema_ensemble1301.01501yes0.7timemachines
fbprophet_cautious_hypocratic1215.041yes76.8prophet , timemachines
rvr_p8_d0_q01214.0380yes0.0river , timemachines
rvr_p5_d0_q01166.0342yes0.1river , timemachines
suc_tsa_p2_d0_q11082.021yes10.2successor , timemachines
empirical_last_value1055.0571yes0.1timemachines
rvr_p2_d0_q0990.0500yes0.0river , timemachines
thinking_fast_and_fast982.0657yes0.1timemachines
nprophet_p1_hypocratic831.0150yes137.9neuralprophet , timemachines
nprophet_p3_hypocratic801.0200yes108.2neuralprophet , timemachines
nprophet_p1773.0320yes64.6neuralprophet , timemachines
smdk_p5_d0_q3_n1000756.014yes188.2simdkalman , timemachines
nprophet_p3745.0168yes50.7neuralprophet , timemachines
nprophet_p8744.0180yes67.0neuralprophet , timemachines
nprophet_p2710.0228yes42.2neuralprophet , timemachines
nprophet_p2_hypocratic682.0142yes55.3neuralprophet , timemachines
nprophet_p5637.0146yes67.2neuralprophet , timemachines
nprophet_p5_hypocratic490.0264yes72.9neuralprophet , timemachines
nprophet_p8_hypocratic448.0173yes57.0neuralprophet , timemachines
smdk_p5_d0_q3_n500_aggressive319.049no57.3simdkalman , timemachines
smdk_p5_d0_q3_n1000_aggressive319.026yes234.1simdkalman , timemachines
smdk_p5_d0_q3_n500-40.065yes133.4simdkalman , timemachines