借助 OpenAI 打造股票分析利器,探索科技股投资之道

作者:老余捞鱼

原创不易,转载请标明出处及原作者。

写在前面的话:
       
本文提供了一个分步指南,指导大家如何利用 OpenAI GPT-4 模型和雅虎财经 yfinance 库比较不同股票的投资价值,并通过异步请求加快处理速度,最终构建一个基于 Gradio 的 Web UI 应用程序。

       在本教程中,我将介绍如何利用 GPT-4 比较潜在的股票购买。它基于 Matt Shumer 使用Claude 进行金融分析的代码。本教程介绍了对该策略的修改,以便与 OpenAI API 配合使用。我们还实现了异步请求,这一改动大大加快了处理速度。我们使用的主要 python 库是:

  • yfinance: Yahoo finance 是一个 python 库,提供线程和 Pythonic 方式从雅虎财经下载市场数据。

​​​​​​​       首先,为了安装所需的库,我们创建一个 requirements.txt 文件:

yfinance
requests
beautifulsoup4
openai
python-dotenv
gradio

​​​​​​​       然后,我们就可以创建一个新的 conda 环境并安装库:

conda create --name gptinvestor python=3.10
conda activate gptinvestor
pip install -r requirements.txt

​​​​​​​       程序包括几个连续的函数调用,首先通过 yfinance 库获取股票代码数据(例如微软的 MSFT)。数据检索完成后,程序会将这些信息转发给 OpenAI API 进行分析。以下是该程序的工作流程概览:


1. 基础代码

​​​​​​​       我们首先导入所需的 python 库:

from dataclasses import dataclass, field
from typing import List, Dict, Optional
import pandas as pd
import asyncio
import requests
from bs4 import BeautifulSoup
from datetime import datetime, timedelta

from openai import OpenAI, AsyncOpenAI
from dotenv import load_dotenv
import yfinance as yf

​​​​​​​       接下来,我们创建两个 OpenAI 客户端,一个用于异步调用,另一个用于最后的同步调用,在同步调用中,我们希望 GPT 为我们对股票进行排名。

load_dotenv("env_variables.env")
syncclient = OpenAI()
asyncclient = AsyncOpenAI()

​​​​​​​       注意:您必须在运行代码的同一目录下创建名为 env_variables.env 的文件,并在其中放入 OpenAI API 密钥:

OPENAI_API_KEY=abcdefghijk12345

​​​​​​​       load_dotenv(“env_variables.env”) 会将你的 OpenAI API 密钥作为环境变量即时加载。

​​​​​​​       接下来,我们为每个股票代码定义一个数据类,并将该类命名为 TickerClass。该数据类用于存储每个股票代码(4 个字母的股票表示法)的不同信息。

​​​​​​​       我们引入了一个名为 TickerClass的数据类,用于保存每个股票代码的不同详细信息,这些代码由四个字母组成(如 MSFT 表示 Microsoft)。该类作为一个结构化容器,用于存储每只股票的相关信息,包括历史数据、资产负债表、分析师评级和价格等。此外,它还包

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老余捞鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值