はじめに
FinRobotはAI4Finance Foundationによって開発されたオープンソースのAIインテリジェンス・プラットフォームで、金融分析用に設計されている。FinRobotはもともと、金融分析プロセスを簡素化・最適化し、高度なAI技術によって分析の精度と効率を向上させるために設計された。FinRobotの主な機能は、市場動向の解釈、経済予測、投資戦略の提供などである。
機能一覧
- 市場動向分析リアルタイムで市場ダイナミクスを監視・分析し、トレンド予測と投資推奨を提供。
- 経済予測ビッグデータとAIアルゴリズムを使ってマクロ経済指標を予測。
- 投資戦略の提供過去のデータと市場分析に基づき、パーソナライズされた投資戦略を作成します。
- マルチモーダルデータ処理市場データ、ニュース、経済指標を統合し、多角的な分析を行う。
- オープンソースライブラリ(OSSL)二次開発や機能拡張をサポートする豊富なオープンソースライブラリを提供します。
フィンロボット建築設計
1.FinRobotエコシステム
FinRobotは4層のアーキテクチャを採用しており、各層は金融AIのタスクに最適化されている。
- 金融AIエージェント層市場予測エージェント、文書分析エージェント、取引戦略エージェントなど。
- 金融LLMアルゴリズム層金融分析の専門性を高めるため、金融分野に特化したLLMチューニングをサポート。
- LLMOpsとDataOpsレイヤーマルチソースデータ統合を提供し、複数のLLMモデルの動的適応をサポートします。
- マルチソースLLMベースモデル層プラグアンドプレイをサポート LLMモデルは、さまざまなタスクに柔軟に適応することを要求しています。
2.AIエージェントのワークフロー
FinRobotエージェントのワークフローは、3つのコア・コンポーネントで構成されている:
- 知覚市場データ、ニュース、経済指標へのアクセス。
- 思考(脳)LLMとファイナンシャル・チェーン・シンキング・アプローチを組み合わせてトレーディングの意思決定を行う。
- アクション取引の実行、ポートフォリオの調整、レポートの作成、アラートの送信。
3.インテリジェント派遣システム
フィンロボットの使用 スマート・スケジューラー 最適なAIエージェントにタスクが割り当てられるようにするためのスケジューリングシステム。
- ディレクター・エージェントタスクの特性に基づいてエージェントを割り当てる。
- 代理店登録エージェント登録を管理し、ステータスを追跡します。
- エージェントアダプタータスクの適合性を高めるためにエージェントの機能を調整する。
- タスクマネージャーAIエージェントのタスク実行を保存・管理します。
ヘルプの使用
インストール手順
(1) Python環境の構築
conda create --name finrobot python=3.10 conda activate finrobot
(2) コードベースのクローン
git clone https://github.com/AI4Finance-Foundation/FinRobot.git cd FinRobot
(3) 依存関係のインストール
pip install -U finrobot # 或者从源码安装 pip install -e .
(4) 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.アプリケーション例
(1)市場予測エージェント:株価動向の予測
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} 近期市场动态,并预测未来一周股价走势。")
結局
(2) 財務分析エージェント:財務レポートの自動生成
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}")
結局
財務状況分析(財務CoT):
- 予備データ収集:10-Kレポート、市場データ、財務比率
- 財務諸表の分析:貸借対照表、損益計算書、キャッシュフロー計算書
- 会社概要と業績:会社概要、事業ハイライト、セグメント分析
- リスク評価:リスクの評価
- 財務業績の視覚化:株価収益率(PEレシオ)と1株当たり利益(EPS)のチャート化
- 発見を段落にまとめる:すべての部分を首尾一貫した要約に統合する
- PDFレポートの作成:PDFファイルを自動生成するツールを使用します。
- 品質保証:単語数のチェック