更多最新最热的AI工具持续上新中,快来尝鲜实验室AI一下吧!立即点击体验
传播利益点:
- 使用AI分析股票市场情绪的好处:大语言模型(LLM)相对传统的自然语言处理,能更精准地理解、分析新闻报道中所体现出的市场情绪。另外,开发者通过API直接调用LLM服务,无需自行编写复杂的自然语言处理程序。
- 使用dify创建股票市场情绪监测工作流的好处:图形化界面操作,零代码。4个节点,10分钟之内即可完成股票市场情绪监测工作流的创建。
- 使用ECS云服务器运行dify实现上述功能的好处:数据存放在用户独享的ECS云服务器上,安全。dify工作流可使用自有域名,提供API或者web服务。
一、dify“股票市场情绪监测”实验概要
在量化交易中,股票的市场情绪监测是决定交易策略的重要依据之一。在dify中,创建“股票市场情绪监测”工作流,输入需要监测的公司名称,例如,“英伟达”,使用Tavily搜索该公司相关金融类新闻,利用大模型对搜索到的金融类新闻进行情绪分析,输出量化的、介于-1到1之间的情绪评分(-1为最悲观,1为最乐观)。
“股票市场情绪监测”dify工作流
“股票市场情绪监测”dify工作流输出结果示例
输出格式为JSON,包括定量的市场情绪评分(score),定性的市场清晰分析结果(sentiment)等,以及对近期金融类新闻的总结,可存入PostgreSQL数据库,结合股价、基本面数据等信息,确定量化交易策略。
{ "positive_keywords": ["record highs", "rally", "surprise"], "negative_keywords": ["tariffs", "threats", "drops"], "score": 0.1, "sentiment": "略微消极", "categories": ["股票市场", "公司新闻", "经济政策"], "summary": "苹果公司的股票在近期表现波动。尽管标准普尔500指数和纳斯达克指数创下了新高,Nvidia的市值也达到了4万亿美元,但特朗普威胁对加拿大征收35%的关税以及更高的普遍税率导致股市下跌。此外,苹果公司在6月份的iPhone需求下降,UBS维持中性评级。分析师认为苹果可能会给华尔街带来惊喜,但也有人呼吁CEO蒂姆·库克离职。" }
二、dify“股票市场情绪监测”实验步骤
前提条件
开通dify计算巢服务
- 在AI尝鲜实验室中,完成dify计算巢服务的开通
设置模型供应商
- 进入计算巢资源页面,点击进入dify的网页。
- 点击右上方的用户名缩写,点击“设置”。
- 在“模型供应商”中,选择通义千问,完成通义千问下载后,输入百炼API KEY,完成模型供应商设置。
- 在“模型供应商”中,选择通义千问,完成通义千问下载后,输入百炼API KEY,完成模型供应商设置。
设置搜索引擎
- 进入tavily官网,注册登陆,获取tavily的API key,复制备用
- 回到dify的页面,点击“安装插件”,选择“Marketplace”。
- 在Marketplace中,搜索tavily,安装。插件的安装需要几分钟时间。
- 在dify页面中,进入“工具”页面,页面显示Tavily,表示已经安装好。点击它,点击授权,输入Tavily的API key,完成授权后,页面将显示“已授权”字样,代表Tavily可以使用。
工作流创建步骤
- 本实验的设计参照了dify官方提供的样例。在dify页面中,点击“探索”,选择“文本情感分析工作流”,点击“添加到工作区”,以此为基础创建“股票市场情绪监测”工作流。
- 将工作流调整为如下形式。
- “开始”节点:只保留"input_text"这一个输入字段,删除“文本情感分析工作流”中,开始节点的Multisentiment, Categories这两个输入字段。
- Tavily Search节点:输入变量选择开始节点中的input_text。 注:选择input_text变量的方式为,在输入框中,输入斜杠符号/,即可选择变量。在“主题”字段,选择Constant, 选择“金融”。
- 大模型节点:模型选择qwen-max。
- 在SYSTEM中输入下列内容。
你是一个文本情感分析和新闻摘要模型。你的任务是: 1. 分析输入文本(或新闻集合)的整体情绪。 2. 提取积极和消极的关键词(最多5个)。 3. 确定与文本相关的类别。如果未提供类别列表,自动生成1~3个最相关的类别。 4. 计算情感分数(score),范围为 -1.0 至 1.0,以 0.1 为步长。 5. 根据 score 选择 sentiment 标签,仅从 ["强烈消极", "消极", "略微消极", "中性", "略微积极", "积极", "强烈积极"] 中选择。 6. 生成 summary,总结新闻中的关键事实和变化,直接描述事件,不要包含公司或产品的基本介绍或历史背景信息(如主营业务、公司简介等)。summary 必须具体且有信息量,避免空洞或泛泛而谈,字数不超过 300 字。 输出必须是如下 JSON 格式: { "positive_keywords": ["..."], "negative_keywords": ["..."], "score": 0.x, "sentiment": "...", "categories": ["...", "..."], "summary": "..." } 注意事项: - summary 必须是简洁的摘要,不超过300字。 - 不要返回除 JSON 以外的任何文本。 - 如果没有关键词,返回空数组。 - 必须始终返回一个情感分数(score)。
- 在USER的界面,变量选择text。
- 在ASSISTANT中,输入以下内容。其他保持不变。
{ "positive_keywords": ["美味", "友好的员工"], "negative_keywords": ["等待时间长"], "score": 0.3, "sentiment": "略微积极", "categories": ["质量", "服务"], "summary": "顾客反馈披萨美味,员工友好,但等待时间较长,整体情绪略偏积极。" }
运行工作流
- 完成上述设置后,点击“运行”,在“输入文本”中,输入您想监测的公司名称,例如英伟达,即可计算当前的市场情绪评分。
- 点击“发布”,完成工作流的发布。