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_q12411.0577yes86.3statsmodels , timemachines
tsa_p3_d0_q12272.0159yes77.8statsmodels , timemachines
quick_aggressive_ema_ensemble2227.02695yes0.1timemachines
tsa_p1_d0_q12061.0314yes38.0statsmodels , timemachines
tsa_aggressive_combined_ensemble2034.023yes5620.4statsmodels , timemachines
quick_precision_ema_ensemble1994.01269yes0.1timemachines
darts_autoarima1978.025no63.1darts , timemachines
tsa_p1_d0_q01966.0709yes26.3statsmodels , timemachines
aggressive_ema_ensemble1947.01449yes0.1timemachines
elo_fastest_univariate_aggressive_ensemble1939.01224yes0.9timemachines
slow_precision_ema_ensemble1930.01136yes0.1timemachines
orbit_lgt_121925.03yes32.0orbit-ml , timemachines
slow_balanced_ema_ensemble1916.01738yes0.1timemachines
elo_fastest_residual_precision_ensemble1916.01417yes1.9timemachines
sluggish_moving_average1905.01403yes0.0timemachines
elo_faster_univariate_balanced_ensemble1887.0943yes20.3timemachines
divine_univariate1875.095yes74.5divinity , timemachines
divine_univariate_hypocratic_fast1856.098yes68.5divinity , timemachines
tsa_precision_combined_ensemble1845.054yes292.6statsmodels , timemachines
sk_theta1838.01199yes1.3sktime , timemachines
fbprophet_recursive1837.072yes164.4prophet , timemachines
divine_univariate_hypocratic_slow1835.0147yes-0.1divinity , timemachines
elo_faster_univariate_precision_ensemble1829.01236yes18.7timemachines
slow_aggressive_ema_ensemble1824.01134yes0.3timemachines
bats_trendy1821.035yes841.7tbats , timemachines
pmd_univariate1820.0787yes6.8pmdarima , timemachines
elo_fastest_residual_balanced_ensemble1813.01325yes3.4timemachines
fbprophet_cautious1796.056yes120.1prophet , timemachines
elo_faster_residual_aggressive_ensemble1786.0662yes1.7timemachines
elo_faster_residual_precision_ensemble1785.01003yes1.9timemachines
merlion_arima1785.036yes26.0timemachines
bats_damped_arma1785.021yes1618.5tbats , timemachines
quick_balanced_ema_ensemble1778.01194yes0.1timemachines
bats_trendy_bc1776.035yes1356.9tbats , timemachines
tsa_balanced_combined_ensemble1765.056yes443.8statsmodels , timemachines
bats_arma_bc1762.018yes698.7tbats , timemachines
thinking_slow_and_slow1758.01156yes0.0timemachines
fbprophet_exogenous_hypocratic1757.059yes158.6prophet , timemachines
pmd_exogenous_hypocratic1755.0982yes5.6pmdarima , timemachines
thinking_fast_and_fast1750.01237yes0.0timemachines
elo_faster_residual_balanced_ensemble1735.01049yes1.8timemachines
gk_basic_skater1735.05yes4298.8greykite , timemachines
thinking_fast_and_slow1731.01118yes0.1timemachines
fbprophet_known1728.060yes80.5prophet , timemachines
sk_ae_add_damped1726.01414yes9.6sktime , timemachines
tsa_aggressive_theta_ensemble1724.01672yes2.6statsmodels , timemachines
bats_arma1721.023yes2870.7tbats , timemachines
bats_bc1690.050yes272.2tbats , timemachines
smdk_p5_d0_q3_n500_aggressive1680.0790yes26.3simdkalman , timemachines
tsa_aggressive_d0_ensemble1678.017yes2859.2statsmodels , timemachines
thinking_precision_ensemble1677.060yes0.3timemachines
sk_autoarima1674.0127yes1317.0sktime , timemachines
fbprophet_univariate_hypocratic1671.054yes120.4prophet , timemachines
thinking_slow_and_fast1665.01378yes0.0timemachines
bats_damped_arma_bc1650.013yes1396.8tbats , timemachines
sk_ae1650.01355yes8.2sktime , timemachines
elo_fastest_univariate_precision_ensemble1648.02035yes0.9timemachines
precision_ema_ensemble1648.01722yes0.1timemachines
quickly_moving_average1643.01199yes0.0timemachines
bats_damped_bc1643.034yes1001.3tbats , timemachines
fbprophet_exogenous1641.0110yes80.7prophet , timemachines
smdk_p5_d0_q3_n1000_aggressive1640.0661yes50.4simdkalman , timemachines
fbprophet_univariate1635.0113yes146.4prophet , timemachines
tsa_balanced_d0_ensemble1627.036yes777.2statsmodels , timemachines
bats_trendy_arma_bc1626.025yes1502.6tbats , timemachines
bats_trendy_arma1619.012yes754.2tbats , timemachines
tsa_p3_d0_q01618.0387yes64.3statsmodels , timemachines
tsa_precision_d0_ensemble1617.056yes292.9statsmodels , timemachines
orbit_lgt_2416000yes0.0orbit-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.1sktime , 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
darts_nbeats16000no-1.0darts , timemachines
balanced_ema_ensemble1598.01620yes0.1timemachines
tsa_p2_d0_q01585.0515yes73.9statsmodels , timemachines
darts_theta1578.068no0.8darts , timemachines
smdk_p5_d0_q3_n10001572.0609yes57.0simdkalman , timemachines
nprophet_p31568.0413yes48.7neuralprophet , timemachines
nprophet_p11562.01254yes36.7neuralprophet , timemachines
elo_fastest_residual_aggressive_ensemble1556.01082yes3.8timemachines
elo_faster_univariate_aggressive_ensemble1526.01165yes17.4timemachines
pycrt_mean_81518.01yes3386.1pycaret , timemachines
pycrt_median_31515.01no2389.6pycaret , timemachines
pycrt_median_3_full1505.01yes10324.9pycaret , timemachines
darts_four_theta1504.0111no1.5darts , timemachines
elo_fastest_univariate_balanced_ensemble1501.01255yes0.8timemachines
darts_arima1500.075no12.0darts , timemachines
rvr_quickly_hypocratic1497.0790yes0.4river , timemachines
sk_ae_add1492.02028yes11.5sktime , timemachines
tsa_slowly_hypocratic_d0_ensemble1485.072yes195.0statsmodels , timemachines
rvr_slowly_hypocratic1473.0612yes0.3river , timemachines
slowly_moving_average1455.01614yes0.0timemachines
bats_fast1454.031yes788.6tbats , timemachines
tsa_balanced_theta_ensemble1443.01207yes3.0statsmodels , timemachines
fbprophet_cautious_hypocratic1441.050yes124.5prophet , timemachines
suc_quick_aggressive_ema_ensemble1439.089no4.3successor , timemachines
pycrt_median_81432.02yes2288.3pycaret , timemachines
nprophet_p51425.0442yes36.4neuralprophet , timemachines
pycrt_mean_31419.02no3660.3pycaret , timemachines
suc_tsa_p2_d0_q11417.0100no3.0successor , timemachines
bats_damped1405.016yes345.8tbats , timemachines
nprophet_p2_hypocratic1400.0540yes36.8neuralprophet , timemachines
nprophet_p21396.0657yes30.1neuralprophet , timemachines
darts_fft1390.087no0.7darts , timemachines
darts_exp_smoothing1368.0187no9.9darts , timemachines
nprophet_p5_hypocratic1324.0558yes66.9neuralprophet , timemachines
rapidly_moving_average1309.01451yes0.0timemachines
suc_tsa_aggressive_d0_ensemble1300.05yes1.6successor , timemachines
nprophet_p8_hypocratic1300.0430yes68.9neuralprophet , timemachines
nprophet_p1_hypocratic1296.0467yes48.9neuralprophet , timemachines
fbprophet_univariate_univariate_hypocratic1277.039yes368.5prophet , timemachines
darts_prophet1276.020no77.6darts , timemachines
merlion_prophet1265.029yes44.1timemachines
tsa_precision_theta_ensemble1263.01029yes2.9statsmodels , timemachines
smdk_p5_d0_q3_n5001260.0927yes24.1simdkalman , timemachines
nprophet_p3_hypocratic1243.0456yes38.4neuralprophet , timemachines
nprophet_p81190.0489yes36.7neuralprophet , timemachines
fbprophet_exogenous_exogenous1169.045yes321.5prophet , timemachines
empirical_last_value1109.0870yes0.0timemachines
rvr_balanced_ensemble1058.0719yes0.3river , timemachines
rvr_p5_d0_q01019.0581yes0.1river , timemachines
rvr_p2_d0_q0914.0746yes0.0river , timemachines
tsa_quickly_hypocratic_d0_ensemble885.054yes4522.7statsmodels , timemachines
rvr_p8_d0_q0842.0610yes0.1river , timemachines
rvr_p1_d0_q0834.0904yes0.1river , timemachines
merlion_mses771.013yes184.6timemachines