BAC
Structural scoring is not meaningful for this business
Structural scoring uses gross margin, free cash flow and Altman Z — measures built for operating companies. For banks, insurers and asset managers they produce artifacts, because the cash-flow statement is dominated by lending and deposit flows rather than operations. Treat the structural and composite figures below as not comparable with other sectors, in either direction.
- Cost of goods sold is not reported, so gross margin reads as 100%
Daily closes · 1Y (252 sessions) · +36.4% · range 46.72–64.81
The Businesswhat the company reports
Business & cash flow
| OCF / assets | 0.4% |
|---|---|
| FCF / revenue | 11.2% |
| Gross margin | 100.0% |
| ROIC | 0.9% |
| Forward P/E | 12.2 |
This company does not report capital expenditure in the standard filing tag, so free cash flow cannot be derived and FCF/assets is not shown — common for asset managers, REITs, insurers and utilities. OCF/assets is shown instead, and it is the other measure Brown Bear's testing found to survive. Assets are from the latest annual filing (FY2025).
Price vs Earnings growth
Price has run ahead of forward EPS growth by 15.8pp
Confidence 95.0/100
Drivers
| Forward EPS growth | +20.6% |
|---|---|
| Trailing price return (1y) | +36.4% |
| Forward P/E compression | +17.1% |
Figures
| Trailing EPS | 4.39 |
|---|---|
| Forward EPS | 5.30 |
| Trailing P/E | 14.76 |
| Forward P/E | 12.24 |
Revisions
Stable (+0.4%, 10 dates)
Takeaway Price has moved further than forward earnings growth currently justifies — worth weighing against the rest of the entry case.
Reported earnings
Revenue Net incomeEPS (GAAP) (0.39–1.16, own scale) Derived Q4
12 quarters to Q1 26. Revenue and net income share one scale, so the gap between them is the margin. The line is GAAP EPS — it spans every quarter shown, where the reported figure only goes back as far as the consensus feed does.
| Quarter ending | Revenue | YoY | Net income | EPS (GAAP) | EPS reported | vs consensus | Filed |
|---|---|---|---|---|---|---|---|
| 2026-03-31 | 30.27bn | +10.6% | 8.58bn | 1.16 | 1.11 | +8.6% | 2026-05-01 |
| 2025-12-31 (derived) | 31.18bn | +23.0% | 7.53bn | 0.98 | 0.98 | +1.3% | 2026-02-25 |
| 2025-09-30 | 28.09bn | +10.8% | 8.47bn | 1.11 | 1.06 | +10.3% | 2025-10-31 |
| 2025-06-30 | 26.46bn | +4.3% | 7.12bn | 0.93 | — | — | 2025-07-31 |
| 2025-03-31 | 27.37bn | +6.0% | 7.40bn | 0.95 | — | — | 2025-04-30 |
| 2024-12-31 (derived) | 25.35bn | +15.4% | 6.67bn | 0.84 | — | — | 2025-02-25 |
| 2024-09-30 | 25.34bn | +0.7% | 6.90bn | 0.87 | — | — | 2024-10-29 |
| 2024-06-30 | 25.38bn | +0.7% | 6.90bn | 0.87 | — | — | 2024-07-30 |
| 2024-03-31 | 25.82bn | — | 6.67bn | 0.83 | — | — | 2024-04-30 |
| 2023-12-31 (derived) | 21.96bn | — | 3.14bn | 0.39 | — | — | 2024-02-20 |
| 2023-09-30 | 25.17bn | — | 7.80bn | 0.97 | — | — | 2023-10-31 |
| 2023-06-30 | 25.20bn | — | 7.41bn | 0.92 | — | — | 2023-07-31 |
Earnings response
| Typical move around a filing | ±1.6% |
|---|---|
| On an ordinary two days | ±1.4% — filings move it 1.1× as much |
| Direction | 4 up, 7 down over 11 filings |
Revenue up year on year Revenue down Price move around the filing separate scales — a crossing means nothing
| Quarter ending | Filed | Revenue YoY | Move around filing | Next 20 sessions vs SPY |
|---|---|---|---|---|
| 2026-03-31 | 2026-05-01 | +10.6% | -2.4% | -5.2% |
| 2025-09-30 | 2025-10-31 | +10.8% | +1.0% | -0.4% |
| 2025-06-30 | 2025-07-31 | +4.3% | -4.8% | +7.4% |
| 2025-03-31 | 2025-04-30 | +6.0% | +0.5% | +4.3% |
| 2024-09-30 | 2024-10-29 | +0.7% | -0.7% | +9.7% |
| 2024-06-30 | 2024-07-30 | +0.7% | -1.9% | -2.3% |
| 2024-03-31 | 2024-04-30 | -1.7% | -1.6% | +0.1% |
| 2023-09-30 | 2023-10-31 | +2.7% | +2.8% | +8.4% |
| 2023-06-30 | 2023-07-31 | +11.1% | -0.9% | -6.1% |
| 2023-03-31 | 2023-05-01 | +13.0% | -3.8% | -3.0% |
| 2022-09-30 | 2022-10-28 | +7.6% | +0.5% | +0.3% |
Share count
Diluted shares Return since the previous filing
| Direction | Shrinking — shares retired |
|---|---|
| Diluted shares | 7,417.5M as at 2026-03-31 |
| Change over 1 year | -4.5% |
| Change over 3 years | -9.3% |
| Public float | $351.90bn as at 2025-06-30 (10-K) |
The Pricewhat the chart is doingTop ↑
Price Levels
| Strategy | Wait For Pullback |
|---|---|
| Reference band | 61.87 — 63.52 |
| Protective stop | 60.24 (Atr, 3.9% risk) |
| Support | 60.49 (2 touches, 7.1% away) |
| Resistance | — (— away) |
Takeaway The shares are about 7.1% above 60.49, a price buyers have stepped in at before. There is no ceiling to point to, because the stock is trading where it has not traded before and nobody has sold it at these levels. That floor has held 2 times, which is how it was spotted. If someone bought at today's price and sold if it dropped through the level below, they would be about 3.9% out of pocket. That is all this figure means — an illustration of the risk, not a price to sell at.
Levels are computed from price structure. They describe where the engine locates support and extension — they are not targets, and not advice.
Ichimoku Cloud (Adaptive)
| Daily cloud | Price ABOVE the cloud | periods 9/26/52 (99% of classic 9/26/52) |
|---|---|
| Lines | Tenkan/Kijun BULL (fresh up cross, 1d ago) | cloud twist BULL |
| Cloud thickness | 100% percentile (thick — substantial structure) |
| Chikou span | Above price from 26 periods ago |
| Weekly cloud | Price ABOVE the weekly cloud (context only, not scored) |
Takeaway The stock is trading above its cloud — a shaded band drawn from several of its own moving averages, currently 57.78 to 62.45. Being above it means the medium-term picture is pointing upwards, and that band is the first place the stock has recent support if it slips back. Its shorter-term averages agree with that. The band is unusually wide at the moment, so it marks a broad zone rather than a single level.
Trailing returns
| 21 days | +6.9% |
|---|---|
| 63 days | +27.6% |
| 126 days | +17.0% |
| 252 days | +40.4% |
| Below 252d high | 0.0% |
Trend context
| Position | Above trend |
|---|---|
| Extension | Extremely extended |
| Trend slope | Rising strongly |
| Direction of travel | Diverging from trend |
Takeaway Extreme upside extension is still moving away from fair trend; chase risk is elevated.
Volatility
| State | In a squeeze |
|---|---|
| Current band width | 7.2% of price |
| Recent tightest | 6.0% (2 sessions ago, narrower than 96.0% of its history) |
| Expansion since | 1.21× |
| Range broken | Up |
| Band | 60.06 — 64.57 |
Takeaway Lately this share price has been swinging around inside a range roughly 7% wide, and it recently went unusually quiet — calmer than it has been 96% of the time. When a stock goes quiet like this, its next move tends to look big by comparison. But quiet says nothing about which way it will go: Brown Bear tested calm-before-a-move as a reason to buy, and it did not work.
Historical trends
History begins when the site started recording, not when the company listed, so a short line means a short record and nothing more.
Who's Tradingthe flow behind the priceTop ↑
Insider activity
| Activity | No filings in the window |
|---|---|
| Buy filings | 0 |
| Sell filings | 0 |
Open-market Form 4 purchases and sales over the last 75 days, read from SEC EDGAR Form 4. Grants, option exercises, gifts and shares withheld for tax are excluded — they are compensation mechanics, not a decision to buy or sell. Reported Form 4 activity. Brown Bear tested insider cluster-buying as a return signal and rejected it as era-unstable; shown as fact, not signal.
Volume confirmation
| Volume-price trend | Above its signal line |
|---|---|
| Confirmation | Marginal |
No absorption or distribution event in the recent window.
Takeaway Slightly more shares change hands on rising days than on falling ones, but the gap is too small to read anything into.
Options Positioning
No binary-event flag
BAC: no binary-event flag. Near IV 18%, far IV 23% (ratio 0.78), implied move 2.2%.
| Implied volatility | 18% near (9d) · 22% far (65d) |
|---|---|
| Term structure | 0.78× near/far |
| Historical volatility | 15% |
| Implied vs historical | 1.16× |
| Implied move | ±2.2% by 2026-08-21 |
| Implied move vs ATR | 0.49× |
| Skew | Flat (1.03×) |
| Put wall | 37.00 (-42.9% away) |
| Gamma pin | 37.00 |
Takeaway Insuring against a move in this stock costs less for the next few weeks than for the next few months, which is the normal state of affairs and suggests no particular date is worrying anyone. Options traders are positioned for a move of around 2.2% in either direction by 2026-08-21.
Chain as at 2026-08-12. This is a risk read on whether a specific event is being priced — not a directional view.
Context & Methodthe record, and how it was builtTop ↑
Relative Rotation
Mixed Rotation Phase
Rotation health 47.7/100; Mixed Rotation.
| Rotation health | 47.7 |
|---|---|
| Rotation strength | 80.5 |
| Leg | Quadrant | RS-Ratio | RS-Mom |
|---|---|---|---|
| Stock vs sector | Improving | 99.4 | 122.5 |
| Stock vs SPY | Lagging | 81.9 | 95.3 |
| Sector vs SPY | Lagging | 76.4 | 91.0 |
Direction of travel: North-East / strengthening leadership
Position only. Brown Bear's RRG redesign programme is closed — five constructions, none beat an appropriate null — so this section describes where the name sits, and is not a signal.
News Headlines
- Loading headlines\u2026
Headlines are supplied by third-party feeds and are not written, ranked or interpreted by Brown Bear. They feed no score on this page.
Detailed Scoring
Positive signals
- Piotroski F-score 4/9 (+5.0)
- Insider conviction score (+13.0)
- Gross margin quality: 100.0% (+22.0)
- FCF margin quality: 11.2% (+7.4)
- FCF margin improving by 19.5 pts (+5.0)
- High earnings quality (accrual ratio 0.005) (+2.0)
- Accrual ratio improving (0.01 -> 0.01) (+5.0)
- Track 1: MACD histogram state (0.05) (+3.0)
- Track 1: relative strength trend improving (+5.0)
- Track 1: bullish DI spread 28.6 (+8.0)
- Track 1: ADX 26.7 and rising (+5.0)
- Track 1: relative momentum rank 0.77 (+3.6)
- Track 1: Hidden Bullish MACD divergence (+15.0)
- Track 1: EMA20 reclaim distance 4.1% (+4.7)
- Track 1: EMA20 slope improving 1.7% (+4.2)
- Track 1: positive MACD regime (+3.0)
- Track 1: MACD line/signal repair quality (+10.0)
- Track 1: MACD slope improving (+1.0)
- Track 1: VPT strength 0.04 (+0.8)
- Track 1: price above EMA50 by 8.8% (+5.0)
- Track 1: EMA50 slope improving 3.1% (+3.0)
- Regime convergence: VOLATILITY_SQUEEZE_BREAKOUT confidence 62.9/100 (EMERGING) (+12.6)
Negative signals
- Track 1: negative 20-day momentum acceleration (-0.05)
- Track 1: RSI deterioration/extension 74.8, 5-day change +13.3
- Chase risk 52.3/100 (Elevated Chase Risk): RSI 74.8, EMA20 4.1%, EMA50 8.8%, BB 1.05, distribution 5.0/100
- Below-average Altman Z-score (1.29)
- ROIC improving by -0.0 pts (+-5.0)
- Chase risk 52.3/100 | Extension score 47.7/100 | Elevated Chase Risk