horizons
Answered against 22 years of US equities and 12 years of US options data and published with the query that produced it. This result is stored as of 2026-11-01, from aapl-stock-for-thai-investors.
| horizon | held_from | priced_at | start_close | period_high | price_return_pct | total_return_pct | pct_below_high | max_drawdown_pct |
|---|---|---|---|---|---|---|---|---|
| 1 ปี (52 สัปดาห์) | 03 Nov 2025 | 30 Oct 2026 | 269.05 | 351.73 | 28.1 | 28.5 | 2 | -13.8 |
| 3 ปี | 02 Nov 2023 | 30 Oct 2026 | 177.57 | 351.73 | 94.1 | 95.8 | 2 | -33.4 |
| 5 ปี | 02 Nov 2021 | 30 Oct 2026 | 150.02 | 351.73 | 129.7 | 133 | 2 | -33.4 |
- Rows × columns
- 3 × 9
- Computed
- Completeness
- No missing values
- Source
- US exchange, SIP and OPRA market data
- Licence
- Strasmore terms · free, no signup
What each column holds
| Column | Type | Range | Notes |
|---|---|---|---|
horizon |
text | 3 distinct values (1 ปี (52 สัปดาห์), 3 ปี, 5 ปี) | |
held_from |
text | 3 distinct values (02 Nov 2021, 02 Nov 2023, 03 Nov 2025) | |
priced_at |
text | 1 distinct value (30 Oct 2026) | |
start_close |
number | 150.02 to 269.05 | US dollars |
period_high |
number | every row is 351.73 | US dollars |
price_return_pct |
number | 28.1 to 129.7 | percent |
total_return_pct |
number | 28.5 to 133 | percent |
pct_below_high |
number | every row is 2 | percent |
max_drawdown_pct |
number | -33.4 to -13.8 | percent |
Computed from Strasmore's warehouse of US exchange, SIP and OPRA market data. Equity prices are delayed; options greeks and implied volatility are end-of-day. This result is stored, not recomputed on load — it is exactly the numbers that were returned on , and the query below is what returned them.
Run it yourself
This is the exact query behind the result above. Change a ticker, a date or a column and run it against the warehouse — no account, no key. The no-signup tier is smaller than the one this page was computed on; a query that reaches past it comes back saying which plan runs it.
SELECT
if(p.years = 1, '1 ปี (52 สัปดาห์)', concat(toString(p.years), ' ปี')) AS horizon,
p.held_from AS held_from,
p.priced_at AS priced_at,
round(p.start_close, 2) AS start_close,
round(p.period_high, 2) AS period_high,
round((p.latest_close / p.start_close - 1) * 100, 1) AS price_return_pct,
round((p.latest_close + d.dividends - p.start_close) / p.start_close * 100, 1) AS total_return_pct,
round((1 - p.latest_close / p.period_high) * 100, 1) AS pct_below_high,
round(p.max_drawdown, 1) AS max_drawdown_pct
FROM
(
SELECT
years,
formatDateTime(min(date), '%d %b %Y') AS held_from,
formatDateTime(max(date), '%d %b %Y') AS priced_at,
argMin(close_f, date) AS start_close,
argMax(close_f, date) AS latest_close,
max(high_f) AS period_high,
min((close_f / running_high - 1) * 100) AS max_drawdown
FROM
(
SELECT
years,
date,
toFloat64(close) AS close_f,
toFloat64(high) AS high_f,
max(toFloat64(close)) OVER (PARTITION BY years ORDER BY date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS running_high
FROM global_markets.stocks_daily_aggs
ARRAY JOIN [1, 3, 5] AS years
WHERE ticker = 'AAPL'
AND date > subtractYears(today(), years)
AND date <= today()
)
GROUP BY years
) AS p
LEFT JOIN
(
SELECT
years,
sum(cash_amount) AS dividends
FROM
(
SELECT
ex_dividend_date,
max(toFloat64(cash_amount)) AS cash_amount
FROM global_markets.stocks_dividends
WHERE ticker = 'AAPL'
AND ex_dividend_date > subtractYears(today(), 5)
AND ex_dividend_date <= today()
GROUP BY ex_dividend_date
)
ARRAY JOIN [1, 3, 5] AS years
WHERE ex_dividend_date > subtractYears(today(), years)
GROUP BY years
) AS d ON d.years = p.years
ORDER BY p.years
ใช้ข้อมูลนี้ในผู้ช่วย AI ของคุณ
เปิดพร้อมคิวรีได้ทันที พร้อมข้อมูลของหน้านี้ ฟรี ไม่ต้องมีบัญชี