2026-09-28 · 原文发布日
n8n模板:多周期股票突破扫描并推送Slack
这个n8n工作流每24小时读取Google Sheets观察列表中标记为活跃的股票代码,经HTTP接口分别拉取日线和周线OHLCV行情,按近期支撑阻力位与1.5倍成交量阈值计算两个周期的突破方向,只有日线周线信号一致才继续。确认后的信号交给OpenAI生成JSON分析(置信度、叙述、关键确认点、风险提示),规范化后把突破明细和AI解读追加回Google Sheets日志表,并向Slack频道推送格式化提醒。模板附带排查表,注明日线需至少21条、周线至少13条数据才会触发判断。
原文要点
这是WeblineIndia发布的n8n免费模板(2026-09-28,n8n.io/workflows/20040)。每24小时触发,读取Google Sheets观察列表中active的股票代码,经HTTP接口分别拉日线和周线OHLCV,按近期支撑阻力位与1.5倍成交量阈值计算两周期突破方向,仅日线周线一致才继续;确认后交OpenAI生成含置信度、叙述、关键确认点、风险提示的JSON分析,规范化后写回Sheets日志并推送Slack。模板注明:日线少于21条、周线少于13条不触发判断;当前用的是虚构行情接口(192.168.101.63的webhook-test地址),不接真实行情源,且工作流不执行交易。
这次做成什么
在n8n中跑通"观察列表→双周期突破判断→AI解读→Sheets日志+Slack提醒"的完整链路,并用本站设计的合成行情数据验证突破分支确实触发,理解各失败原因后再考虑接真实行情API。
准备什么
- n8n实例及该模板编辑权限
- Google Sheets OAuth2凭据和一张含Watchlist与Breakout Signals两个工作表的表格
- 能提供high、low、close、volume字段OHLCV数组的行情HTTP接口(测试期可用n8n自己的webhook模拟)
- OpenAI API凭据(LangChain OpenAI节点,可能产生费用)
- Slack凭据及一个目标频道
具体怎么做
建表并填入观察列表
建Watchlist工作表,至少含symbol和active两列,active填true/1/yes才会被处理;再建Breakout Signals工作表,列与追加节点映射一致(代码、方向、收盘价、成交量倍数、置信度、叙述等)。
用模拟接口替代虚构行情地址
模板默认HTTP端点是作者内网的webhook-test地址,外部不可达。先在n8n建一个测试webhook,返回本站下方合成JSON行情,把日线和周线两个HTTP Request节点的URL指向它,确认节点能取到data数组。
核对突破计算与确认分支
检查计算节点:收盘价需突破近期阻力位且成交量达到阈值(1.5倍)才判日线突破,周线同理;只有Check Multi Timeframe Confirmation输出双周期一致才放行到OpenAI节点。数据不足21条日线或13条周线时不会触发,属预期行为。
配置OpenAI分析与结果规范化
在LangChain OpenAI节点绑定凭据,提示词可换成本站示例,要求模型只返回含confidence、narrative、key_confirmation、risk_note四个字段的JSON;检查Normalize AI Analysis节点能否解析,置信度缺失时会被记为0。
接通Sheets追加与Slack推送并手动测试
绑定Google Sheets与Slack凭据,选好目标工作表和频道,手动执行一次:确认Sheets日志新增一行突破记录、Slack频道收到格式化提醒且无N/A字段;测试通过后再激活24小时定时。
可直接复制的材料
OpenAI突破分析提示词
本站独立编写的示例提示词,字段名需与Normalize节点的解析逻辑一致,非原模板提示词。
你是一位技术分析助手。以下是某股票通过多周期确认的突破信号数据:
代码:{{symbol}}
方向:{{direction}}
最新收盘价:{{close}}
成交量倍数:{{volume_ratio}}
日线信号:{{daily_signal}}
周线信号:{{weekly_signal}}
请只输出一个JSON对象,不要任何其他文字,格式为:
{"confidence": 0到1之间的小数, "narrative": "不超过60字的中文突破解读", "key_confirmation": "不超过30字的关键确认依据", "risk_note": "不超过30字的风险提示"}
注意:不要给出买卖建议,只描述信号本身。合成测试行情JSON(模拟接口返回)
本站合成的日线示意数据,仅5行无法触发判断(需至少21条),测试时请按同一格式补足21条以上并让最后一条放量突破;周线需另备13条以上。
{"data":[{"date":"2026-09-01","high":101.0,"low":98.2,"close":100.1,"volume":1200000},{"date":"2026-09-08","high":102.3,"low":99.0,"close":101.5,"volume":1150000},{"date":"2026-09-15","high":103.0,"low":100.2,"close":102.4,"volume":1100000},{"date":"2026-09-22","high":103.2,"low":100.8,"close":102.8,"volume":1080000},{"date":"2026-09-28","high":106.5,"low":102.9,"close":106.1,"volume":2800000}]}Watchlist观察列表CSV示例
本站合成示例:DEMO1和DEMO2会被处理,DEMO3因inactive被跳过,DEMO4因symbol虽在但active为空被跳过;请替换为你自己的测试代码。
symbol,active
DEMO1,true
DEMO2,yes
DEMO3,false
DEMO4,输入与输出示例
本站虚构演示,数字与AI输出均为示意,非原作者结果,未实际运行。
输入
Watchlist中DEMO1标记active=true,模拟接口返回其日线21条,最后一条收盘106.1突破近期阻力103.2、成交量280万为均量约2.4倍;周线13条同样向上放量突破。对应输出
Check Multi Timeframe Confirmation输出双周期一致;OpenAI返回{"confidence":0.72,"narrative":"日线周线同步放量突破近期阻力,多周期趋势一致","key_confirmation":"收盘106.1上破阻力103.2且量能约2.4倍","risk_note":"突破后若缩量回落需警惕假突破"};Sheets日志新增一行DEMO1突破记录,Slack频道收到含方向、收盘价、置信度0.72和叙述的格式化提醒。做完检查这些
- Watchlist中active为true/1/yes的代码被处理,空symbol被忽略
- 日线补足21条、周线补足13条后,放量突破的合成数据能走到确认分支
- OpenAI返回的JSON被规范化为confidence、narrative等字段,解析失败时可在原始响应中排查
- Sheets日志新增行且Slack消息不含N/A,手动测试通过后工作流已激活定时
容易卡住的地方
- 模板默认行情地址是作者内网webhook-test地址,直接运行HTTP Request必然失败,必须先换成自己的接口
- 数据条数不足(日线<21、周线<13)时不报错也不触发,容易被误认为工作流没跑
- active列填false、0或留空都会被跳过,仅true/1/yes有效
- OHLCV缺少high、low、close、volume任一字段会导致突破数据不完整
- AI未继续通常是信号没通过多周期确认分支,应先查该节点输出而非OpenAI凭据
- 该工作流只做检测和通知,不执行任何交易,也不应据此直接做投资决策
本站借助AI整理来源事实,独立编写中文操作指南与示例。示例不代表实际运行结果;来源效果尚未由本站独立复现。付费模板与模型、服务费用分别计算。
- 原文标题
- Scan multi-timeframe stock breakouts with Google Sheets, GPT-4.1 and Slack
- 原作者
- WeblineIndia
- 原始发布日期
- 2026-09-28T09:31:51.636Z
- 来源
- https://n8n.io/workflows/20040