【2025年最新版】Bank of America (BAC) 20年株価・財務徹底分析:
メガバンク投資を初心者にも分かりやすく解説
Bank of America(以下 BOA) は
①コンシューマー・バンキング、
②グローバル・バンキング、
③グローバル・マーケッツ の
三本柱で全米 2 位の資産規模を誇る金融グループです。
2008 年の金融危機で株価は 90% 近く暴落しましたが、
その後は配当と自社株買いをテコに 10 年で 10 倍以上回復。
直近 2024 年末終値は $43.42(前年比 +34%) と
金利上昇メリットを追い風に大幅高となりました。
本稿では 2005 – 2024 年の実データを用いて
BOA のビジネス構造・財務・株価をグラフ化しながら
初心者向けに解説します。
1. ビジネスモデル概観
BOA の収益モデルは「巨大な湖に流れ込む 3 本の大河」と例えられます。
Consumer Banking はリテール預金と住宅ローンで安定した水量を提供。
Global Banking は企業向け融資・M&A 手数料という季節変動の大きい支流。
Global Markets はトレーディング収益という急流が時に大量の水を注ぎ込みます。
この 3 つが合流し、直近 ROE は 12.4% まで改善しました。
2. 売上高・純利益の推移
3. 営業CF・投資CF・財務CFの推移
4. 総資産・流動資産・負債・自己資本の推移
5. セグメント別の推移
Year | Consumer Banking |
GWIM | Global Banking |
Global Markets |
Other |
---|---|---|---|---|---|
2019 | 39.6 | 19.3 | 25.2 | 16.8 | -8.0 |
2020 | 37.9 | 18.0 | 23.1 | 20.4 | -7.4 |
2021 | 40.5 | 20.1 | 26.6 | 21.8 | -5.6 |
2022 | 41.8 | 21.6 | 27.2 | 18.9 | -6.2 |
2023 | 42.0 | 22.9 | 24.8 | 19.5 | -8.3 |
2024 | 41.4 | 22.9 | 24.0 | 21.8 | -7.6 |
Year | 北米 | 欧州 | アジア太平洋 | 南米・その他 |
---|---|---|---|---|
2014 | 92 | 5 | 2 | 1 |
2019 | 88 | 6 | 5 | 1 |
2020 | 90 | 5 | 4 | 1 |
2021 | 88 | 6 | 5 | 1 |
2022 | 87 | 6 | 5 | 2 |
2024 | 87 | 6 | 5 | 2 |
6. 株価動向の要因分析
7. バリュエーション分析
2024 年末 PER は 13.5 倍 と
S&P500 銀行セクター平均(14.8 倍)より低い水準。
PBR は 0.97 倍で簿価割れ。
配当 2% + 自社株買い 3% による
年 5% 超の株主還元が継続する見通し。
8. 配当と配当利回りの分析
9. リスクと注意点
• 金利リスク:長短金利差縮小で利ザヤ圧迫。
• 規制リスク:Basel Ⅲ 最終案で RW 資産増。
• 信用リスク:オフィス CRE 向け融資残高は総融資の 8%。
• フィンテック競合:若年層シェア流出に注意。
10. 今後の展望
• モバイル MAU 4,000 万人目標(現 3,600 万)
• AI チャット「Erica®」で営業店コスト▲6%
• Wealth AUM 3 T → 3.5 T ドル計画
デジタル化と富裕層ビジネス拡大が成長ドライバー。
11. まとめ+免責事項
BOA はリテール預金基盤が厚く、金利上昇局面で利益が急伸。
足元のバリュエーションは割安圏で、配当+自社株買いの
トータルリターンが期待できます。
一方で景気後退・規制強化が逆風となり得るため、
投資判断は総合的に行ってください。
データソース & 検証
取得日: 2025‑07‑24
一次ソース: SEC EDGAR 10‑K/10‑Q、EDINET XBRL
株価: Yahoo! Finance 調整後終値(年末)、Stooq 対照 ±1% 内
補助: Macrotrends, CompaniesMarketCap, IR 資料
乖離箇所は一次ソースを優先し注記済み。
# Data Fetch (pseudo) for y in range(2005,2025): price = yf_adj_close("BAC", y_end) pl, bs, cf = sec_download("BAC", y) seg = extract_segment_note("BAC", y) verify(price, seg, macrotrends) dump_to_js()