图解 Langchain 金融决策,连续加班只为你打造投资助手

Langchain 就像是一个金融顾问团队,可以帮你分析市场数据、提供投资建议和自动化决策流程。

基本功能

1. 链式调用

# 创建一个简单的金融分析链
from langchain.chains import SimpleSequentialChain
from langchain.llms import OpenAI
# 初始化语言模型
llm = OpenAI(temperature=0.7)
# 股票分析链
分析链 = LLMChain(
    llm=llm,
    prompt=PromptTemplate(
        input_variables=["股票代码"],
        template="分析 {股票代码} 的基本面情况:"
    )
)
# 投资建议链
建议链 = LLMChain(
    llm=llm,
    prompt=PromptTemplate(
        input_variables=["分析结果"],
        template="根据以下分析给出投资建议: {分析结果}"
    )
)
# 组合链
完整分析链 = SimpleSequentialChain(
    chains=[分析链, 建议链],
    verbose=True
)
结果 = 完整分析链.run("AAPL")

2. 向量存储

# 存储金融新闻用于后续检索
from langchain.embeddings.openai import OpenAIEmbeddings
from langchain.vectorstores import Chroma
# 创建嵌入模型
embeddings = OpenAIEmbeddings()
# 金融新闻列表
金融新闻 = [
    "美联储宣布加息25个基点",
    "科技股普遍下跌",
    "通胀率连续三个月下降"
]
# 创建向量存储
向量数据库 = Chroma.from_texts(
    金融新闻,
    embeddings,
    collection_name="金融新闻"
)
# 检索相关内容
相关新闻 = 向量数据库.similarity_search("利率变化")

Generated Image

实用功能

1. 市场数据分析

# 设计一个分析市场趋势的工具
from langchain.agents import Tool, initialize_agent
from langchain.agents import AgentType
from langchain.utilities import GoogleSerperAPIWrapper
# 搜索工具
搜索 = GoogleSerperAPIWrapper()
搜索工具 = Tool(
    name="搜索引擎",
    func=搜索.run,
    description="用于获取最新市场信息"
)
# 数据分析工具
def 分析市场趋势(查询内容):
    # 这里可以连接专业的金融API
    return f"对 {查询内容} 的市场趋势分析结果"
分析工具 = Tool(
    name="趋势分析",
    func=分析市场趋势,
    description="分析特定市场或股票的走势"
)
# 初始化代理
市场分析代理 = initialize_agent(
    tools=[搜索工具, 分析工具],
    llm=llm,
    agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
    verbose=True
)
# 执行分析
分析结果 = 市场分析代理.run("分析美国科技股近期趋势")

2. 风险评估

# 创建评估投资风险的链
from langchain.prompts import ChatPromptTemplate
from langchain.output_parsers import ResponseSchema, StructuredOutputParser
# 定义输出格式
风险评分_schema = ResponseSchema(
    name="风险评分",
    description="从1-10评估风险水平,10最高"
)
风险因素_schema = ResponseSchema(
    name="风险因素",
    description="列出主要风险因素"
)
建议策略_schema = ResponseSchema(
    name="建议策略",
    description="如何应对这些风险"
)
# 创建输出解析器
解析器 = StructuredOutputParser([风险评分_schema, 风险因素_schema, 建议策略_schema])
格式指南 = 解析器.get_format_instructions()
# 创建提示模板
风险评估模板 = ChatPromptTemplate.from_template(
    """分析以下投资的风险情况:
    投资目标: {投资对象}
    市场情况: {市场描述}
    {格式指南}
    """
)
# 构建完整链
风险评估链 = LLMChain(
    llm=llm,
    prompt=风险评估模板,
    output_parser=解析器
)
# 执行评估
评估结果 = 风险评估链.run(
    投资对象="特斯拉股票",
    市场描述="当前市场波动较大,科技股整体估值较高",
    格式指南=格式指南
)

3. 投资组合优化

# 利用记忆组件记录历史投资决策
from langchain.memory import ConversationBufferMemory
from langchain.chains import ConversationChain
# 创建记忆组件
投资记忆 = ConversationBufferMemory()
# 创建考虑历史决策的链
投资组合链 = ConversationChain(
    llm=llm,
    memory=投资记忆,
    prompt=PromptTemplate(
        input_variables=["history", "input"],
        template="""作为投资组合管理专家,根据历史决策和当前市场情况给出建议。
        历史决策:
        {history}
        当前情况:
        {input}
        投资建议:"""
    )
)
# 记录第一次决策
第一次建议 = 投资组合链.predict(input="我的组合中有60%科技股,市场预期美联储将加息")
# 后续决策会考虑历史
第二次建议 = 投资组合链.predict(input="最新数据显示通胀降低,但失业率上升")

Generated Image

常见任务示例

1. 自动化投资研究

