TopGit
GitHub Repo Review

Kronos: Open-Source Financial Model for K-Line Forecasting

shiyu-coder/Kronos
KTopGit review image for shiyu-coder/Kronos
Review by Topgit.dev for shiyu-coder/Kronos, with GitHub repository stats and README context.
Quick verdict

Kronos is worth trying if you're doing quant research on OHLCV and need a purpose-built pretrained base to fine-tune on your own market data — the tokenizer-plus-transformer design and the AAAI 2026 acceptance give it more academic credibility than most "foundation model for X" repos. Skip it if you need more than 512 bars of lookback on a model with real capacity, access to Kronos-large (closed), or anything resembling a production trading signal — the forecasts are explicitly probabilistic sampled outputs, not deterministic price predictions, and there's no ops tooling anywhere in the repo.

Stars
★ 43.8k
Forks
⑂ 7.2k
Language
Python
License
MIT
Topic
Automation
Updated
Apr 2026
Homepage
—
GitHub

The problem it solves

General-purpose time-series foundation models are trained on comparatively smooth signals like weather or traffic. Financial candlesticks are noisy, fat-tailed, and multi-dimensional — open, high, low, close, and volume all moving together. Quant researchers who want a pretrained starting point for this data have mostly had to either fine-tune a model that was never designed for market noise or train from scratch on limited OHLCV history. Kronos closes that gap by pretraining specifically on candlestick bars from 45+ real exchanges, so the model's internal representations already know something about how price data behaves before you touch it.

What is it?

Built around candlestick data from over 45 exchanges, Kronos positions itself as the first open-source foundation model specifically for financial K-lines. It runs in two stages: a specialized tokenizer converts continuous OHLCV bars into hierarchical discrete tokens, then a decoder-only autoregressive Transformer is pretrained on that vocabulary using the same next-token prediction objective as language models. Weights for mini, small, and base tiers are on Hugging Face under the NeoQuasar org, with a paper (arXiv 2508.02739) accepted at AAAI 2026 and a live BTC/USDT 24-hour-ahead forecasting demo.

Why it's getting attention

That's unusually high for a niche quant-finance repo, and the substance backs that up — an AAAI 2026 accepted paper, a full model zoo on Hugging Face under the NeoQuasar org (not a Google Drive link), and a live BTC/USDT demo. Fine-tuning scripts shipped early rather than appearing months later, signaling the authors expect real adaptation work. In a landscape full of "pretrain a Transformer on tokenized X" projects, Kronos stands out in the financial-forecasting space because it has peer review and a reproducible demo attached, not just README claims.

How this repository's GitHub stars have grown over time. Source: star-history.com.View the star history ↗

Key features

  • ✓Two-stage architecture: a specialized tokenizer quantizes continuous OHLCV bars into hierarchical discrete tokens, then a decoder-only Transformer is pretrained on that vocabulary
  • ✓Model zoo on Hugging Face: Kronos-mini (4.1M params, 2048-bar context), Kronos-small (24.7M params, 512-bar context), Kronos-base (102.3M params, 512-bar context) — all open; Kronos-large (499.2M params) explicitly not released
  • ✓Probabilistic forecasting via sampling: temperature (T), nucleus sampling (top_p), and sample_count produce a distribution of forecast paths that can be averaged
  • ✓predict_batch() runs parallel forecasts across multiple series at once instead of looping predict() per ticker
  • ✓predict() accepts a plain pandas DataFrame — open/high/low/close required, volume/amount optional — plus historical and future timestamp Series; no custom data pipeline required
  • ✓Fine-tuning scripts for both tokenizer and predictor included, with a Qlib-backed A-share market example pipeline
  • ✓Live BTC/USDT 24-hour-ahead forecasting demo at shiyu-coder.github.io/Kronos-demo/

Best use cases

  • •Generating probabilistic price-path forecasts for crypto or equity tickers as a feature or baseline inside a larger quant research pipeline
  • •Fine-tuning the pretrained tokenizer-plus-transformer on proprietary or market-specific OHLCV history instead of training a forecasting model from scratch
  • •Batch-scanning many tickers at once with predict_batch() for portfolio-level or cross-market research
  • •Academic work citing a foundation-model approach to financial time series, given the AAAI 2026-accepted paper backing it

How to install / try

