用stock-trading-ml回测交易策略:10美元模拟资金下的买卖信号生成全流程 用stock-trading-ml回测交易策略10美元模拟资金下的买卖信号生成全流程【免费下载链接】stock-trading-mlA stock trading bot that uses machine learning to make price predictions.项目地址: https://gitcode.com/gh_mirrors/st/stock-trading-mlstock-trading-ml 是一个基于机器学习做股票价格预测的开源项目它自带一套完整的回测交易策略先用 LSTM 神经网络预测下一日开盘价再根据预测与实际价格的偏差自动生成买入/卖出信号最后用10 美元模拟资金模拟真实交易并计算最终收益。本文将以新手视角带你走完从数据下载、模型训练到买卖信号生成与收益结算的全流程全程无需写一行业务代码。一、stock-trading-ml 回测交易策略的核心思路这个项目的设计非常清晰整个回测交易策略可以拆解为四个环节获取数据从 Alpha Vantage 接口下载某只股票的历史行情数据预处理归一化 滑动窗口切分生成训练样本模型训练用 LSTM 神经网络学习历史 50 天行情 → 下一日开盘价的规律回测与信号生成用测试集跑预测当预测涨幅超过阈值就标记买入跌幅超过阈值就标记卖出并按 10 美元起步的资金规则结算收益。整个流程分布在 5 个 Python 文件中每个文件各司其职save_data_to_csv.py负责下载数据、util.py负责预处理、basic_model.py与tech_ind_model.py负责训练模型、trading_algo.py负责回测与买卖信号生成。对于只想体验回测效果的新手来说重点只需要理解最后一步。二、第一步下载股票历史数据回测的前提是数据。项目使用save_data_to_csv.py从 Alpha Vantage 拉取股票日线数据你需要先在creds.json中填入自己的免费 API Key然后执行python save_data_to_csv.py MSFT daily执行后会生成MSFT_daily.csv里面包含日期、开盘价、最高价、最低价、收盘价、成交量等字段这份 CSV 就是后续所有环节的原材料。三、第二步数据归一化与 50 点滑动窗口预处理原始股价动辄几十到上百美元直接喂给神经网络会导致训练不稳定。util.py中的csv_to_dataset函数负责两件关键工作MinMaxScaler 归一化把全部价格缩放到 0~1 区间让模型更容易收敛。上面那张对比图正是归一化前后的效果——数值范围从 0~120 变为 0~1而价格走势的形状完全保留。50 个历史点的滑动窗口history_points 50即用最近 50 个交易日的开高低收量数据预测第 51 天的开盘价。窗口每前进一天就生成一个新的训练样本。如上图所示灰色曲线是归一化后的价格序列绿色阴影区是 50 个历史点组成的滑动窗口红色圆点则是窗口结束后的下一日开盘价——这正是模型的预测目标。四、第三步训练 LSTM 价格预测模型项目提供了两套可选的模型架构basic_model.py仅使用 K 线数据的基础 LSTM 模型tech_ind_model.py双分支模型在 LSTM 之外额外接入技术指标SMA 均线、MACD 等预测精度通常更高。训练命令很简单python tech_ind_model.py训练约 50 个 epoch 后模型会保存为technical_model.h5这就是接下来回测要加载的预测大脑。五、第四步运行回测自动生成买卖信号这是全文的核心环节入口是trading_algo.py。脚本会加载训练好的模型对测试集后 10% 数据逐日执行以下判断用模型预测明日开盘价计算预测价与今日实际价的差值delta当delta 0.1预测大涨→ 记录一个买入信号当delta -0.1预测大跌→ 记录一个卖出信号。也就是说买卖信号并非来自 K 线形态而是来自机器学习模型的预测偏差。运行命令python trading_algo.py终端会打印类似buys: 23、sells: 19的结果并弹出一张可视化的回测图绿点代表买入点、红点代表卖出点、蓝线与橙线分别代表真实价格与模型预测价格一眼就能看出信号是否踩对了节奏。六、10 美元模拟资金如何计算收益信号生成之后compute_earnings函数会用10 美元模拟资金按时间顺序真实地交易一次遇到买入信号花 10 美元买入股票按当天价格换算成股数遇到卖出信号把手头股票全部卖出现金入账买卖交替进行直到信号耗尽最终打印earnings: $xx。这套规则把信号是否正确转化成了能否赚钱这个最直观的指标。如果模型预测准确10 美元会越滚越多反之收益可能为负这恰恰是回测的价值——在投入真金白银之前先用 10 美元虚拟资金验证策略。七、回测结果解读与风险提示回测的价值在于低成本验证但使用时请记住三点训练与测试必须分离项目用 90% 数据训练、10% 数据回测避免用答案考试的作弊式评估阈值可调trading_algo.py中的thresh 0.1是信号灵敏度调小信号更频繁、调大信号更稀少你可以按需实验历史回测 ≠ 未来收益市场是动态的过去有效的规律未来可能失效模拟资金收益仅供参考。八、快速上手清单最后给新手一份完整的上手清单克隆仓库并安装依赖pip install -r requirements.txt用save_data_to_csv.py下载数据用tech_ind_model.py训练模型用trading_algo.py回测并观察买卖信号与 10 美元资金收益。从数据到信号、从信号到收益stock-trading-ml 把机器学习炒股回测的全流程压缩到了几个命令之内。无论你是想学习 LSTM 时间序列预测还是想体验AI 炒股的乐趣它都是极佳的入门项目。试试修改util.py中的history_points或者换一只股票看看买卖信号会如何变化吧【免费下载链接】stock-trading-mlA stock trading bot that uses machine learning to make price predictions.项目地址: https://gitcode.com/gh_mirrors/st/stock-trading-ml创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考