靠谱吗? | gemini-cli 写的股价预测程序
用 gemini-cli 写一个股价预测程序
我的想法是, 使用多元线性相关性预测股价.
十年前我在PostgreSQL数据库中使用函数写过一个类似功能, 预测准确度较高. 为什么呢? 主要是我采用了动态方法, 从最近3日到最近15日, 会算很多遍,选择线性相关性最好的截距和斜率进行预测.
参考: https://github.com/digoal/blog
《PostgreSQL KPI 预测例子 - 线性回归, 斜率, 截距, 相关性, regr_slope, regr_intercept, regr_r2》 《PostgreSQL 多元线性回归 - 2 股票预测》 《在PostgreSQL中用线性回归分析linear regression做预测 - 例子2, 预测未来数日某股收盘价》 《PostgreSQL 线性回归 - 股价预测 1》 《在PostgreSQL中用线性回归分析(linear regression) - 实现数据预测 - 股票预测例子》 《PostgreSQL 统计信息之 - 逻辑与物理存储的线性相关性》
但是需要先写爬虫, 爬数据, 然后导入数据库, 然后运算. 其实链路挺长的, 反正没程序牛马人肉干起来就是不爽啊.
既然有gemini-cli AI Agent了, 试一试它能不能干一个类似程序?
写一个程序, 输入A股股票代码, 使用爬虫获取该股票最近10年每天收盘和开盘数据, 保存为
$股票代码.csv文件(包括日期,开盘价,收盘价), 使用每连续5日的数据采用多元线性相关性预测下1和下2个交易日的开盘和收盘价格, 并使用历史数据校验预测准确性. 输出$股票代码_predict.csv文件(包括日期,开盘价,收盘价,下1日预测开盘价,下1日预测收盘价,下1日预测开盘误差百分比,下1日预测收盘误差百分比,下2日预测开盘价,下2日预测收盘价,下2日预测开盘误差百分比,下2日预测收盘误差百分比)
GEMINI-CLI
✦ 好的, 这是一个相当完整的项目, 涉及到数据爬虫、数据处理、机器学习建模和回测验证. 我将为你创建一个完整的Python脚本来实现这个需求.
这个脚本将执行以下操作:
1. 获取数据: 从新浪财经爬取指定股票过去10年的历史日K数据.
2. 数据清洗: 处理数据, 按日期排序, 并保存为 股票代码.csv.
3. 特征工程: 构建一个滑动窗口, 用过去5天的数据作为特征.
4. 建模与预测:
* 通过遍历历史数据进行"向前滚动"的训练和预测, 避免未来数据泄露.
* 在每个时间点, 使用该时间点之前的所有历史数据来训练一个多元线性回归模型.
* 用训练好的模型和最近5天的数据来预测未来第1天和第2天的开盘价与收盘价.
5. 计算误差: 将预测价格与真实的未来价格进行比较, 计算误差百分比.
6. 生成报告: 将日期、原始价格、预测价格和误差率一并存入 预测股票代码.csv 文件.
使用说明:
1. 请确保你已经安装了必要的Python库: pandas, requests, scikit-learn, beautifulsoup4, lxml. 如果没有安装, 可以使用以下命令安装:
1 pip install pandas requests scikit-learn beautifulsoup4 lxml
2. 将下面的代码保存为一个Python文件 (例如 predict_stock.py).
3. 通过命令行运行该脚本, 并传入A股的股票代码作为参数. 例如, 预测贵州茅台(600519):
1 python predict_stock.py 600519
4. 程序运行需要一些时间, 特别是首次获取10年数据时. 运行结束后, 会在当前目录下生成两个文件: 600519.csv (原始数据) 和 预测600519.csv (预测结果).
---
这是完整的Python代码:
... 略
✦ 好的, 脚本 predict_stock.py 已经成功创建在 /Users/digoal/gupiao/ 目录下.
现在, 你可以按照以下步骤来使用它:
第一步: 安装所需的Python库
如果你的环境中没有安装必要的库, 请打开终端 (Terminal) 并运行以下命令:
1 pip install pandas requests scikit-learn beautifulsoup4 lxml
第二步: 运行脚本
打开终端, 进入到脚本所在的目录 /Users/digoal/gupiao/, 然后执行脚本. 你需要提供一个6位数的A股股票代码作为参数.
例如, 如果要分析并预测贵州茅台 (股票代码: 600519), 请运行:
1 python /Users/digoal/gupiao/predict_stock.py 600519
第三步: 查看结果
脚本运行需要一些时间, 特别是第一次运行时会从网上爬取近10年的数据. 运行完成后, 你会在 /Users/digoal/gupiao/ 目录下找到两个CSV文件:
1. 600519.csv: 包含了从网络上获取的原始历史数据 (日期, 开盘价, 收盘价).
2. 预测600519.csv: 包含了详细的预测结果和误差分析, 列头如你所要求.
ℹ ⚡ Slow response times detected. Automatically switching from gemini-2.5-pro to gemini-2.5-flash for faster responses for the remainder of this session.
⚡ To avoid this you can utilize a Gemini API Key. See: https://goo.gle/gemini-cli-docs-auth#gemini-api-key
⚡ You can switch authentication methods by typing /auth
你可以用任何支持CSV文件的软件 (如Excel, Numbers, 或者VS Code) 打开它们来查看结果.
效果就不展示了, 大家可以自行测试.
相信很快会有翻版的gemini-cli.
期待 qwen-cli、deepseek-cli、ollama-cli .