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_q12332.0847yes126.9statsmodels , timemachines
bats_damped_bc2225.019yes1419.1tbats , timemachines
quick_aggressive_ema_ensemble2213.03482yes0.2timemachines
tsa_p3_d0_q12208.0283yes186.6statsmodels , timemachines
elo_faster_residual_aggressive_ensemble2159.01810yes5.0timemachines
sk_theta2150.02299yes0.7sktime , timemachines
tsa_precision_combined_ensemble2125.015yes14940.8statsmodels , timemachines
orbit_lgt_242103.014yes72.5orbit-ml , timemachines
elo_faster_univariate_aggressive_ensemble2061.01940yes385.6timemachines
tsa_p1_d0_q12060.0352yes427.1statsmodels , timemachines
sk_autoarima2049.0152yes429.1sktime , timemachines
bats_damped2020.031yes652.2tbats , timemachines
tsa_p1_d0_q02018.01351yes29.0statsmodels , timemachines
balanced_ema_ensemble2016.02029yes0.1timemachines
bats_trendy_arma_bc1984.028yes787.7tbats , timemachines
elo_faster_univariate_precision_ensemble1984.01615yes1.1timemachines
tsa_balanced_theta_ensemble1966.02633yes3.7statsmodels , timemachines
slow_balanced_ema_ensemble1965.02449yes0.1timemachines
slow_aggressive_ema_ensemble1965.02695yes0.1timemachines
quick_precision_ema_ensemble1957.02005yes0.1timemachines
tsa_balanced_combined_ensemble1934.082yes1486.2statsmodels , timemachines
elo_faster_univariate_balanced_ensemble1924.01624yes0.8timemachines
tsa_p2_d0_q01909.01068yes115.3statsmodels , timemachines
bats_damped_arma_bc1900.030yes736.5tbats , timemachines
smdk_p5_d0_q3_n1000_aggressive1898.02344yes20.7simdkalman , timemachines
orbit_lgt_121898.019yes30.5orbit-ml , timemachines
tsa_aggressive_theta_ensemble1896.02138yes9.0statsmodels , timemachines
slow_precision_ema_ensemble1876.01959yes0.1timemachines
bats_trendy_bc1874.060yes1260.6tbats , timemachines
divine_univariate_hypocratic_fast1870.0238yes-0.1divinity , timemachines
divine_univariate1870.0299yes80.9divinity , timemachines
precision_ema_ensemble1864.02232yes0.2timemachines
empirical_last_value1857.01622yes0.0timemachines
bats_trendy_arma1849.023yes753.7tbats , timemachines
tsa_precision_d0_ensemble1847.067yes499.3statsmodels , timemachines
bats_damped_arma1847.034yes614.4tbats , timemachines
bats_arma1845.019yes1013.6tbats , timemachines
tsa_precision_theta_ensemble1843.02139yes4.8statsmodels , timemachines
divine_univariate_hypocratic_slow1838.0218yes-0.1divinity , timemachines
nprophet_p21833.0848yes46.4neuralprophet , timemachines
thinking_fast_and_slow1827.02184yes0.0timemachines
elo_faster_residual_balanced_ensemble1824.03409yes12.3timemachines
sk_ae_add1810.02173yes14.4sktime , timemachines
darts_arima1808.0187no10.8darts , timemachines
elo_fastest_univariate_aggressive_ensemble1805.01903yes1.5timemachines
elo_fastest_residual_precision_ensemble1783.03041yes0.7timemachines
elo_fastest_univariate_balanced_ensemble1777.02549yes1.3timemachines
sk_ae_add_damped1776.01961yes31.4sktime , timemachines
darts_theta1775.0201no1.2darts , timemachines
darts_autoarima1769.026no110.2darts , timemachines
tsa_balanced_d0_ensemble1755.054yes787.2statsmodels , timemachines
bats_trendy1749.053yes809.5tbats , timemachines
elo_fastest_residual_balanced_ensemble1745.02277yes1.1timemachines
nprophet_p11731.02094yes50.0neuralprophet , timemachines
bats_fast1730.069yes0.3tbats , timemachines
elo_fastest_residual_aggressive_ensemble1723.03363yes0.8timemachines
bats_bc1716.057yes345.2tbats , timemachines
elo_fastest_univariate_precision_ensemble1695.01996yes350.4timemachines
tsa_aggressive_combined_ensemble1688.027yes947.5statsmodels , timemachines
tsa_aggressive_d0_ensemble1686.089yes307.5statsmodels , timemachines
pycrt_mean_81680.01yes4418.7pycaret , timemachines
merlion_arima1657.040yes23.2timemachines
elo_faster_residual_precision_ensemble1651.01473yes3.3timemachines
sk_ae1639.01613yes11.8sktime , timemachines
nprophet_p8_hypocratic1637.0953yes47.5neuralprophet , timemachines
darts_exp_smoothing1629.0254no10.2darts , timemachines
fbprophet_chaser1612.052no-1.0prophet , 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-1.0sktime , timemachines
rvr_p3_d0_q016000no-1.0river , timemachines
rvr_aggressive_ensemble16000no-1.0river , timemachines
darts_nbeats16000no-1.0darts , timemachines
aggressive_ema_ensemble1594.02171yes0.1timemachines
nprophet_p3_hypocratic1588.0974yes61.6neuralprophet , timemachines
smdk_p5_d0_q3_n5001586.02737yes18.0simdkalman , timemachines
darts_four_theta1562.0229no1.0darts , timemachines
thinking_fast_and_fast1545.01833yes0.0timemachines
quick_balanced_ema_ensemble1529.01968yes0.1timemachines
pycrt_median_3_full1522.01yes12096.1pycaret , timemachines
dlm_univariate_b1515.059no-1.0pydlm , timemachines
fbprophet_univariate1509.0307yes78.6prophet , timemachines
pycrt_median_81507.02yes4621.6pycaret , timemachines
tsa_slowly_hypocratic_d0_ensemble1500.0156yes444.6statsmodels , timemachines
fbprophet_exogenous_exogenous1498.0104yes311.1prophet , timemachines
nprophet_p81495.0810yes46.4neuralprophet , timemachines
nprophet_p2_hypocratic1491.0931yes61.4neuralprophet , timemachines
nprophet_p5_hypocratic1488.0844yes36.4neuralprophet , timemachines
fbprophet_cautious1468.0218yes221.4prophet , timemachines
nprophet_p31467.0814yes60.0neuralprophet , timemachines
merlion_prophet1466.030yes65.5timemachines
nprophet_p1_hypocratic1466.0882yes66.8neuralprophet , timemachines
bats_arma_bc1457.023yes2242.1tbats , timemachines
pycrt_mean_31454.01yes1783.6pycaret , timemachines
thinking_precision_ensemble1448.0142yes0.1timemachines
quickly_moving_average1435.03137yes0.0timemachines
dlm_univariate_a1406.078no-1.0pydlm , timemachines
fbprophet_univariate_hypocratic1392.0143yes86.4prophet , timemachines
pycrt_median_31390.02no-286.3pycaret , timemachines
smdk_p5_d0_q3_n10001389.01232yes21.7simdkalman , timemachines
tsa_p3_d0_q01378.0610yes44.0statsmodels , timemachines
slowly_moving_average1375.02692yes0.0timemachines
fbprophet_univariate_univariate_hypocratic1337.0120yes250.2prophet , timemachines
fbprophet_known1336.0199yes90.3prophet , timemachines
nprophet_p51306.01226yes37.1neuralprophet , timemachines
fbprophet_cautious_hypocratic1282.0132yes146.9prophet , timemachines
smdk_p5_d0_q3_n500_aggressive1281.01509yes10.3simdkalman , timemachines
tsa_quickly_hypocratic_d0_ensemble1280.0110yes652.5statsmodels , timemachines
fbprophet_exogenous_hypocratic1265.0139yes184.2prophet , timemachines
darts_fft1245.0154no0.7darts , timemachines
thinking_slow_and_slow1243.02154yes0.0timemachines
darts_prophet1205.048yes81.7darts , timemachines
rapidly_moving_average1180.02440yes0.0timemachines
pmd_exogenous_hypocratic1159.01639yes6.9pmdarima , timemachines
merlion_mses1121.019yes158.3timemachines
fbprophet_exogenous1104.0205yes166.1prophet , timemachines
rvr_balanced_ensemble1092.01331yes0.3river , timemachines
suc_quick_aggressive_ema_ensemble1078.0174no1.3successor , timemachines
rvr_p5_d0_q01054.01607yes0.1river , timemachines
rvr_p1_d0_q01049.01232yes0.0river , timemachines
rvr_p2_d0_q01043.02842yes0.0river , timemachines
gk_basic_skater1023.08yes3563.0greykite , timemachines
fbprophet_recursive998.0208yes127.0prophet , timemachines
thinking_slow_and_fast991.02134yes0.0timemachines
rvr_p8_d0_q0983.01055yes0.1river , timemachines
suc_tsa_p2_d0_q1906.0186no1.4successor , timemachines
rvr_slowly_hypocratic906.01029yes0.3river , timemachines
sluggish_moving_average879.03291yes0.0timemachines
rvr_quickly_hypocratic835.01651yes0.3river , timemachines
pmd_univariate622.01548yes7.5pmdarima , timemachines
suc_tsa_aggressive_d0_ensemble472.029yes1.4successor , timemachines