🕰️ Time Machine
FFIN — First Financial Bankshares
Price-Time Intelligence · decision-support only — not recommendations, not predictions · as of 28/07/2026
Last price (Close)
34.80 +1.05%
Next window · Cycle 90 · in window · in 2 days
30/07/2026
Last window · Cycle 60 · 15/07/2026
since -1.19%
🕰️ Time Machine — see this symbol's past windows
Daily chart · hover for price & date
Reference points
Last major low · 19/03/2026
28.12
Days: 88 trading / 131 calendar · return since: +23.76%
Last major high · 17/04/2026
33.00
Days: 68 trading / 102 calendar · return since: +5.45%
Price-Time Watch Windows
| Reference point | Cycle | Counting | Target date | Distance | Status |
|---|
| High 17/04/2026 @ 33.00 | Cycle 60 | Trading | 📅 15/07/2026 | -8 (±2) | Passed |
| Low 19/03/2026 @ 28.12 | Cycle 90 | Trading | 📅 30/07/2026 | +2 (±3) | In window |
| Low 19/03/2026 @ 28.12 | Cycle 144 | Calendar | 📅 10/08/2026 | +13 (±3) | Upcoming |
| High 17/04/2026 @ 33.00 | Cycle 120 | Calendar | 📅 15/08/2026 | +18 (±3) | Upcoming |
| High 17/04/2026 @ 33.00 | Cycle 90 | Trading | 📅 27/08/2026 | +22 (±3) | Upcoming |
| High 17/04/2026 @ 33.00 | Cycle 144 | Calendar | 📅 08/09/2026 | +42 (±3) | Upcoming |
| Low 19/03/2026 @ 28.12 | Cycle 120 | Trading | 📅 11/09/2026 | +32 (±3) | Upcoming |
Chronological: recent past → active → upcoming. The target date is the center of the watch window — it opens a few days before and stays relevant a few days after. 'Near a window' is context only, not a signal.
🔔 Recent Technical Events
Price-action events from the last 30 days. 🎯 marks events that landed near a cycle window — the combinations worth the closest look.
● NR7 Compression 28/07/2026🎯 near Cycle 90 window · 30/07/2026
● Bearish Engulfing 27/07/2026🎯 near Cycle 90 window · 30/07/2026
● Hammer Reversal 23/07/2026
● NR7 Compression 13/07/2026🎯 near Cycle 60 window · 15/07/2026
● Failed Breakout 02/07/2026
● Failed Breakout 26/06/2026
Date Echo — seasonal anniversary
What happened around the same calendar date in prior years. n ≈ number of years — descriptive, not an edge. Each window separately, every number vs baseline.
Passed 15/07/2026 · High Cycle 60/Trading · 9 years — Small sample
10 days: Avg +7.28% · Win 100% · DD -1.24%20 days: Avg +5.14% · Win 78% · DD -2.39%
Open Date Echo · 9 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 15/07/2025 | 35.77 | neutral | +3.61% | +0.34% | -2.04% | -6.01% | +4.84% |
| 2024 | 15/07/2024 | 32.17 | near 52w high | +14.27% | +18.65% | +6.56% | +0.00% | +22.66% |
| 2023 | 14/07/2023 | 28.73 | neutral | +6.02% | +13.54% | +8.95% | +0.00% | +13.99% |
| 2022 | 15/07/2022 | 40.25 | neutral | +5.84% | +9.76% | +14.19% | -0.55% | +14.19% |
| 2021 | 15/07/2021 | 49.28 | neutral | -3.57% | +0.20% | +0.47% | -4.65% | +2.39% |
| 2020 | 15/07/2020 | 29.17 | neutral | -0.86% | +5.55% | +9.46% | -3.98% | +10.25% |
| 2019 | 15/07/2019 | 29.76 | neutral | +5.21% | +9.64% | +4.10% | -0.40% | +10.69% |
| 2018 | 16/07/2018 | 26.33 | neutral | +9.78% | +7.50% | +10.45% | -0.09% | +11.21% |
| 2017 | 14/07/2017 | 21.42 | neutral | +0.23% | +0.35% | -5.83% | -5.83% | +3.03% |
In window 30/07/2026 · Low Cycle 90/Trading · 10 years — Small sample
10 days: Avg -0.99% · Win 60% · DD -4.02%20 days: Avg -1.47% · Win 40% · DD -5.37%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 30/07/2025 | 35.11 | neutral | -3.13% | +2.56% | +8.17% | -4.24% | +8.17% |
| 2024 | 30/07/2024 | 38.43 | near 52w high · far above SMA50 | -10.77% | -9.76% | -6.69% | -10.82% | +0.08% |
| 2023 | 31/07/2023 | 32.59 | far above SMA50 | -0.25% | -5.19% | -11.81% | -12.27% | +0.49% |
| 2022 | 29/07/2022 | 44.18 | neutral | +1.06% | +4.03% | -1.11% | -1.11% | +6.81% |
| 2021 | 30/07/2021 | 48.84 | neutral | +1.74% | +0.20% | +0.00% | -2.81% | +3.32% |
| 2020 | 30/07/2020 | 30.46 | neutral | +1.54% | +3.48% | +2.50% | -1.77% | +5.58% |
| 2019 | 30/07/2019 | 32.94 | near 52w high | -5.92% | -5.31% | -10.32% | -10.32% | +0.00% |
| 2018 | 30/07/2018 | 28.30 | near 52w high | +1.50% | +2.74% | +6.18% | +0.00% | +7.24% |
| 2017 | 31/07/2017 | 21.62 | neutral | -1.73% | -4.05% | -6.94% | -8.32% | +0.35% |
| 2016 | 29/07/2016 | 17.08 | near 52w high | +3.45% | +1.38% | +5.36% | -2.02% | +5.88% |
Upcoming 10/08/2026 · Low Cycle 144/Calendar · 10 years — Small sample
10 days: Avg -0.18% · Win 40% · DD -3.05%20 days: Avg -2.28% · Win 50% · DD -5.52%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 11/08/2025 | 33.90 | neutral | +5.10% | +8.70% | +6.43% | +0.00% | +12.04% |
| 2024 | 09/08/2024 | 34.80 | neutral | +2.44% | +5.20% | +2.44% | -1.49% | +5.20% |
| 2023 | 10/08/2023 | 31.29 | neutral | -5.66% | -8.44% | -13.26% | -13.68% | +0.03% |
| 2022 | 10/08/2022 | 45.02 | neutral | +4.22% | -2.62% | -5.66% | -8.46% | +4.82% |
| 2021 | 10/08/2021 | 49.79 | neutral | -2.57% | -2.49% | -9.98% | -9.98% | +1.35% |
| 2020 | 10/08/2020 | 31.99 | neutral | -1.78% | -2.16% | -6.47% | -6.47% | +0.53% |
| 2019 | 09/08/2019 | 31.64 | neutral | -1.55% | -5.44% | +0.54% | -6.64% | +0.54% |
| 2018 | 10/08/2018 | 29.27 | near 52w high | +2.82% | +2.99% | +4.70% | -0.68% | +4.70% |
| 2017 | 10/08/2017 | 20.38 | neutral | -2.70% | -1.23% | -7.36% | -7.61% | +1.84% |
| 2016 | 10/08/2016 | 17.34 | near 52w high | +1.53% | +3.72% | +5.85% | -0.14% | +5.85% |
Upcoming 15/08/2026 · High Cycle 120/Calendar · 10 years — Small sample
10 days: Avg -0.64% · Win 50% · DD -2.64%20 days: Avg -1.47% · Win 50% · DD -5.20%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 15/08/2025 | 35.38 | volume x1.6 | +6.39% | +5.06% | +0.67% | +0.00% | +7.35% |
| 2024 | 15/08/2024 | 35.33 | neutral | -0.37% | +2.72% | +4.60% | -0.79% | +4.60% |
| 2023 | 15/08/2023 | 29.74 | neutral | -3.87% | -3.13% | -7.69% | -9.18% | +0.00% |
| 2022 | 15/08/2022 | 46.57 | far above SMA50 | -3.39% | -8.52% | -9.81% | -11.51% | +1.33% |
| 2021 | 16/08/2021 | 48.91 | neutral | -0.41% | -2.82% | -10.98% | -10.98% | +0.00% |
| 2020 | 14/08/2020 | 31.79 | neutral | -3.84% | -3.18% | -6.61% | -8.21% | +0.00% |
| 2019 | 15/08/2019 | 30.36 | neutral | +3.03% | +1.19% | +10.08% | -2.70% | +10.08% |
| 2018 | 15/08/2018 | 29.38 | near 52w high | +3.06% | +1.96% | +2.98% | +0.00% | +5.02% |
| 2017 | 15/08/2017 | 20.52 | neutral | -2.07% | -2.92% | -1.34% | -8.28% | +0.00% |
| 2016 | 15/08/2016 | 17.59 | near 52w high | +1.11% | +3.27% | +3.40% | -0.31% | +4.80% |
Upcoming 27/08/2026 · High Cycle 90/Trading · 10 years — Small sample
10 days: Avg -1.15% · Win 30% · DD -4.25%20 days: Avg -1.78% · Win 40% · DD -6.28%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 27/08/2025 | 37.98 | neutral | -1.95% | -4.95% | -9.95% | -9.95% | +0.00% |
| 2024 | 27/08/2024 | 35.86 | neutral | +0.53% | -0.67% | +3.39% | -1.84% | +8.86% |
| 2023 | 28/08/2023 | 28.74 | neutral | -1.98% | -5.50% | -13.31% | -13.31% | +2.19% |
| 2022 | 26/08/2022 | 43.69 | neutral | -4.49% | -1.10% | -2.28% | -5.68% | +0.98% |
| 2021 | 27/08/2021 | 48.84 | volume x2.2 | -3.91% | -9.05% | -5.24% | -10.85% | +0.00% |
| 2020 | 27/08/2020 | 31.22 | neutral | -1.73% | -6.53% | -12.01% | -13.52% | +0.00% |
| 2019 | 27/08/2019 | 29.54 | neutral | +2.03% | +11.54% | +14.46% | +0.00% | +14.46% |
| 2018 | 27/08/2018 | 30.05 | near 52w high | +0.83% | +2.66% | +0.93% | -0.33% | +2.85% |
| 2017 | 28/08/2017 | 20.12 | neutral | -3.85% | -0.37% | +7.09% | -6.46% | +7.34% |
| 2016 | 26/08/2016 | 18.00 | near 52w high | +1.67% | +2.42% | -0.85% | -0.85% | +3.20% |
Upcoming 08/09/2026 · High Cycle 144/Calendar · 10 years — Small sample
10 days: Avg +0.67% · Win 50% · DD -2.81%20 days: Avg +1.69% · Win 70% · DD -4.14%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 08/09/2025 | 36.74 | neutral | -3.05% | -6.09% | -7.98% | -8.66% | +0.00% |
| 2024 | 09/09/2024 | 35.65 | neutral | +5.13% | +7.47% | +1.41% | -0.08% | +9.50% |
| 2023 | 08/09/2023 | 27.14 | neutral | +1.74% | -6.34% | -8.31% | -11.13% | +2.15% |
| 2022 | 08/09/2022 | 42.47 | neutral | +1.35% | +1.14% | +3.60% | -1.11% | +4.38% |
| 2021 | 08/09/2021 | 44.82 | volume x1.9 | -1.51% | -1.67% | +4.26% | -2.86% | +6.79% |
| 2020 | 08/09/2020 | 29.92 | volume x1.5 | -2.04% | -7.82% | +0.24% | -9.77% | +0.24% |
| 2019 | 09/09/2019 | 31.81 | near 52w high | +5.79% | +4.69% | +3.68% | +0.00% | +6.30% |
| 2018 | 07/09/2018 | 30.62 | near 52w high | -0.06% | -0.06% | -2.37% | -5.03% | +0.92% |
| 2017 | 08/09/2017 | 18.88 | volume x1.8 | +8.32% | +14.18% | +21.23% | +0.00% | +22.30% |
| 2016 | 08/09/2016 | 18.36 | near 52w high | -1.53% | +1.17% | +1.15% | -2.79% | +1.17% |
Upcoming 11/09/2026 · Low Cycle 120/Trading · 10 years — Small sample
10 days: Avg -0.16% · Win 40% · DD -2.74%20 days: Avg +1.83% · Win 60% · DD -3.85%
Open Date Echo · 10 years
| Year | Actual date | Close | Context | 5d | 10d | 20d | Max DD 20d | Max Gain 20d |
|---|
| 2025 | 11/09/2025 | 36.10 | neutral | -0.25% | -5.26% | -6.04% | -7.07% | +0.00% |
| 2024 | 11/09/2024 | 35.62 | neutral | +6.77% | +4.09% | +2.60% | +0.00% | +9.59% |
| 2023 | 11/09/2023 | 27.04 | volume x1.7 | -0.49% | -5.51% | -8.83% | -10.80% | +2.53% |
| 2022 | 12/09/2022 | 43.21 | neutral | +2.10% | -1.20% | +0.27% | -2.80% | +2.59% |
| 2021 | 10/09/2021 | 43.68 | neutral | +2.57% | +3.31% | +9.01% | -0.32% | +9.58% |
| 2020 | 11/09/2020 | 29.18 | neutral | -0.08% | -5.86% | +6.39% | -7.48% | +7.15% |
| 2019 | 11/09/2019 | 32.95 | near 52w high | +1.98% | +2.62% | -0.82% | -1.13% | +2.62% |
| 2018 | 11/09/2018 | 30.85 | near 52w high | -1.93% | -1.68% | -2.76% | -5.72% | +0.19% |
| 2017 | 11/09/2017 | 19.45 | neutral | +7.44% | +11.06% | +17.39% | +0.00% | +18.68% |
| 2016 | 12/09/2016 | 18.43 | near 52w high · volume x1.5 | -2.10% | -3.19% | +1.14% | -3.19% | +1.14% |
Questions to Watch
Is there a failed breakout above the window?Did an abnormal reversal candle appear?Is there an abnormal volume spike?Is the advance stalling (no follow-through)?Is short-term support breaking?Any change in relative strength vs QQQ/SPY/SMH?Is the leading sector weakening?
Interpretation & Scenarios
Careful wording — scenarios to watch, not forecasts. The decision is the trader's.
⬆️ Continuation (up) — to watch· The broad trend (by MA stacking) is still up.
· Positive relative strength vs QQQ, SMH.
· If it holds above SMA50 (+3.6%) and breaks out on volume above the window — historically similar zones tended to continue. Technical confirmation needed.
⬇️ Weakness (down) — to watch· Relative weakness vs SPY.
· If a breakout fails or it closes below SMA50 / a nearby low on volume — risk of continued weakness. Watch for fading volume and relative weakness.
↔️ Range / no clear edge· Distance from 52w high: -8.7% · from 52w low: +23.8%.
· Without confirmation either way — no clear edge; waiting for confirmation is reasonable.
Current Snapshot
Returns & distances
| 5 / 10 / 20 / 60 days | -0.23% · +0.23% · -1.25% · +10.02% |
| Distance from SMA20 / 50 / 200 | -0.07% · +3.60% · +8.70% |
| Distance from 52w high / low | -8.71% · +23.76% |
| ATR14 · volume vs 20-avg | 0.71 · 0.04x |
Relative strength
| vs QQQ (20d) | +5.25% |
|---|
| vs SPY (20d) | -1.32% |
|---|
| vs SMH (20d) | +14.70% |
|---|
Moving averages
| SMA20 / 50 / 200 | 34.82 · 33.59 · 32.01 |
| 52w high / low | 38.12 · 28.12 |