Kronos+miniQMT预测股票,真香!保姆级教程,建议收藏

Kronos+miniQMT预测股票,真香!保姆级教程,建议收藏

前几天分享了一篇介绍Kronos(它被称为 "金融市场语言的模型" ,专门用来读懂和预测 K 线走势)的项目,看大家评论非常感兴趣但是上手有难度,今天花姐就出一期保姆级教程。

创建虚拟环境
创建虚拟环境
创建虚拟环境

重要的事情说3遍,这个项目依赖很多python库,如果你没有新建一个干净的python虚拟环境,在安装使用过程中很容易出现各种由于包不兼容而导致的错误。

我用的是windows系统,10年前的配置了,没有GPU,所以这个项目大部分人都可以跑起来,跟着我一步步来就行。

创建虚拟环境

Python我用的是Anaconda版本,虚拟环境我们也用conda来创建。

Kronos官方要求Python 3.10+,这里我用的是Python3.12版本。

打开一个CMD命令行(Win+R 然后输入cmd 按回车键打开)

pip 复制代码
conda create -n pykronos python=3.12

下载Kronos项目

下载项目需要访问github,直接打开https://github.com/shiyu-coder/Kronos然后点击下载解压到你的电脑

或者直接通过git clone下载也可以(推荐)

pip 复制代码
git clone https://github.com/shiyu-coder/Kronos.git

安装依赖库

这里打开CMD窗口,然后通过cd命令进入到Kronos项目目录,不知道怎么操作的,可以打开 Kronos项目目录,然后按下图操作

这样我们的CMD窗口就定位到Kronos项目对应的根目录了。

接下来激活我们创建的Python虚拟环境 (pykronos)

cmd 复制代码
activate pykronos

接下来在CMD里执行下面的命令安装依赖库

cmd 复制代码
pip install -r requirements.txt

大概等一会就安装好了,如果网络不好会下载很久。

运行demo

用VSCode打开Kronos项目(其它Python 编辑器同理)

打开项目以后我们需要在根目录新建一个data文件夹,里面用于存放用来训练和预测的行情数据文件。

在examples里面的data文件夹官方为我们提供了一个示例行情,我们把它复制到根目录的data文件夹里。示例数据格式入下:

打开examples下的prediction_example.py文件,我们修改下:

把sys.path.append("../")改成,这里我们import了os库

python 复制代码
import os
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))

找到47行代码,如果你电脑有英伟达显卡不用改就可以,这里表示用显卡来预测,这里我改成了cpu,因为花姐的电脑没有显卡。

改完的代码如下

python 复制代码
predictor = KronosPredictor(model, tokenizer, device="cpu", max_context=512)

到这一步如果你的网络良好(可以上-外-网)就可以执行成功了。

模型选择

在prediction_example.py的40行左右的代码可以设置模型,默认训练预测用的是Kronos-small,分词器用的是Kronos-Tokenizer-base模型

目前可用选择的模型有4种

解决无法下载问题

不过估计大部分人会遇到如下情况,这是因为国内无法访问Hugging Face网站下载模型导致的。

找到40行代码,# 1. Load Model and Tokenizer这个注释下面的2行代码

改成

python 复制代码
tokenizer = KronosTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-base",cache_dir='NeoQuasar',local_files_only=True)
model = Kronos.from_pretrained("NeoQuasar/Kronos-base",cache_dir='NeoQuasar',local_files_only=True)

cache_dir='NeoQuasar',local_files_only=True 这句的意思是缓存路径改成项目根目录,使用本地模型来训练。

接下来我们在根目录创建NeoQuasar文件夹,里面存放对应的模型如下图

弄好以后就可以跑通demo了,我已经把文件打包发网盘了,大家直接下载就可以了。下图是预测结果,红线是预测的,蓝线是实际走势。

训练数据

训练数据我们可以从AKShare、baostock、miniQMT等渠道下载。这里我写了一份用miniQMT下载的,已经放星球了。用的时候先运行examples文件里的down_load_hq.py文件,然后修改如下代码。

预测的时候我们把prediction_exampleold.py文件里对应的代码

改成对应的行情文件即可,如下图

好了今天关于Kronos的教程就到这里了。

模型和项目代码我已经打包放到星球了,星球用户自行下载。

相关推荐
VidDown26 分钟前
24fps 转 25fps 不只是改个数字:帧率转换、PAL/NTSC 与音频补偿
python·网络协议·音视频·视频编解码·视频
死磕音视频2 小时前
让小模型做选择题:限定候选项并读取 logits 概率的入门实践(附 Python 代码)
开发语言·python·大模型·文本分类·transformers
凤山老林3 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
pride.li4 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
databook4 小时前
用 Pydantic AI 从零搭建一个能干活的 AI Agent
人工智能·python
康小旺5 小时前
把 markitdown 做成 Windows 桌面版:拖进文档就出 Markdown,附 233MB→64MB 打包裁剪全过程
python
AI测试布道师5 小时前
CodexQA Code Wiki:让一个陌生仓库,先回答“从哪读起”
aigc·测试
摩羯12305 小时前
把长期记忆当作可验证数据:知芽 Notebook Skill 与 Agent Memory Repo 的工程拆分
人工智能·aigc
启观川5 小时前
数据结构与算法-第 3 章 常用算法-贪心算法
数据结构·笔记·python·算法·贪心算法
南笙北梦6 小时前
本地开源大模型多轮对话显存泄漏排查与修复实录
python