雅虎财经
基类:EventBaseToolSpec
雅虎财经工具规格。
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92 | class YahooFinanceToolSpec(BaseToolSpec):
"""Yahoo Finance tool spec."""
spec_functions = [
"balance_sheet",
"income_statement",
"cash_flow",
"stock_basic_info",
"stock_analyst_recommendations",
"stock_news",
]
def __init__(self) -> None:
"""Initialize the Yahoo Finance tool spec."""
def balance_sheet(self, ticker: str) -> str:
"""
Return the balance sheet of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
balance_sheet = pd.DataFrame(stock.balance_sheet)
return "Balance Sheet: \n" + balance_sheet.to_string()
def income_statement(self, ticker: str) -> str:
"""
Return the income statement of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
income_statement = pd.DataFrame(stock.income_stmt)
return "Income Statement: \n" + income_statement.to_string()
def cash_flow(self, ticker: str) -> str:
"""
Return the cash flow of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
cash_flow = pd.DataFrame(stock.cashflow)
return "Cash Flow: \n" + cash_flow.to_string()
def stock_basic_info(self, ticker: str) -> str:
"""
Return the basic info of the stock. Ex: price, description, name.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
return "Info: \n" + str(stock.info)
def stock_analyst_recommendations(self, ticker: str) -> str:
"""
Get the analyst recommendations for a stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
return "Recommendations: \n" + str(stock.recommendations)
def stock_news(self, ticker: str) -> str:
"""
Get the most recent news titles of a stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
news = stock.news
out = "News: \n"
for i in news:
out += i["title"] + "\n"
return out
|
balance_sheet(ticker: str) -> str
返回该股票的资产负债表。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
21
22
23
24
25
26
27
28
29
30
31 | def balance_sheet(self, ticker: str) -> str:
"""
Return the balance sheet of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
balance_sheet = pd.DataFrame(stock.balance_sheet)
return "Balance Sheet: \n" + balance_sheet.to_string()
|
income_statement(ticker: str) -> str
返回该股票的利润表。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
33
34
35
36
37
38
39
40
41
42
43 | def income_statement(self, ticker: str) -> str:
"""
Return the income statement of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
income_statement = pd.DataFrame(stock.income_stmt)
return "Income Statement: \n" + income_statement.to_string()
|
cash_flow(ticker: str) -> str
返回该股票的现金流。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
45
46
47
48
49
50
51
52
53
54
55 | def cash_flow(self, ticker: str) -> str:
"""
Return the cash flow of the stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
cash_flow = pd.DataFrame(stock.cashflow)
return "Cash Flow: \n" + cash_flow.to_string()
|
stock_basic_info(ticker: str) -> str
返回股票的基本信息。例如:价格、描述、名称。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
57
58
59
60
61
62
63
64
65
66 | def stock_basic_info(self, ticker: str) -> str:
"""
Return the basic info of the stock. Ex: price, description, name.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
return "Info: \n" + str(stock.info)
|
stock_analyst_recommendations(ticker: str) -> str
获取股票的分析师推荐。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
68
69
70
71
72
73
74
75
76
77 | def stock_analyst_recommendations(self, ticker: str) -> str:
"""
Get the analyst recommendations for a stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
return "Recommendations: \n" + str(stock.recommendations)
|
stock_news(ticker: str) -> str
获取某只股票的最新新闻标题。
参数:
| 名称 |
类型 |
描述 |
默认 |
ticker
|
str
|
|
required
|
workflows/handler.py 中的源代码llama_index/tools/yahoo_finance/base.py
79
80
81
82
83
84
85
86
87
88
89
90
91
92 | def stock_news(self, ticker: str) -> str:
"""
Get the most recent news titles of a stock.
Args:
ticker (str): the stock ticker to be given to yfinance
"""
stock = yf.Ticker(ticker)
news = stock.news
out = "News: \n"
for i in news:
out += i["title"] + "\n"
return out
|
选项:
成员:- YahooFinanceToolSpec