利用Polygon IO工具箱进行股票市场数据交互——完整指南

3 阅读2分钟

引言

在现代金融市场中,股票数据的及时获取对于投资者和分析师都至关重要。Polygon IO提供了一套功能强大的API工具,帮助我们轻松获取股票市场数据。在这篇文章中,我们将介绍如何使用Polygon IO工具箱来访问和操作这些API。本文将展示一个使用Langchain平台的示例,帮助你快速上手。

主要内容

Polygon IO API的基本介绍

Polygon IO是一家提供实时和历史市场数据的公司,其API涵盖股票、外汇、加密货币等多个领域。在使用这些API时,开发者需要一个有效的API密钥,同时由于某些地区的网络限制,可能需要考虑使用API代理服务以提高访问的稳定性。

设置环境

在使用Polygon IO的API之前,我们首先需要设置我们的开发环境。以下是必要步骤:

# 安装必要的软件包
%pip install --upgrade --quiet langchain-community > /dev/null

你需要在Polygon IO官网上获取一个API密钥,并将其设置为环境变量:

import getpass
import os

# 获取Polygon IO API密钥
os.environ["POLYGON_API_KEY"] = getpass.getpass()
# 使用API代理服务提高访问稳定性

初始化代理

在初始化代理之前,建议设置LangSmith以获得最佳的可观测性,但这不是必须的:

# os.environ["LANGCHAIN_TRACING_V2"] = "true"
# os.environ["LANGCHAIN_API_KEY"] = getpass.getpass()

接下来,我们来初始化Langchain的代理和工具箱:

from langchain import hub
from langchain.agents import AgentExecutor, create_openai_functions_agent
from langchain_community.agent_toolkits.polygon.toolkit import PolygonToolkit
from langchain_community.utilities.polygon import PolygonAPIWrapper
from langchain_openai import ChatOpenAI

# 初始化语言模型
llm = ChatOpenAI(temperature=0)

# 定义基本提示
instructions = """You are an assistant."""
base_prompt = hub.pull("langchain-ai/openai-functions-template")
prompt = base_prompt.partial(instructions=instructions)

# 初始化API包装器和工具箱
polygon = PolygonAPIWrapper()
toolkit = PolygonToolkit.from_polygon_api_wrapper(polygon)
agent = create_openai_functions_agent(llm, toolkit.get_tools(), prompt)

agent_executor = AgentExecutor(
    agent=agent,
    tools=toolkit.get_tools(),
    verbose=True,
)

代码示例

假设我们想获得Apple公司(AAPL)的最新股价,可以通过如下代码实现:

response = agent_executor.invoke({"input": "What is the latest stock price for AAPL?"})
print(response)

这段代码会调用API并返回AAPL的最新股价。

常见问题和解决方案

  • 网络访问问题:如果你所在的地区对API访问有限制,考虑使用代理或VPN。
  • API权限问题:确保你的API密钥具有调用所需数据的权限,通常“Stocks Advanced”订阅是必要的。

总结和进一步学习资源

本文介绍了如何使用Polygon IO的工具箱与股票市场数据API交互。通过这些步骤,开发者可以轻松集成市场数据到自己的应用中。为了进一步学习,可以参考以下资源:

参考资料

如果这篇文章对你有帮助,欢迎点赞并关注我的博客。您的支持是我持续创作的动力!

---END---