|
from crewai import Agent |
|
|
|
from crewai.tools.browser_tools import BrowserTools |
|
from crewai.tools.calculator_tools import CalculatorTools |
|
from crewai.tools.gemini_tools import GeminiSearchTools |
|
from crewai.tools.sec_tools import SECTools |
|
|
|
from langchain.tools.yahoo_finance_news import YahooFinanceNewsTool |
|
|
|
class StockAnalysisAgents(): |
|
def financial_analyst(self): |
|
return Agent( |
|
role='The Best Financial Analyst', |
|
goal="""Impress all customers with your financial data |
|
and market trends analysis""", |
|
backstory="""The most seasoned financial analyst with |
|
lots of expertise in stock market analysis and investment |
|
strategies that is working for a super important customer.""", |
|
verbose=True, |
|
tools=[ |
|
GeminiSearchTools.gemini_search, |
|
BrowserTools.scrape_and_summarize_website, |
|
CalculatorTools.calculate, |
|
SECTools.search_10q, |
|
SECTools.search_10k |
|
] |
|
) |
|
|
|
def research_analyst(self): |
|
return Agent( |
|
role='Staff Research Analyst', |
|
goal="""Being the best at gather, interpret data and amaze |
|
your customer with it""", |
|
backstory="""Known as the BEST research analyst, you're |
|
skilled in sifting through news, company announcements, |
|
and market sentiments. Now you're working on a super |
|
important customer""", |
|
verbose=True, |
|
tools=[ |
|
GeminiSearchTools.gemini_search, |
|
BrowserTools.scrape_and_summarize_website, |
|
YahooFinanceNewsTool(), |
|
SECTools.search_10q, |
|
SECTools.search_10k |
|
] |
|
) |
|
|
|
def investment_advisor(self): |
|
return Agent( |
|
role='Private Investment Advisor', |
|
goal="""Impress your customers with full analyses over stocks |
|
and completer investment recommendations""", |
|
backstory="""You're the most experienced investment advisor |
|
and you combine various analytical insights to formulate |
|
strategic investment advice. You are now working for |
|
a super important customer you need to impress.""", |
|
verbose=True, |
|
tools=[ |
|
GeminiSearchTools.gemini_search, |
|
BrowserTools.scrape_and_summarize_website, |
|
CalculatorTools.calculate, |
|
YahooFinanceNewsTool() |
|
] |
|
) |