pip install -r requirements.txt from the repo. Model weights load directly from Hugging Face by name via KronosTokenizer.from_pretrained(...) and Kronos.from_pretrained(...) — no separate manual download step or API key for the open tiers (mini, small, base). Kronos-large isn't installable since it's not open-sourced.

How to use

Instantiate KronosPredictor(model, tokenizer, max_context=512), then call predict() with a pandas DataFrame containing open/high/low/close columns (volume/amount optional) plus historical and future timestamp Series. Forecasts are sampled — T controls temperature, top_p does nucleus sampling, and sample_count sets how many sampled paths get averaged into the final output. Use predict_batch() for parallel multi-series forecasting instead of looping predict() one ticker at a time. Note that KronosPredictor silently truncates any lookback longer than max_context (512 for small/base), so check your input length before trusting the output.

Strengths

  • ✓Purpose-built for OHLCV structure and market noise instead of a general time-series model retrofitted onto price data
  • ✓Ships as a pip-installable package with weights on Hugging Face, not a research-only checkout with manual download steps
  • ✓Backed by an AAAI 2026 accepted paper, not just README claims
  • ✓Probabilistic sampling (T / top_p / sample_count) gives a distribution of forecast paths instead of one brittle point estimate
  • ✓Fine-tuning scripts for tokenizer and predictor included with a Qlib-backed example pipeline

Limitations & risks

  • △max_context caps at 512 bars for the small and base tiers — the ones with meaningful parameter counts — and KronosPredictor silently truncates any longer lookback, so multi-year daily history won't fit in a single pass
  • △Kronos-large (499.2M params), the highest-capacity checkpoint, is explicitly withheld/closed and not available for self-hosting or fine-tuning
  • △Only Kronos-mini gets the 2048-bar context window, and it's the smallest model at 4.1M params — there's a real context-length-vs-capacity trade-off
  • △No hosted API or managed inference documented anywhere — you run inference yourself, budgeting your own GPU or CPU time
  • △No production SLAs, monitoring, or forecast-drift tooling — this reads as a research release, not an ops-ready forecasting service
View on GitHub ↗

Alternatives

Amazon Chronos (general-purpose time-series foundation model)Google TimesFM (pretrained time-series forecasting model)Microsoft Qlib (full quant research platform, not just a forecasting model)Nixtla TimeGPT (hosted time-series forecasting API)

Who should try it — and who should skip

Quant researchers and ML engineers who already work with OHLCV data and want a pretrained financial-foundation-model starting point for candlestick forecasting experiments — especially if you plan to fine-tune on your own market or asset class using the included scripts. Skip it if you need a live trading signal out of the box, more than 512 bars of context on a model bigger than 24.7M params, or commercial support — none of that exists in this repo.

Frequently asked questions

Is Kronos free to use?

Yes — it's MIT-licensed, and Kronos-mini, Kronos-small, and Kronos-base are open on Hugging Face under the NeoQuasar org. Kronos-large (499.2M params) is withheld and not open-sourced.

What input data does Kronos need?

A pandas DataFrame with open/high/low/close columns (volume and amount are optional), plus historical and future timestamp Series. No custom preprocessing pipeline is required beyond that.

Does Kronos output a single price forecast or a range?

Neither — it samples forecast paths controlled by temperature (T), nucleus sampling (top_p), and sample_count, then you average them. The output is explicitly probabilistic, not a single deterministic number.

How long a lookback window can Kronos use?

Up to 512 bars for small and base models — KronosPredictor truncates anything longer. Kronos-mini supports 2048 bars but has only 4.1M parameters, so you face a trade-off either way.

Is Kronos ready for live trading?

No hosted API, SLA, or production tooling is documented. Treat it as a research foundation model to fine-tune and backtest, not a plug-and-play trading signal.

Can I fine-tune Kronos on my own data?

Yes — fine-tuning scripts for both the tokenizer and predictor are included, with a Qlib-backed A-share market example pipeline showing end-to-end data prep, training, and backtesting.

Related repositories

Source & attribution

Based on the shiyu-coder/Kronos GitHub repository (37,094 stars, 6,164 forks, MIT license) and its README and accompanying paper (arXiv 2508.02739, accepted at AAAI 2026).

GitHub data · last synced Aug 13, 2026Reviewed by Henry
← Back to TopGit

Curious whether Kronos is right for you?

Let ChatGPT, Claude, or Perplexity look into it — click below and see what AI actually says about Kronos.

GitHub