TopGit
GitHub Repo Review

Kronos: Open-Source K-Line Foundation Model

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 an open-source, decoder-only foundation model for financial K-line forecasting, pretrained on 45+ exchanges and accepted at AAAI 2026. Reach for it for quantitative research on OHLCV data needing a pretrained base to fine-tune, not build from scratch. Skip it if you need more than 512 bars of lookback, the closed Kronos-large checkpoint, or a production trading signal — this is a research release with sampled, probabilistic forecasts.

Stars
★ 36.1k
Forks
⑂ 6.0k
Language
Python
License
MIT
Topic
Automation
Updated
Apr 2026
Homepage
GitHub

Generic Time-Series Models Miss Candlestick Noise

General-purpose time-series foundation models are tuned for comparatively smooth signals like traffic or weather; financial candlesticks are noisier, fat-tailed, and inherently multi-dimensional (open, high, low, close, and volume all moving together). Quant researchers who want a pretrained base for this kind of data have mostly had two options: fine-tune a model that was never trained on market noise, or train something from scratch on their own OHLCV history. Kronos exists to close that gap — a financial foundation model pretrained specifically on candlestick bars pulled from 45+ real exchanges, with the volatility of price data built into the training objective instead of bolted on afterward.

A Foundation Model Pretrained on 45+ Exchanges

Kronos (shiyu-coder/Kronos) is an open-source, decoder-only foundation model for K-line data rather than generic time series. A tokenizer quantizes OHLCV sequences into hierarchical discrete tokens, then a large autoregressive Transformer is pretrained on them like a language model on words. Billed as the first open-source foundation model for candlestick data, it's trained on 45+ exchanges, with an arXiv paper (2508.02739) accepted at AAAI 2026.

A Tokenizer for OHLCV, Then a Transformer

  • Two-stage design: a specialized tokenizer quantizes continuous OHLCV bars into hierarchical discrete tokens, then a decoder-only Transformer is pretrained on that token vocabulary
  • Four-size 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) is explicitly not open-sourced
  • Explicitly probabilistic forecasting via sampling controls (T for temperature, top_p for nucleus sampling, sample_count for how many forecast paths get averaged) instead of one deterministic point estimate
  • predict_batch() runs parallel forecasts across many series at once instead of looping predict() one ticker at a time
  • predict() takes a plain pandas DataFrame — open/high/low/close required, volume/amount optional — plus historical and future timestamp Series, no custom data pipeline needed
  • Fine-tuning scripts included in the repo, not left as an exercise for downstream users
  • Live BTC/USDT 24-hour-ahead forecasting demo to sanity-check the model before writing any code

An AAAI 2026 Paper, Not Just a README

34,112 stars and 5,749 forks is a lot for a niche quant-finance repo, and it's not just hype — there's a real paper behind it (accepted at AAAI 2026), a full model zoo on Hugging Face under the NeoQuasar org instead of weights dumped in a Google Drive link, and a public BTC/USDT demo anyone can check against reality. Fine-tuning scripts shipped within weeks of the arXiv post, which signals the authors expect people to adapt it rather than just cite it. In a moment where "pretrain a Transformer on tokenized X" projects are everywhere, Kronos is one of the few in the financial-forecasting space with a peer-reviewed paper and a reproducible demo attached instead of just README claims.

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

Fine-Tuning on Your Own Market Data

  • 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

Loading Weights Straight From Hugging Face

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 needed for the open tiers (mini, small, base). Kronos-large isn't available to install since it's not open-sourced.

Sampling Forecasts With predict() and predict_batch()

Instantiate KronosPredictor(model, tokenizer, max_context=512), then call predict() with a pandas DataFrame containing open/high/low/close columns (volume and amount are optional) plus historical and future timestamp Series. Forecasts are sampled rather than deterministic — T controls temperature, top_p does nucleus sampling, and sample_count sets how many sampled paths get averaged into the final output. To score many tickers at once instead of calling predict() in a loop, use predict_batch() for parallel multi-series forecasting. Note that KronosPredictor silently truncates any lookback longer than the model's max_context (512 for small/base), so it's worth checking your input length before you trust the output.

Purpose-Built for Market Noise

  • Purpose-built for OHLCV structure and market noise instead of a general time-series model retrofitted onto price data
  • Ships as a normal pip-installable package with Hugging Face weights, not a research-only checkout with a manual download script
  • Backed by a peer-reviewed paper accepted at AAAI 2026, 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 are already in the repo, so adapting it to your own market isn't left undocumented

512 Bars, and the Large Model Stays Closed

  • 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
  • The largest checkpoint, Kronos-large (499.2M params), is explicitly withheld/closed, so the highest-capacity model isn't something you can self-host or fine-tune
  • Only Kronos-mini gets the 2048-bar context window, and it's the smallest model by far at 4.1M params — there's a real context-length-vs-capacity trade-off, not a free upgrade
  • No hosted API, pricing tier, or managed inference is documented anywhere — you run inference yourself, which at these parameter counts means budgeting your own GPU or CPU time
  • No repo topics/tags and nothing about production SLAs, monitoring, or forecast-drift handling — this reads as a research release to fine-tune and evaluate, not an ops-ready forecasting service
View on GitHub

Chronos, TimesFM, Qlib, and TimeGPT

Amazon Chronos (time-series foundation model, general-purpose rather than finance-specific)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 Kronos Is Built For

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 anything resembling commercial support — none of that exists in this repo.

Kronos Questions, Answered

Is Kronos free to use?

Yes. It's MIT-licensed, and the mini, small, and base checkpoints are open on Hugging Face under the NeoQuasar org. Only 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 exactly — it samples forecast paths controlled by temperature (T), nucleus sampling (top_p), and sample_count, then you average them. It's explicitly probabilistic, not one deterministic number.

How long a lookback window can Kronos use?

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

Is Kronos ready for live trading?

Nothing in the repo documents a hosted API, SLA, or production tooling. Treat it as a research foundation model to fine-tune and backtest, not a plug-and-play trading signal.

Related repositories

Source & attribution

Based on the shiyu-coder/Kronos GitHub repository (34,112 stars, 5,749 forks, MIT license) and its README and accompanying paper (arXiv 2508.02739, accepted at AAAI 2026).

GitHub data · last synced Jul 27, 2026Reviewed by Henry
Back to TopGit