FinRobot : un corps intelligent pour améliorer l'efficacité de l'analyse des données financières et de la recherche en investissement

Introduction générale

FinRobot est une plateforme d'intelligence IA open source développée par la Fondation AI4Finance et conçue pour l'analyse financière. FinRobot a été conçu à l'origine pour simplifier et optimiser le processus d'analyse financière et pour améliorer la précision et l'efficacité de l'analyse grâce à des technologies d'IA avancées. Ses fonctions principales comprennent l'interprétation des tendances du marché, les prévisions économiques et la fourniture de stratégies d'investissement, etc. Il convient à tous les types d'institutions financières et d'investisseurs individuels.

FinRobot:提升金融数据分析效率和投资研究的的智能体

 

Liste des fonctions

  • Analyse des tendances du marchéLes services d'appui à la décision : Suivre et analyser la dynamique du marché en temps réel et fournir des prévisions de tendances et des recommandations d'investissement.
  • Prévisions économiques: Utilisation du big data et des algorithmes d'IA pour prévoir les indicateurs macroéconomiques.
  • Offres de stratégies d'investissementLes services d'investissement : Générer des stratégies d'investissement personnalisées sur la base de données historiques et d'analyses de marché.
  • Traitement multimodal des donnéesLes données de marché, les actualités et les indicateurs économiques sont intégrés pour une analyse multidimensionnelle.
  • bibliothèque open source (OSSL)Le système de gestion de l'information (SGI) : Il fournit une riche bibliothèque de code source ouvert pour soutenir le développement secondaire et l'extension des fonctionnalités.

 

FinRobot Architecture Design

1. l'écosystème FinRobot

FinRobot utilise une architecture à quatre niveaux, chaque niveau étant optimisé pour les tâches d'IA financière.

  • Couche d'agents de l'IA financièreLes agents de prévision du marché, les agents d'analyse de documents, les agents de stratégie commerciale, etc., avec un soutien pour les invites de la chaîne de pensée financière.
  • Couche algorithmique financière LLMLes activités d'analyse financière : soutenir la mise au point de LLM spécifiques au domaine financier afin d'améliorer l'expertise en matière d'analyse financière.
  • Couche LLMOps & DataOpsLe système de gestion du cycle de vie (LLM) : il permet l'intégration de données multi-sources et l'adaptation dynamique de plusieurs modèles LLM.
  • Couche de modèle de base LLM multi-sourcesLe modèle LLM demande une adaptation souple aux différentes tâches.

2. flux de travail de l'agent d'IA

Le flux de travail de l'agent FinRobot se compose de trois éléments essentiels :

  • PerceptionAccès aux données du marché, aux nouvelles et aux indicateurs économiques pour l'analyse multimodale.
  • Pensée (cerveau)Les décisions commerciales sont générées à l'aide de la méthode LLM combinée à une approche de réflexion sur la chaîne financière.
  • ActionLes services de gestion de portefeuille : Exécuter des transactions, ajuster des portefeuilles, générer des rapports ou envoyer des alertes.

3. le système de répartition intelligent

FinRobot:提升金融数据分析效率和投资研究的的智能体

FinRobot utilise Planificateur intelligent pour s'assurer que les tâches peuvent être assignées à l'agent d'IA le plus approprié.

  • Directeur AgentLes agents sont affectés en fonction des caractéristiques de la tâche à accomplir.
  • Enregistrement de l'agentGérer les inscriptions des agents et suivre leur statut.
  • Adaptateur pour agentLes agents doivent être en mesure de s'adapter aux tâches à accomplir.
  • Gestionnaire de tâchesLe système de gestion des tâches : il stocke et gère l'exécution des tâches pour les agents d'intelligence artificielle.

 

Utiliser l'aide

Étapes de l'installation

(1) Créer un environnement Python

conda create --name finrobot python=3.10
conda activate finrobot

(2) Clonage de la base de code

git clone https://github.com/AI4Finance-Foundation/FinRobot.git
cd FinRobot

(3) Installation des dépendances

pip install -U finrobot  # 或者从源码安装
pip install -e .

(4) Configuration de la clé API

# 修改 OAI_CONFIG_LIST_sample 文件
mv OAI_CONFIG_LIST_sample OAI_CONFIG_LIST
vi OAI_CONFIG_LIST # 添加 OpenAI API Key

# 修改 config_api_keys_sample 文件
mv config_api_keys_sample config_api_keys
vi config_api_keys # 添加 Finnhub、SEC-API、FinancialModelingPrep API Key

2. exemples d'applications

(1) Agent de prévision du marché : prévision de l'évolution du cours des actions

import autogen
from finrobot.utils import get_current_date, register_keys_from_json
from finrobot.agents.workflow import SingleAssistant

# 读取 OpenAI API 配置
llm_config = {
"config_list": autogen.config_list_from_json("../OAI_CONFIG_LIST"),
"timeout": 120,
"temperature": 0,
}

# 注册 API 密钥
register_keys_from_json("../config_api_keys")

# 运行预测
company = "NVDA"
assistant = SingleAssistant("Market_Analyst", llm_config, human_input_mode="NEVER")
assistant.chat(f"分析 {company} 近期市场动态,并预测未来一周股价走势。")

en fin de compte

FinRobot:提升金融数据分析效率和投资研究的的智能体

(2) Agent d'analyse financière : génération automatique de rapports financiers

import os
import autogen
from finrobot.utils import register_keys_from_json
from finrobot.agents.workflow import SingleAssistantShadow
# 配置 LLM 参数
llm_config = {
"config_list": autogen.config_list_from_json("../OAI_CONFIG_LIST"),
"timeout": 120,
"temperature": 0.5,
}
# 注册 API 密钥
register_keys_from_json("../config_api_keys")
# 创建工作目录
work_dir = os.path.join("..", "report")
os.makedirs(work_dir, exist_ok=True)
# 初始化智能助手
assistant = SingleAssistantShadow("Expert_Investor", llm_config, human_input_mode="TERMINATE")
# 设定公司和年份
company = "Microsoft"
fyear = "2023"
# 生成报告请求
message = f"请基于 {company} {fyear} 年的财务数据撰写年度分析报告,并导出 PDF。"
# 运行助手并处理异常
try:
assistant.chat(message, use_cache=True, max_turns=50, summary_method="last_msg")
print(f"报告已成功生成并保存至 {work_dir}")
except Exception as e:
print(f"生成报告时出错: {e}")

en fin de compte

FinRobot:提升金融数据分析效率和投资研究的的智能体

Analyse de la situation financière (CoT financier) :

  1. Collecte de données préliminaires : rapports 10-K, données de marché, ratios financiers
  2. Analyser les états financiers : bilan, compte de résultat, tableau des flux de trésorerie
  3. Aperçu et performance de l'entreprise : description de l'entreprise, faits saillants, analyse sectorielle
  4. Évaluation des risques : évaluer les risques
  5. Visualisation des performances financières : graphiques du ratio cours-bénéfice (PE) et du bénéfice par action (BPA)
  6. Synthèse des résultats en paragraphes : intégration de toutes les parties dans un résumé cohérent
  7. Générer des rapports PDF : utiliser des outils pour générer automatiquement des fichiers PDF
  8. Assurance qualité : vérification du nombre de mots
© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...