mrkeyoor.com_
Sun 01 Nov 23:34 UTC
Dataevaluationupdated 31 Oct 2026

Kronos review

Use Kronos for a financial-candlestick forecasting experiment if you can establish an unseen evaluation period and compare it with simpler forecasts. Its included trading pipeline is a demonstration. Our run on October 4, 2026, at commit 67b630e did not produce a green test result; it did not establish forecast accuracy, trading returns or deployment reliability. Kronos is a Python model family that tokenizes market candles and predicts subsequent tokens with a Transformer.

+820stars / 7d
Verdict

Evaluate Kronos as a specialized forecasting candidate once you can defend the checkpoint's evaluation window. Our October 4, 2026 run at commit 67b630e established installation and recorded test failures, not forecasting or trading performance. Keep the experiment reproducible, compare baselines on identical dates, and resolve checkpoint provenance before reporting out-of-sample results.

We ran it

Lab card: what happened when we ran KronosScreenshot of Kronos (github.com/shiyu-coder/Kronos)
Install✓ · 63s80 packages · 5519 MB
Build✓ · 1s
Tests✗ · 313s2 passed · 2 failed · 1 errors of 5 (pytest)
Known vulns0(pip-audit)
Repo92 files~11,260 lines of source · 16.8 MB · 0 CI workflows · tests dir

Answers from our run

Does Kronos build from source?

Dependencies installed in 63 seconds (80 packages), and the build succeeded in 1 seconds. We cloned commit 67b630e into a clean Debian container with 3 CPUs and no project-specific setup.

Do Kronos's tests pass?

No. The project's own test command finished in 313 seconds and reported 2 passed, 2 failed, 1 collection error (pytest).

Does Kronos have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use Kronos?

Readers seeking a ready-to-deploy trading strategy with validated returns after costs.

What are the alternatives to Kronos?

Chronos Forecasting, NeuralForecast. Evaluate Kronos as a specialized forecasting candidate once you can defend the checkpoint's evaluation window.

Setup2/5Substantial unresolved barriers: installation succeeded in 63 seconds, but the recorded footprint was 5,519 MB and the test command exited 1.
Docs4/5Strong documented support: inference, batch prediction and fine-tuning have concrete instructions, but the supplied evidence does not confirm released-checkpoint training cutoffs.
CommunityN/AThe supplied primary extracts do not establish participation trends, maintainer responsiveness or current adoption sufficiently to rate community.
Maturity2/5Substantial unresolved barriers: the recorded checkout had no detected CI workflows and our test command failed; workload reliability and forecast quality were not established.

Who it’s for

Quant researchers evaluating pretrained models on financial candles.
Python teams that can document checkpoint provenance and construct an evaluation period without pretraining overlap.
Qlib users prepared to adapt the Chinese A-share example and configure their own data and training paths.

Who it’s NOT for

Readers seeking a ready-to-deploy trading strategy with validated returns after costs.
Researchers who require confirmed training cutoffs for the released checkpoints before beginning evaluation.
Teams that need a passing sandbox test result as an acceptance condition.
Users who require the listed Kronos-large weights, which the supplied model table marks unavailable.

Setup reality

In our October 4, 2026 sandbox run at commit 67b630e, installation succeeded in 63 seconds. The attached harness records 80 dependency packages and a 5,519 MB footprint. Its build step returned zero in 1 second, with an empty output tail; that does not establish that an inference workload or deployment worked.

The test command exited 1 after 313 seconds. The stored parser summary records 2 passed, 2 failed, 1 error and 0 skipped, with total 5. These are stored parser summaries, not verified exhaustive counts of unique tests. Separately, the raw footer names two regression cases that exceeded pytest's 120-second timeout and an error in finetune/qlib_test.py. The overall test command did not hit the harness timeout.

The recorded sandbox had 3 CPUs, 8 GB RAM and a Python 3.12 Bookworm image. The checkout had no detected CI workflow files or Dockerfile. Pip-audit recorded 0 advisories, but scannedPackages is absent, so scan coverage is unknown. This was not a security review.

The README requires Python 3.10 or newer and Hugging Face model and tokenizer downloads. Fine-tuning adds pyqlib, locally prepared Qlib data, configured paths and two training stages designed for multi-GPU execution. No new execution was performed for this correction.

Should you evaluate Kronos?

Choose Kronos when financial candles are the object of your research and you can verify the evaluation dates against the released checkpoint's training history. Start with a baseline comparison before investing in fine-tuning. The supplied evidence establishes a documented forecasting interface and an unsuccessful sandbox test command; it does not establish profitable trading or superior forecasts on your data.

The README describes the included Qlib pipeline as a simplified demonstration rather than a production-ready quantitative trading system. Its production considerations include portfolio construction, risk controls, transaction costs, slippage and market impact. Those are additional evaluation and implementation tasks.

What our sandbox established

In our October 4, 2026 sandbox run at commit 67b630e, installation succeeded in 63 seconds. The attached harness records 80 dependency packages and a 5,519 MB footprint. The build step returned zero in 1 second, but its empty output tail provides no evidence of a completed forecasting workload.

