На современных рынках, где миллиарды зарабатываются за секунды, ожидание часами для анализа акций больше не является целесообразным
Представьте, что вы вводите «построй мне график прироста акций X» и мгновенно получаете чистый график. Без ручного сбора данных, кодирования или отладки. В этом руководстве мы создадим персонального аналитика рынка с помощью CrewAI и MCP. К концу у вас будет помощник, который преобразует запросы на естественном языке в практические аналитические данные по акциям.
Цель
Наш финансовый аналитик на базе MCP упрощает анализ финансовых данных с помощью агентов искусственного интеллекта. Он устраняет разрыв между сложными источниками финансовых данных и запросами пользователей, предоставляя актуальную информацию с учётом контекста в режиме реального времени. Такой подход не только экономит время и снижает количество ошибок, связанных с ручным вводом данных, но также обеспечивает более высокий уровень безопасности, совместимости и прозрачности.
Обзор системы
- Запрос пользователя: запрос на естественном языке, например: «Покажи мне динамику акций Tesla за последний год».
- Агент MCP: вызывает Financial Analyst Crew — набор специализированных агентов.
- Агенты взаимодействуют: они анализируют запрос, генерируют код Python, выполняют его и проверяют результаты.
- Вывод: пользователь получает чистый график с немедленными практическими выводами.
Пошаговая инструкция: создание персонального аналитика рынка
Предварительные требования
Вот некоторые необходимые пакеты Python:
pip install crewai crewai-tools pydantic yfinance python-dotenv
Создание финансового аналитика на базе искусственного интеллекта с помощью MCP
Мы создадим два основных компонента:
- The Financial Analyst Crew: поддерживается агентами CrewAI, которые читают запрос пользователя, создают код Python и запускают его для визуализации данных о запасах.
- Файл сервера MCP: сервер Model Context Protocol, который представит это в виде инструментов искусственного интеллекта, чтобы его можно было подключить прямо к вашим рабочим процессам искусственного интеллекта.
Давайте разберёмся.
The Financial Analyst Crew
Именно здесь происходит настоящий интеллект. Мы используем CrewAI для координации нескольких агентов с разными ролями:
Шаг 1. Определите структуру вывода
class QueryAnalysisOutput(BaseModel):
symbols: list[str]
timeframe: str
action: str
Эта модель Pydantic обеспечивает структурированное извлечение данных из запроса пользователя.
Шаг 2: настройте LLM
llm = LLM(
model="openai/gpt-4o",
temperature=0.7
)
Шаг 3. Создание агентов
Агент 1: парсер запросов
- Читает запрос.
- Извлекает биржевые тикеры, временные рамки и предполагаемые действия.
- Также преобразует естественный язык в структурированный JSON.
query_parser_agent = Agent(
role="Stock Data Analyst",
goal="Extract stock details and fetch required data...",
output_pydantic=QueryAnalysisOutput
)
Агент 2: писатель кода
- Принимает структурированный вывод запроса.
- Пишет чистый, исполняемый код Python с использованием:
- yfinance (получает данные о запасах);
- pandas (для манипулирования данными);
- matplotlib (для построения графиков).
code_writer_agent = Agent(
role="Senior Python Developer",
goal="Write Python code to visualize stock data..."
)
Агент 3: исполнитель кода
- Запускает сгенерированный код.
- Исправляет ошибки, если что-то ломается.
- Может делегировать задачу обратно писателю кода для исправления.
code_execution_agent = Agent(
role="Senior Code Execution Expert",
allow_code_execution=True,
allow_delegation=True
)
Шаг 4: обработка экипажа
Мы будем следовать определённой последовательности при использовании этих агентов, то есть:
- Парсер запросов.
- Написать код Python.
- Выполнить и проверить результаты.
crew = Crew(
agents=[query_parser_agent, code_writer_agent, code_execution_agent],
tasks=[query_parsing_task, code_writer_task, code_execution_task],
process=Process.sequential
)
Шаг 5: основная функция
Оркестрирует всю многоагентскую систему и возвращает окончательный исполняемый код Python.
def run_financial_analysis(query):
result = crew.kickoff(inputs={"query": query})
return result.raw
Теперь мы создадим файл сервера MCP:
- Создание интерфейса: это интерфейс, который позволяет ИИ-помощникам вызывать нашу функцию.
from mcp.server.fastmcp import FastMCP
from finance_crew import run_financial_analysis
FastMCP: A lightweight MCP server framework for exposing functions as AI tools
run_financial_analysis: The main function from the above code that does all the heavy lifting.
- Создание экземпляра MCP
Мы называем наш набор инструментов MCP «финансовый аналитик». Это действует как имя приложения.
mcp = FastMCP("financial-analyst")
Инструмент 1: analyze_stock()
- Принимает запрос на естественном языке.
- Передаёт его экипажу финансового аналитика (нашим агентам).
- Возвращает скрипт Python в виде строки, который может извлекать и визуализировать запрошенные данные о запасах.
@mcp.tool()
def analyze_stock(query: str) -> str:
...
result = run_financial_analysis(query)
return result
Инструмент 2: save code
Сохраняет сгенерированный код Python в файл stock_analysis.py.
Обеспечивает действительность и возможность выполнения файла.
@mcp.tool()
def save_code(code: str) -> str:
with open('stock_analysis.py', 'w') as f:
f.write(code)
Инструмент 3: run_code_and_show_plot()
- Выполняет сохранённый скрипт напрямую.
- Генерирует запрошенную визуализацию акций в режиме реального времени.
Запускает сервер MCP локально через stdio, готовый к интеграции в любую платформу искусственного интеллекта, поддерживающую MCP.
if __name__ == "__main__":
mcp.run(transport='stdio')
Итоговый вывод
При такой настройке ввод запроса, например «Построй график динамики акций Apple за последние 6 месяцев», приводит к созданию готового к использованию графика — без необходимости ручного кодирования.
Заключение
Создание финансового аналитика на базе MCP с помощью CrewAI показывает, как многоагентные системы могут трансформировать финансовый анализ. Объединяя структурированный анализ запросов, автоматизированную генерацию кода Python и выполнение в режиме реального времени, мы устраняем узкие места, связанные с ручным кодированием и отладкой. Этот проект подчёркивает, как агенты искусственного интеллекта могут эффективно справляться со сложными рабочими процессами, и устанавливает новый стандарт для ориентированной на пользователя финансовой аналитики.
Часто задаваемые вопросы
Q1. Что такое финансовый аналитик на базе MCP?
A. Финансовый аналитик на базе MCP использует Model Context Protocol и агентов CrewAI для автоматизации анализа финансовых данных, преобразуя запросы на естественном языке в практические аналитические данные по акциям в режиме реального времени.
Q2. Как CrewAI помогает в создании финансовых инструментов с использованием искусственного интеллекта?
A. CrewAI координирует работу нескольких агентов искусственного интеллекта, которые анализируют запросы, пишут код Python и выполняют его. Это позволяет в режиме реального времени автоматически анализировать акции без ручного кодирования или подготовки данных.
Q3. Можно ли интегрировать MCP с существующими финансовыми рабочими процессами?
A. Да, MCP плавно интегрируется с финансовыми рабочими процессами, предоставляя инструменты искусственного интеллекта, такие как analyze_stock и run_code. Это повышает совместимость, автоматизацию и безопасность для аналитических конвейеров финансовых данных.
Q4. Зачем использовать агентов искусственного интеллекта для анализа фондового рынка?
A. Агенты искусственного интеллекта снижают количество ошибок, связанных с ручным вводом данных, ускоряют получение информации и предоставляют анализ в режиме реального времени на основе данных. Они автоматизируют повторяющиеся финансовые задачи, помогая аналитикам сосредоточиться на принятии решений и стратегии, а не на кодировании.
