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_balanced_d0_ensemble2385.023yes297.4statsmodels , timemachines
tsa_precision_d0_ensemble2327.035yes295.4statsmodels , timemachines
sluggish_moving_average2325.0706yes0.1timemachines
pmd_exogenous_hypocratic2296.0630yes10.9pmdarima , timemachines
tsa_balanced_combined_ensemble2292.033yes315.7statsmodels , timemachines
elo_faster_univariate_precision_ensemble2269.0587yes47.8timemachines
elo_fastest_residual_precision_ensemble2265.0680yes3.3timemachines
elo_fastest_residual_aggressive_ensemble2264.0623yes3.0timemachines
tsa_p3_d0_q12263.0162yes127.7statsmodels , timemachines
suc_tsa_aggressive_d0_ensemble2262.014yes8.3successor , timemachines
tsa_p2_d0_q12203.0557yes111.0statsmodels , timemachines
divine_univariate2168.0155yes-0.1divinity , timemachines
slow_balanced_ema_ensemble2098.0646yes0.6timemachines
tsa_p1_d0_q02096.0451yes20.1statsmodels , timemachines
fbprophet_exogenous_hypocratic2086.0178yes240.1prophet , timemachines
elo_faster_residual_balanced_ensemble2065.0452yes74.0timemachines
tsa_p1_d0_q12059.0237yes124.0statsmodels , timemachines
elo_fastest_univariate_balanced_ensemble2033.0703yes1.9timemachines
thinking_slow_and_fast2019.01141yes0.1timemachines
tsa_p3_d0_q01960.0181yes20.1statsmodels , timemachines
slowly_moving_average1959.0917yes0.1timemachines
elo_fastest_univariate_aggressive_ensemble1955.0636yes2.4timemachines
thinking_slow_and_slow1955.0694yes0.1timemachines
bats_trendy_arma_bc1950.019yes1093.7tbats , timemachines
bats_trendy_arma1947.013yes989.6tbats , timemachines
merlion_prophet1944.023yes33.1timemachines
divine_univariate_hypocratic_fast1930.083yes85.2divinity , timemachines
thinking_fast_and_slow1921.0731yes0.3timemachines
elo_faster_univariate_balanced_ensemble1920.0446yes38.7timemachines
slow_precision_ema_ensemble1919.0678yes1.6timemachines
bats_arma1909.011yes785.4tbats , timemachines
tsa_aggressive_d0_ensemble1909.016yes3262.6statsmodels , timemachines
fbprophet_cautious1890.0108yes239.9prophet , timemachines
divine_univariate_hypocratic_slow1889.098yes-0.1divinity , timemachines
darts_autoarima1885.012yes183.1darts , timemachines
pmd_univariate1883.0564yes6.7pmdarima , timemachines
tsa_p2_d0_q01876.0139yes74.2statsmodels , timemachines
gk_basic_skater1874.07yes4213.5greykite , timemachines
bats_damped_arma_bc1873.014yes2700.8tbats , timemachines
aggressive_ema_ensemble1871.0722yes0.5timemachines
sk_autoarima1864.073yes223.0sktime , timemachines
tsa_balanced_theta_ensemble1860.0580yes3.1statsmodels , timemachines
rvr_quickly_hypocratic1858.0400yes0.8river , timemachines
thinking_precision_ensemble1855.042yes1.1timemachines
merlion_arima1854.046yes61.7timemachines
slow_aggressive_ema_ensemble1846.0826yes-0.6timemachines
elo_faster_univariate_aggressive_ensemble1832.0531yes29.7timemachines
bats_arma_bc1826.031yes790.2tbats , timemachines
tsa_aggressive_combined_ensemble1814.039yes609.2statsmodels , timemachines
fbprophet_recursive1811.0117yes97.8prophet , timemachines
elo_fastest_residual_balanced_ensemble1794.0562yes3.0timemachines
bats_bc1775.020yes1040.2tbats , timemachines
bats_trendy1755.022yes308.2tbats , timemachines
bats_trendy_bc1754.020yes385.3tbats , timemachines
fbprophet_known1744.0127yes148.1prophet , timemachines
bats_fast1733.015yes-14.9tbats , timemachines
dlm_univariate_a1727.017no-1.0pydlm , timemachines
elo_faster_residual_aggressive_ensemble1697.0427yes-11.3timemachines
tsa_precision_theta_ensemble1697.0585yes5.7statsmodels , timemachines
quick_balanced_ema_ensemble1692.0669yes0.6timemachines
tsa_slowly_hypocratic_d0_ensemble1686.029yes1801.7statsmodels , timemachines
darts_theta1677.044no1.3darts , timemachines
quick_precision_ema_ensemble1675.0846yes0.6timemachines
rvr_slowly_hypocratic1663.0372yes0.9river , timemachines
bats_damped1660.06yes852.0tbats , timemachines
sk_ae_add1648.01155yes17.5sktime , timemachines
darts_fft1633.056no0.9darts , timemachines
sk_theta1629.0646yes-0.1sktime , timemachines
sk_ae_add_damped1624.0714yes10.9sktime , timemachines
suc_quick_aggressive_ema_ensemble1616.051no8.6successor , timemachines
quickly_moving_average1611.0999yes0.0timemachines
elo_faster_residual_precision_ensemble1604.0504yes21.0timemachines
fbprophet_univariate1602.0147yes123.7prophet , 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_mul_damped16000no-0.1sktime , timemachines
sk_ae_mul16000no-1.0sktime , timemachines
rvr_p3_d0_q016000no-1.0river , timemachines
rvr_aggressive_ensemble16000no-1.0river , timemachines
pycrt_mean_816000no-0.1pycaret , timemachines
pycrt_mean_316000no-0.7pycaret , timemachines
pycrt_median_3_full16000no-1.0pycaret , timemachines
pycrt_median_316000no-2.0pycaret , timemachines
darts_nbeats16000no-1.0darts , timemachines
balanced_ema_ensemble1595.0669yes0.9timemachines
fbprophet_univariate_hypocratic1580.0139yes125.0prophet , timemachines
precision_ema_ensemble1579.0744yes0.5timemachines
fbprophet_exogenous1576.0122yes225.2prophet , timemachines
elo_fastest_univariate_precision_ensemble1564.0945yes4.7timemachines
tsa_aggressive_theta_ensemble1560.0943yes5.0statsmodels , timemachines
darts_arima1555.055no10.3darts , timemachines
dlm_univariate_b1543.025no-1.0pydlm , timemachines
darts_four_theta1541.047no1.3darts , timemachines
darts_prophet1540.016no78.9darts , timemachines
bats_damped_arma1500.011yes1663.6tbats , timemachines
tsa_precision_combined_ensemble1499.022yes452.7statsmodels , timemachines
fbprophet_univariate_univariate_hypocratic1481.0116yes439.2prophet , timemachines
pycrt_median_81448.01yes2596.4pycaret , timemachines
bats_damped_bc1438.010yes365.3tbats , timemachines
fbprophet_cautious_hypocratic1407.084yes127.1prophet , timemachines
sk_ae1392.0743yes16.9sktime , timemachines
tsa_quickly_hypocratic_d0_ensemble1382.059yes202.0statsmodels , timemachines
darts_exp_smoothing1372.088no9.9darts , timemachines
thinking_fast_and_fast1326.0713yes0.3timemachines
rvr_balanced_ensemble1313.0472yes0.6river , timemachines
merlion_mses1263.019yes72.2timemachines
rvr_p5_d0_q01260.0320yes0.1river , timemachines
quick_aggressive_ema_ensemble1231.01250yes0.6timemachines
orbit_lgt_241114.09yes-1.6orbit-ml , timemachines
suc_tsa_p2_d0_q11098.048no10.1successor , timemachines
rapidly_moving_average1078.0711yes0.1timemachines
empirical_last_value1067.0546yes0.0timemachines
rvr_p1_d0_q01056.0564yes0.1river , timemachines
fbprophet_exogenous_exogenous1037.0109yes823.0prophet , timemachines
rvr_p8_d0_q0976.0464yes0.0river , timemachines
nprophet_p2876.0149yes74.7neuralprophet , timemachines
rvr_p2_d0_q0857.0453yes0.0river , timemachines
nprophet_p1_hypocratic850.0172yes74.8neuralprophet , timemachines
nprophet_p5825.0201yes52.2neuralprophet , timemachines
nprophet_p3813.0222yes72.1neuralprophet , timemachines
nprophet_p8772.0208yes71.0neuralprophet , timemachines
smdk_p5_d0_q3_n1000671.011yes244.2simdkalman , timemachines
nprophet_p8_hypocratic606.0164yes51.8neuralprophet , timemachines
nprophet_p2_hypocratic527.0155yes65.8neuralprophet , timemachines
smdk_p5_d0_q3_n1000_aggressive526.014yes226.2simdkalman , timemachines
nprophet_p3_hypocratic454.0219yes79.8neuralprophet , timemachines
nprophet_p5_hypocratic451.0295yes50.0neuralprophet , timemachines
nprophet_p1379.0178yes73.0neuralprophet , timemachines
smdk_p5_d0_q3_n500_aggressive238.037yes174.6simdkalman , timemachines
smdk_p5_d0_q3_n500-66.0135yes143.1simdkalman , timemachines