The test command exited 1 after 313 seconds. Its stored parser summary is 2 passed, 2 failed, 1 error and 0 skipped, with total 5. These counts have not been reconciled against complete logs to establish exhaustive unique test coverage.

The raw footer separately identifies timeouts in test_kronos_predictor_mse[512-0.008979] and test_kronos_predictor_mse[256-0.003741], both in tests/test_kronos_regression.py. Each exceeded pytest's 120-second limit. It also names ERROR finetune/qlib_test.py, without enough detail to assign a cause. The raw footer reports 308.10 seconds; the attached harness records 313 seconds for the command. These are different recorded timings, and neither replaces the other.

Our harness stores command success, exit codes, elapsed time, timeout status, output tails and parsed test counts. The MrKeyoor testing-methodology page explains that reporting approach and its limits. It is provenance context, not evidence that this older run used today's procedure. This correction uses the existing record and does not report a new run.

Pip-audit recorded 0 advisories. The record does not include scannedPackages, so package scan coverage is unknown. A zero advisory count does not establish security. Forecast quality, returns after costs, Windows behavior, sustained service operation and multi-GPU fine-tuning were not established by our run.

Confirm checkpoint provenance before choosing test dates

The supplied README describes training across more than 45 exchanges but does not specify the corpus's temporal range. Issue 265 asks for training dates, US equity coverage and a clean evaluation window.

A September comment in that issue says the paper describes pretraining through June 2024, then asks whether the released Hugging Face weights share that cutoff. That is a commenter's account and an unanswered provenance question in the supplied extract. It does not confirm the cutoff of the checkpoint you download. Another comment alleges leakage; the supplied evidence does not establish that allegation as a finding.

Record the exact model and tokenizer revisions, then seek confirmation of their latest training dates and asset coverage. Until that is resolved, label a historical comparison's pretraining overlap as unknown rather than calling its dates unseen.

Match the documented interface to your data

Kronos requires historical open, high, low and close columns, historical timestamps and future timestamps. Volume and amount are optional. The predictor returns forecast values in a pandas DataFrame. Sampling settings include temperature, top-p and sample count; record them with the checkpoint revisions so another researcher can reproduce the configuration.

The model table lists mini with a 2,048-step context and small and base with 512 steps. The predictor truncates longer inputs for small and base. Batch prediction requires equal history lengths and equal forecast lengths across series. The listed large checkpoint has no available weights in the supplied table.

Fine-tuning is a separate setup commitment. The example uses daily Chinese A-share data prepared through Qlib, configurable dataset and checkpoint paths, and successive tokenizer and predictor training stages. Other data formats require adapting the example's loading and preprocessing logic. The README also warns that generated comments in the fine-tuning directory may contain inaccuracies; check the implementation when a comment affects an experimental decision.

Choose comparison tools by the question

Chronos-2 supports zero-shot univariate, multivariate and covariate-informed forecasting. Its repository makes it a candidate when your experiment needs a general forecasting model or external variables. That documented scope does not establish better performance on financial candles.

NeuralForecast provides a collection of neural forecasting models with fit and predict interfaces. Use its repository when you want to train several neural baselines under a common interface. It can complement a Kronos evaluation rather than replace the pretrained checkpoint. Neither alternative supplies the missing provenance for Kronos or validates a trading strategy.

For the next experiment, fix the evaluation dates and inputs, include a last-value baseline, and compare forecast errors before adding a trading rule. If you evaluate a strategy, specify costs and execution assumptions separately. Our sandbox results cannot answer either performance question.

How to read the editorial ratings

These ratings describe the supplied evidence, not benchmark performance. The rubric is: 1 means major barriers, 2 means substantial unresolved barriers, 3 means usable with material caveats, 4 means strong documented support with a specific remaining gap, and 5 means comprehensive evidence for the dimension. Unknown dimensions remain unassessed.

Setup ease receives 2 because installation succeeded but the footprint was substantial and the test command failed. Documentation receives 4 for its inference, batch, configuration and fine-tuning instructions, with released-checkpoint provenance still unresolved. Maturity receives 2 because our recorded checkout had no detected CI workflows and our test command was unsuccessful; this is not a judgment about forecast accuracy. Community is unassessed because the supplied primary extracts do not establish participation trends, maintainer responsiveness or current adoption.

Alternatives

ProjectWhat it isPick it when
Chronos ForecastingA pretrained time-series forecasting family whose Chronos-2 model supports univariate, multivariate and covariate-informed tasks.Choose it as another model candidate when you need general forecasting or external variables; the supplied evidence does not establish superiority on financial candles.
NeuralForecastA collection of neural forecasting models with fit and predict interfaces.Use it to train neural baselines for a comparison; it can complement Kronos rather than replace its pretrained checkpoint.

What people are saying

  1. [github-trending] shiyu-coder/Kronos

Sources

  1. Kronos README
  2. Kronos commit 67b630e
  3. Issue 265: training data temporal range
  4. Issue 403: repeated prediction hang report
  5. Kronos paper

More data reviews

spektrafilm · jq · pgx · HowToLiveLonger · ip2region · dbdelve · the whole board →