# 设计一个完整的投资研究助手
from langchain.agents import AgentExecutor, Tool
from langchain.agents import create_pandas_dataframe_agent
import pandas as pd
import yfinance as yf
# 获取股票数据
def 获取股票数据(股票代码):
    try:
        股票 = yf.Ticker(股票代码)
        历史数据 = 股票.history(period="1y")
        return pd.DataFrame(历史数据)
    except Exception as e:
        return f"获取数据失败: {e}"
# 创建股票数据工具
股票数据工具 = Tool(
    name="股票历史数据",
    func=获取股票数据,
    description="获取股票的历史价格数据,输入股票代码如AAPL"
)
# 创建数据分析代理
def 创建分析代理(数据框):
    return create_pandas_dataframe_agent(
        llm=llm,
        df=数据框,
        verbose=True
    )
# 投资研究流程
def 投资研究(股票代码):
    # 步骤1: 获取数据
    股票数据 = 获取股票数据(股票代码)
    if isinstance(股票数据, str):
        return 股票数据  # 返回错误信息
    # 步骤2: 创建分析代理
    分析代理 = 创建分析代理(股票数据)
    # 步骤3: 执行分析
    技术分析 = 分析代理.run(f"对{股票代码}进行技术分析,计算主要指标")
    趋势分析 = 分析代理.run(f"分析{股票代码}的价格趋势和波动性")
    # 步骤4: 生成投资建议
    投资建议链 = LLMChain(
        llm=llm,
        prompt=PromptTemplate(
            input_variables=["股票代码", "技术分析", "趋势分析"],
            template="""
            基于以下分析为{股票代码}提供投资建议:
            技术分析: {技术分析}
            趋势分析: {趋势分析}
            投资建议:
            """
        )
    )
    最终建议 = 投资建议链.run(
        股票代码=股票代码,
        技术分析=技术分析,
        趋势分析=趋势分析
    )
    return {
        "股票代码": 股票代码,
        "技术分析": 技术分析,
        "趋势分析": 趋势分析,
        "投资建议": 最终建议
    }

2. 金融新闻分析

# 创建金融新闻分析器
from langchain.document_loaders import WebBaseLoader
from langchain.indexes import VectorstoreIndexCreator
# 定义新闻源
金融新闻源 = [
    "https://finance.example.com/markets",
    "https://finance.example.com/stocks",
    "https://finance.example.com/economy"
]
# 函数:加载和分析新闻
def 分析金融新闻(股票代码="", 主题=""):
    # 加载网页内容
    文档加载器 = WebBaseLoader(金融新闻源)
    # 创建向量索引
    索引 = VectorstoreIndexCreator().from_loaders([文档加载器])
    # 构建查询
    if 股票代码 and 主题:
        查询 = f"{股票代码} {主题}"
    elif 股票代码:
        查询 = f"{股票代码} 最新消息"
    elif 主题:
        查询 = f"{主题} 市场影响"
    else:
        查询 = "今日重要金融新闻"
    # 查询相关新闻
    新闻结果 = 索引.query(查询)
    # 提取关键信息
    提取链 = LLMChain(
        llm=llm,
        prompt=PromptTemplate(
            input_variables=["新闻内容"],
            template="""
            从以下金融新闻中提取关键信息:
            {新闻内容}
            请提供:
            1. 主要事件摘要
            2. 可能的市场影响
            3. 相关股票或行业
            """
        )
    )
    分析结果 = 提取链.run(新闻内容=新闻结果)
    return {
        "查询": 查询,
        "原始新闻": 新闻结果,
        "分析结果": 分析结果
    }

Generated Image

注意事项

  1. 投资决策别全靠AI,它只是辅助工具
  2. 数据源要靠谱,垃圾进垃圾出的道理都懂
  3. 定期评估模型性能,市场变了模型也得跟着变
  4. 敏感金融数据加密存储,别把客户资料泄露了
  5. 遵守金融法规,不是啥建议都能给的

总结

Langchain 库是构建智能金融决策系统的强大工具,可以帮你:

  • 结构化处理金融数据
  • 自动化投资研究分析
  • 生成个性化投资建议
  • 持续优化投资组合

哎呀,终于搞定这个投资助手了!加班做完这套系统后,我相信你的投资分析效率会提高不少。不过记住,再智能的系统也只是工具,最终决策还是你自己拍板。开始用起来吧!

如何零基础入门 / 学习AI大模型?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

想正式转到一些新兴的 AI 行业,不仅需要系统的学习AI大模型。同时也要跟已有的技能结合,辅助编程提效,或上手实操应用,增加自己的职场竞争力。

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高

那么我作为一名热心肠的互联网老兵,我意识到有很多经验和知识值得分享给大家,希望可以帮助到更多学习大模型的人!至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

👉 福利来袭优快云大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

全套AGI大模型学习大纲+路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

read-normal-img

640套AI大模型报告合集

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

👉学会后的收获:👈
基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。

👉 福利来袭优快云大礼包:《2025最全AI大模型学习资源包》免费分享,安全可点 👈

img

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值