Kronos: Mô hình nền tảng cho ngôn ngữ của thị trường tài chính
Kronos rời rạc hóa OHLCV thành token và cung cấp mô hình autoregressive tiền huấn luyện để dự báo chuỗi K-line.

TL;DR
- Giải pháp: Tokenizer cho OHLCV và mô hình autoregressive để dự báo chuỗi K-line.
- Cách dùng nhanh:
pip install -r requirements.txt→ tải tokenizer + model từ Hugging Face →KronosPredictor.predict(). - Phù hợp cho: researcher, kỹ sư lượng tử, PoC backtest.
- Một bước nhanh: chạy
examples/prediction_example.pyđể lấy dự báo 120 bước. - Lưu ý: Finetune cần chuẩn bị dữ liệu bằng Qlib; production cần đo và tối ưu latency.
Cảnh mở
Mở một thư mục chứa CSV nến từ nhiều sàn, timestamp lộn xộn, bạn cần một chuỗi dự báo để chạy backtest. Kronos làm nhiệm vụ đọc K-line như một “ngôn ngữ” - tokenizer rời rạc hóa OHLCV, model sinh chuỗi dự báo autoregressive.
So sánh: hãy tưởng tượng K-line như những câu chuyện ngắn trên báo tài chính; tokenizer là thư ký ghi chép, còn Kronos là bản đồ thời tiết dự báo các đoạn tiếp theo.
Cách bắt tay làm (Quickstart)
- Tạo virtualenv Python 3.10+.
- Cài phụ thuộc:
pip install -r requirements.txt
- Ví dụ tối thiểu:
from model import Kronos, KronosTokenizer, KronosPredictor
tokenizer = KronosTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-base")
model = Kronos.from_pretrained("NeoQuasar/Kronos-small")
predictor = KronosPredictor(model, tokenizer, max_context=512)
pred_df = predictor.predict(df=x_df, x_timestamp=x_ts, y_timestamp=y_ts, pred_len=120)
print(pred_df.head())
Ví dụ output (pred_df.head()):
# index open high low close volume
2024-01-01 00:00:00 100.50 101.20 100.10 100.90 12345
2024-01-02 00:00:00 100.90 102.00 100.50 101.80 15000
2024-01-03 00:00:00 101.80 103.30 101.50 102.90 14000
2024-01-04 00:00:00 102.90 104.10 102.30 103.70 13000
2024-01-05 00:00:00 103.70 104.00 103.20 103.50 12500
Kết quả: predictor trả về một DataFrame pandas đánh chỉ số theo timestamp tương lai chứa các cột OHLC (và tùy chọn volume/amount). Ví dụ trên minh họa cấu trúc và kiểu dữ liệu đầu ra.
Minh họa (Markdy scene)
Các API chính
KronosTokenizer.from_pretrained()- tải tokenizer từ HF.Kronos.from_pretrained()- tải checkpoint mô hình.KronosPredictor.predict()- trả về DataFrame chứa dự báo OHLC (có thể có volume/amount).KronosPredictor.predict_batch()- xử lý nhiều series cùng lúc (yêu cầu cùng lookback/pred_len).
Tính năng đáng chú ý
- Model zoo:
Kronos-mini,Kronos-small,Kronos-base(mini ~4.1M, small ~24.7M, base ~102.3M). max_contextmặc định cho small/base là 512.- Hỗ trợ finetune bằng Qlib; ví dụ
finetune/train_predictor.pydùngtorchruncho multi-GPU.
Ẩn dụ: coi Kronos như một tòa soạn dự báo - nó đọc các “câu” giá gần nhất rồi viết vài dòng tiếp theo. Tokenizer giống thư ký, model giống biên tập viên chốt tiêu đề.
Những điểm cần lưu ý
predict_batchcần các series có cùng lookback/pred_len - không tiện khi dữ liệu không đều.- Finetune đòi hỏi pipeline data prep (Qlib) và cấu hình
finetune/config.py. - Kiểm tra checksum và ưu tiên
safetensorsnếu có checkpoint.
💡 Tip: ưu tiên safetensors và chạy thử trên tập dữ liệu nhỏ trước khi finetune toàn bộ để bắt mismatch sớm.
⚠️ Cảnh báo: Tải trọng số/tokenizer từ Hugging Face cần mạng và ổ cứng; kiểm tra checksum và dùng model ID đáng tin cậy khi chạy trên môi trường production.
Ví dụ nhanh (trước / sau)
Trước: baseline rolling mean.
naive = df['close'].rolling(20).mean().iloc[-1]
Sau: dùng Kronos để sinh chuỗi dự báo:
pred_df = predictor.predict(df=x_df, x_timestamp=x_ts, y_timestamp=y_ts, pred_len=120)
Checklist triển khai
- Python 3.10+ virtualenv
pip install -r requirements.txtpython examples/prediction_example.py- Nếu finetune: chuẩn bị Qlib data →
torchrun --nproc_per_node=NUM_GPUS finetune/train_predictor.py
Kết
Kronos biến K-line thành ngôn ngữ mà mô hình có thể hiểu và sinh tiếp. Với 19k sao và mô hình sẵn có trên Hugging Face, repo này là một điểm bắt đầu mạnh cho PoC dự báo chuỗi thời gian tài chính.
shiyu-coder/Kronos · MIT · 19079
Bài viết liên quan
TimesFM: Nhà Tiên Tri Số Của Google Không Cần Train
Foundation model dự báo chuỗi thời gian của Google Research - zero-shot, 200M tham số, kèm dải quantile, không cần bake-off mô hình.
Maigret: Thám Tử Số Biết Chạy Lúc 2 Giờ Sáng
Maigret tìm tài khoản trên 3.000+ mạng xã hội từ một username duy nhất, không cần API key. Recursive search tự đào tiếp khi phát hiện username mới trong bio.
MarkItDown: Cái Máy Xay Thịt Mà RAG Pipeline Nào Cũng Cần
MarkItDown chuyển PDF, Word, Excel, PPTX, YouTube thành Markdown sạch cho LLM. Thuần Python, không cần Tesseract hay LibreOffice, 103k stars trong 6 tháng.
AI Scientist-v2: Cái Máy Viết Luận Văn Thay Bạn
SakanaAI's AI Scientist-v2 tự động đặt giả thuyết nghiên cứu, chạy thí nghiệm ML, phân tích kết quả và viết paper khoa học có peer review. Không cần template,…