Exponentials, Logarithms and Compounding
One growth factor, many quotes: how returns compound, convert and add up.
| Mastery | After this module you should be able to: |
|---|---|
| 1apply the laws of exponents and logarithms, including the change-of-base rule, to growth problems, and interpret a logarithmic chart axis | |
| 2calculate effective annual rates from stated rates at any compounding frequency, and derive the continuous-compounding limit and the number | |
| 3calculate and interpret holding-period, annualized and continuously compounded returns, and convert each into the others | |
| 4calculate annualized returns from returns measured over days, weeks or months, and explain how calendar-day and trading-day conventions change the result | |
| 5explain why log returns add across time while simple returns add across assets, and aggregate returns correctly in each direction | |
| 6determine the time needed to reach a goal, the return required to reach it, and the gain and time needed to recover from a drawdown | |
| 7implement a total-return pipeline in Python that computes and converts these measures from prices and dividends |
1Introduction
Every return in finance, from a deposit rate to a fund's lifetime performance, describes one quantity: the growth factor, ending value divided by starting value. Growth compounds, so it multiplies, and the mathematics of repeated multiplication is the exponential function and its inverse, the logarithm. This module builds both from first principles, derives the number from compound interest, and turns them into conversions that practitioners perform every day. The same tools recur in every later module, from the Taylor approximations of LM3 to the lognormal prices of LM29.
Suppose you bought Yuanta Taiwan 50 (0050) at the close of 31 October 2014 and reinvested every cash dividend until 8 October 2026. NT$100,000 became NT$1,002,247.
Three reports describe the holding. A fact sheet says the fund returned +902%. A performance review says it earned 21.3% a year. A backtest log says it grew at 19.3% a year.
All three are correct, and they describe the same money. Yet 21.3% and 19.3% cannot both be "the" annual return, and neither equals 902% divided by twelve years. Which number belongs in a client report, which belongs in a model, and how does each convert into the others? Section 4 resolves the case; Sections 2 and 3 build the tools.
| Quantity | Value | Question it answers |
|---|---|---|
| Growth factor (NT$100,000 → NT$1,002,247) | 10.0225 | By what factor did the money grow? |
| Holding-period (total) return | +902.25% | How much was gained over the whole holding? |
| Annualized return, per year | 21.30% | Which constant return, compounded once a year, gives the same end value? |
| Continuously compounded return, per year | 19.31% | Which constant rate, compounded continuously, gives the same end value? |
| Log growth over the period | 2.3048 | How large was the growth on a scale where periods add? |
TaiwanStockPrice and TaiwanStockDividendResult, retrieved 10 October 2026; computations in data/lm01_numbers.py and the companion notebook LM01_lab.ipynb. Total return with cash dividends reinvested on ex-dates and the 4-for-1 split of 18 June 2025 applied; horizon years. In this module the span between two dated closes is calendar days ÷ 365.25. In the deposit and card examples of Section 3, interest accrues on actual/365, and Section 4 also annualizes by sessions, .Section 2 develops exponents, logarithms and log-scale charts. Section 3 turns periodic interest into effective annual rates, takes the limit of continuous compounding and arrives at . Section 4 defines the three return measures, converts among them and resolves the case.
Section 5 shows how returns add across time and across positions. Section 6 solves growth equations for time, required return and drawdown recovery, using 0050's drawdowns of 2024 and 2025. Section 7 assembles the calculations in Python.
Book-wide symbols keep their meaning in every module. is a simple return and a log return, also written for any continuously compounded rate. is a growth factor and a log growth rate per year. , , and are wealth, price, cash dividend and drawdown at time .
counts returns or periods, is a span in years and is the number of compounding periods per year. is a periodic interest rate and the number of periods per year used to annualize. Portfolio weights sum to 1.
Local symbols: is a stated annual rate credited times a year; the superscript labels the frequency and is not a power. is the annualized return, a price-only growth factor with log growth rate , and the previous close restated per current share. is a number of calendar days and an inflation rate. A portfolio has positions with starting values that sum to ; its simple and log returns are and .
In the mathematics, is the base of an exponential or logarithm. , , and are generic real numbers, and , , and are whole-number indices. We write only for exact statements, for approximations whose neglected order is stated, and for definitions.
2Exponents and Logarithms
Growth multiplies
Wealth grows by factors. Returns in the first period and in the second turn into . With the same return in each of periods,
The count sits in the exponent, so wealth is an exponential function of time. Doubling the number of periods squares the growth factor instead of doubling it, which is why long-horizon numbers defy intuition.
Laws of exponents
For a base and real exponents and ,
For whole-number exponents these are counting rules: contains factors of . Defining as the positive -th root, and fractional powers as powers of such roots, extends them to rational exponents. Continuity extends them to all real exponents (stated without proof; see Stewart, Clegg and Watson, and LM2 for continuity). Exhibit 2 gives each law a financial reading.
Logarithms
For a base with and a number , the logarithm is the exponent to which must be raised to give :
Because undoes , every law of exponents becomes a law of logarithms. For , write and . The product law gives , which by the definition means
The same steps give and . From follows the power rule for every real . A logarithm turns multiplication into addition and powers into multiples. That is why log returns add over time (Section 5) and why growth equations are solved with logs (Section 6).
| Rule | Exponent form Logarithm form |
Financial reading |
|---|---|---|
| Product | Growth over consecutive periods multiplies; log growth adds | |
| Quotient | The log return between two dates is a difference of log prices | |
| Power | periods at a constant rate: | |
| Reciprocal | Discounting, ; a loss and the gain that undoes it have opposite logs | |
| Root | De-annualizing: a month | |
| Change of base | Doublings in a growth factor: |
Change of base
Any logarithm is the natural logarithm rescaled. Since , taking natural logs of both sides and applying the power rule gives , so
The base is a unit of measurement, like kilometers and miles. For 0050, . In base 2 that is doublings; in base 10 it is tenfold increases. The fund grew almost exactly tenfold, which is why its log growth is close to .
0050 closed at NT$65.30 on 31 October 2014 and at NT$114.95 on 8 October 2026, after a 4-for-1 split on 18 June 2025. It paid 22 cash dividends in between, and its total-return growth factor was . Split the log growth into a price part and a dividend part, and express each in doublings.
One 2014 share became four 2026 shares, so the price-only growth factor is , a price return of +604.13%.
For each daily return, restate the previous close per current share: on the split day and on every other day. The total return then factors exactly as
The price factors multiply to ; without the restatement they would multiply to . Applying the product rule (1.2) to the product over all days,
In simple returns the decomposition is multiplicative. Reinvested dividends multiplied ending wealth by , a dividend effect of +42.34%. The two factors compound to the total, , or +902.25%. The price return of +604.13% and the dividend effect do not add; logs make the split exact and additive.
Take logs of growth factors or prices, never of returns: exists for every , while fails for every loss. Check the base too: in Excel, LOG(x) is base 10 unless a base is given and LN(x) is natural. In Python, math.log and np.log are natural and np.log10 is base 10. Mixing them scales every result by , an error that changes no signs and is easy to miss.
Log-scale charts
A logarithmic axis places each value at a height that rises in step with . Equal changes in are equal distances on the page, with two consequences.
By the quotient rule, , so equal vertical distances are equal ratios. The step from 1 to 2 is as tall as the step from 4 to 8. Constant growth , with in years, plots as the straight line , by the product rule and . Its slope is the log growth rate .
Exhibit 3 plots 0050's total-return index on both axes, with gridlines at successive doublings and the constant-rate path that ends at the same value.
data/lm01_charts.py.On the linear axis the first six years look flat and the end looks explosive. Even the constant-rate path, which by construction grows at the same rate every year, appears to accelerate. On the log axis that path is a straight line, so only genuine changes in the growth rate bend the index away from it.
The doublings put numbers on the picture. The index first closed above 2 on 11 November 2020, above 4 on 4 July 2024 and above 8 on 27 April 2026. The three doublings took 6.0, 3.6 and 1.8 years.
Declines are distorted as well. The January–April 2025 decline cost 1.18 units of the index and the April–August 2015 decline 0.23 units, a ratio of five. In percentage terms they were −27.5% and −21.0%, or 0.32 and 0.24 log points.
對數把乘法變成加法,把「倍數」變成「距離」。在對數座標上,從 1 漲到 2 和從 4 漲到 8 的高度一樣,因為都是翻一倍;固定成長率的路徑是一條直線,斜率就是對數成長率 。底數只是單位: 是自然單位, 數「翻了幾番」(翻倍幾次), 數「成長了幾個十倍」,彼此只差一個常數倍。0050 在 2025 年 1 至 4 月的回撤,在線性圖上看起來是 2015 年 4 至 8 月那次的五倍,換成對數其實只是 0.32 對 0.24。看長期走勢、比較不同年代的漲跌,請用對數座標。
(a) On a log-scale chart an index rises from 50 to 75 between two dates. Later it climbs the same vertical distance starting from 120. Where does it end, and what are the two returns? (b) How many doublings is a 1,000-fold increase?
Answer
(a) Equal distances are equal ratios, so it ends at ; both moves are +50%. (b) doublings, just under ten because .
3Compounding Frequency and the Number e
Simple and compound interest
Under simple interest, interest accrues on the principal only, so wealth grows linearly: after years at an interest rate per year. Under compound interest credited yearly, interest joins the balance and earns interest itself, which gives the exponential growth of (1.1): . For a positive rate the two agree at and ; simple interest is higher within the first year, compound interest after it. Both appear in Taiwan retail finance, as the examples below show.
Periodic, stated and effective rates
Banks quote rates per year but credit interest more often. A stated annual rate (名目年利率) credited times a year pays the periodic rate each period; yearly crediting, , gives the annual rate above. After one year a unit has grown to .
The effective annual rate (EAR, 有效年利率) of a stated rate compounded times a year is the annual simple return it delivers:
The EAR is the common currency for comparing quotes: two rates are equivalent when their EARs match. Exhibit 4 applies (1.4) to two Taiwan benchmarks: Bank of Taiwan's rate for one-year time savings deposits (定期儲蓄存款) and the legal cap on credit-card revolving interest.
| Compounding | Periodic rate at 15% | EAR at 1.725% | EAR at 15% | |
|---|---|---|---|---|
| Annual | 1 | 15.0000% | 1.7250% | 15.000% |
| Semiannual | 2 | 7.5000% | 1.7324% | 15.563% |
| Quarterly | 4 | 3.7500% | 1.7362% | 15.865% |
| Monthly | 12 | 1.2500% | 1.7387% | 16.075% |
| Weekly | 52 | 0.2885% | 1.7397% | 16.158% |
| Daily | 365 | 0.0411% | 1.7399% | 16.180% |
| Continuous | — | 1.7400% | 16.183% |
Two features stand out. The EAR rises with but by ever smaller steps, and it levels off at a finite limit. And frequency matters far more at high rates: moving from annual to continuous compounding adds 1.5 bp at 1.725% but 118 bp at 15%. The gap grows roughly with the square of the rate, a second-order effect that LM3 quantifies.
Bank of Taiwan posts a fixed rate of 1.725% a year for one-year time savings deposits (定期儲蓄存款). DBS Bank Taiwan, for example, offers them as 整存整付, with interest compounded monthly and paid at maturity, or as 存本取息, with interest paid monthly. On its terms 存本取息 interest accrues daily, on actual days over a 365-day year. Compare the interest on NT$1,000,000 over one year (365 days).
整存整付 compounds the periodic rate twelve times: , or NT$17,387 of interest at maturity.
存本取息 pays for a month of days: NT$1,465.07 for 31 days, NT$1,417.81 for 30 days and NT$1,323.29 for 28 days. Over a 365-day year the payments total NT$17,250, an effective 1.7250% unless the saver reinvests each payment.
The same posted rate yields NT$137 more under monthly compounding, 1.37 bp of principal. At deposit rates near 2% the compounding frequency is almost a rounding error. The next example shows where it is not.
Since 1 September 2015, Article 47-1 of Taiwan's Banking Act has capped credit-card revolving interest at 15% a year. Issuers accrue it as balance × rate × days/365, their own day count. Article 48 of the Regulations Governing Institutions Engaging in Credit Card Business forbids compounding it.
Suppose a revolving balance of NT$100,000 runs for a 365-day year at the cap, with no repayments and no new purchases. Compute the interest, and compare it with daily compounding at the same stated rate.
Without compounding, interest accrues on the principal only: , an EAR of exactly 15.000%.
With daily compounding the periodic rate is a day (about 萬分之 4.11), and (1.4) gives , or NT$16,180. Continuous compounding would give .
The no-compounding rule is worth NT$1,180 a year on this balance. It also makes the legal 15% an honest effective rate: a lender allowed to compound daily could quote 13.979% and still collect a 15% EAR.
From discrete to continuous: the number
Push the frequency to its limit. In 1683 Jacob Bernoulli asked what happens to one unit at 100% interest a year when interest is credited ever more often (O'Connor and Robertson). With credits the year-end value is , and Exhibit 5 shows it rising but leveling off.
| Crediting | Distance to | ||
|---|---|---|---|
| Annual | 1 | 2.000000 | 0.718282 |
| Semiannual | 2 | 2.250000 | 0.468282 |
| Quarterly | 4 | 2.441406 | 0.276876 |
| Monthly | 12 | 2.613035 | 0.105247 |
| Weekly | 52 | 2.692597 | 0.025685 |
| Daily | 365 | 2.714567 | 0.003714 |
| Hourly | 8,760 | 2.718127 | 0.000155 |
| Every minute | 525,600 | 2.718279 | 0.000003 |
A limit is the value a sequence approaches, as closely as we like, once is large enough. LM2 makes limits and continuity precise; this section uses them informally.
The general limit follows from (1.5) by a change of variable.
For every real number ,
Proof. For both sides equal 1. For , put , so that and :
For , note that for , so that
Applied to money, (1.6) says that a stated rate compounded continuously turns into
after years, so its effective annual rate, and the inverse conversion, are
The continuously compounded rate equivalent to an EAR is the natural logarithm of one plus the EAR, , not the logarithm of itself. Every stated rate with the same EAR lies between and : falls from toward as grows. More frequent crediting needs a lower quote to deliver the same EAR.
Deep DiveWhy converges, and why optional · click to expand
Increasing. Apply the arithmetic–geometric mean inequality (stated without proof; Section 5 gives its weighted form, which LM14 derives) to the positive numbers . Their arithmetic mean is and their geometric mean is . The numbers are not all equal, so the geometric mean is strictly smaller:
The series. The display also shows . Conversely, fix and keep only the first terms: for , , which tends to as . Hence . Its partial sums 2, 2.5, 2.666667, 2.708333, 2.716667 and 2.718056 converge far faster than Bernoulli's sequence.
Real . For an integer with , , and both bounds tend to as . So (1.5) also holds as through real numbers.
A stated rate means little until its compounding frequency is known. A deposit at 1.74% paid annually beats one at 1.725% compounded monthly, but only by 0.13 bp: 1.7400% against 1.7387%. Convert every quote to an EAR, or to a continuously compounded rate, before comparing. The same holds for any annual figure built from shorter periods, including the return figures of Section 4.
不是憑空出現的常數:本金 1 元、年利率 100%、每年複利無限多次,一年後的本利和就是 。複利次數越多,有效年利率越高,但增加的幅度越來越小,最後收斂到 ;所以「連續複利利率」 和「有效年利率」 只是一組換算:、。利率越高,複利頻率越重要:臺銀一年期定儲 1.725% 按月複利只多 1.4 bp;信用卡循環利率上限 15% 若按日複利,會多出約 118 bp,這正是法規禁止循環利息「利滾利」的意義。
A bank pays 5.85% compounded monthly; a competitor pays 6.00% compounded annually. (a) Which pays the higher EAR? (b) Give each rate's continuously compounded equivalent.
Answer
(a) against : the lower stated rate wins because it compounds monthly. (b) and . The ranking is the same on every consistent scale.
4Holding-Period, Annualized and Continuously Compounded Returns
Holding-period return
The holding-period return (HPR) is the gain per unit invested over a holding period, income included. Over a single period,
The HPR carries no time unit: +902.25% describes twelve years, while +10% might describe a week. A price return omits income; a total return includes it. Fund comparisons should use total returns, because funds differ in how much they distribute.
For 0050 over the case period the price return was +604.13% and the total return +902.25% (Example 1). Taking the dividends in cash instead, NT$42.19 per 2014 share, and holding the cash idle would have returned .
Annualized return
To compare holdings of different lengths, express each as a constant annual rate. Measure the horizon in years as calendar days ÷ 365.25, which averages the leap-year cycle. The annualized return is the return which, compounded once a year for years, produces the same growth factor:
The root law of Exhibit 2 does the work. For the exponent pulls the growth factor toward 1, shrinking gains and losses alike. For it pushes the factor away from 1 and compounds a short-period return forward, which is extrapolation rather than measurement. LM3 calls the geometric mean return and compares it with the arithmetic mean.
Continuously compounded return
The log return over the holding period is . Divided by the horizon, it gives the continuously compounded return per year, also called the log growth rate:
The second equality is the power rule, . Comparing (1.10) with (1.8) shows what is: the continuously compounded rate equivalent to the effective annual rate . The annualized return and the continuously compounded return are one growth rate quoted under two compounding conventions. Exhibit 6 collects the four expressions of a growth factor with their values for 0050.
| Quantity | Definition | Back to | 0050, 2014–2026 |
|---|---|---|---|
| Holding-period return | +902.25% | ||
| Annualized return | 21.30% | ||
| Log return over the period | 2.3048 | ||
| Continuously compounded return per year | 19.31% |
Use Exhibit 1 to verify that +902.25%, 21.30% a year and 19.31% a year describe the same holding. Then decide which figure to quote to a client and which to use in a model.
All three come from and years. By (1.9), . By (1.10), . They are linked by (1.8): and .
With the inverse of (1.4), the same growth can be quoted at any frequency: 20.27% compounded semiannually, 19.46% compounded monthly, 19.31% compounded daily or continuously. The gap between 21.30% and 19.31% is a quoting convention, not a disagreement about performance.
For a client, quote the annualized return. Like a deposit's EAR it compounds once a year, so it compares directly with deposit rates and with other funds' annualized figures.
For modeling, use . It adds over time (Section 5) and scales linearly with the horizon, . It is the growth rate of log wealth: under geometric Brownian motion (LM29), and the quantity Kelly betting maximizes (LM42). Quote the cumulative +902% only together with its horizon.
"a year" is the simple-interest rate that produces 902.25%: . It ignores compounding and overstates 0050's annualized return by a factor of 3.5. Divide log returns by time, never simple returns.
Annualizing across horizons and day-count conventions
A return over part of a year annualizes the same way; only the measure of changes. Over calendar days, ; over trading sessions, , where is the number of sessions per year. Then
The log version is linear in because logs add over time. Scaling a simple return linearly, , gives a stated rate compounded times a year, not an EAR. Instruments with their own day count keep it, such as the actual/365 deposit terms of Example 2.
Many analysts and software packages set , but Taiwan's market is less busy. Counting the days on which 0050 or 00631L traded, the Taiwan Stock Exchange held between 239 and 247 sessions a year in 2015–2025. The yearly counts were 244, 244, 246, 247, 242, 245, 244, 246, 239, 242 and 243, an average of 243.8. Within one sample, the right is the number of return observations per year in that sample, as Example 6 shows.
Between the closes of 9 July and 7 October 2026, 90 calendar days and 61 sessions apart, 0050's price rose from NT$105.80 to NT$116.05. The fund also paid a NT$0.60 dividend with ex-date 21 July. Its total return was 10.3302%. Annualize it five ways: by calendar days, by trading days with and with , as a continuously compounded rate, and by simple scaling.
Calendar days, with in (1.11): . Trading days with : ; with Taiwan's 2015–2025 average : ; with the window's own : , the calendar figure, since . Continuously compounded: a year. Simple scaling: .
One 90-day return yields "annual" figures from 39.9% to 50.1%. Each is a correct conversion under its own convention, and each assumes that the same return recurs every 90 days for a year. Even the length of the year matters: with 365 days instead of 365.25 the calendar figure is 48.99%. Report the 10.33% for the period, and state the convention whenever you annualize.
The case series aligned with 00631L's trading days, as in LM3, has daily returns (0050's own series has 2,906; Section 7). Their mean log return was 0.079422%. Annualize it with and with the sample's own frequency, and compare the results with .
With : . The sample's own annualization factor is returns a year, and , which is exactly . The reason is (1.10) and Section 5. The mean log return times is the total log growth , and dividing by gives .
The sample's is below the exchange's average of 243.8. Over the same span the exchange held 2,911 sessions, 243.9 a year. 0050 did not trade on five of them, in June 2025. The alignment with 00631L folds four March 2026 sessions, on which 00631L did not trade, into the following return, leaving 2,902.
The 252-day convention overstates the growth rate by 0.7 percentage points a year. As an EAR it gives against the true 21.30%. Nothing about the data changed, only the annualization factor.
Exhibit 7 applies the three measures to trailing windows ending on 8 October 2026, the format of a fund fact sheet.
| Window | From the close of | Holding-period return | Annualized | Continuously compounded |
|---|---|---|---|---|
| 3 months | 2026-07-08 | 9.027% | 40.93% | 34.31% |
| 6 months | 2026-04-08 | 45.99% | 112.80% | 75.52% |
| 1 year | 2025-10-08 | 91.71% | 91.80% | 65.13% |
| 3 years | 2023-10-06 | 296.86% | 58.17% | 45.85% |
| 5 years | 2021-10-08 | 295.05% | 31.63% | 27.48% |
| 10 years | 2016-10-07 | 775.20% | 24.22% | 21.69% |
| Since 31 Oct 2014 | 2014-10-31 | 902.25% | 21.30% | 19.31% |
data/lm01_numbers.py.Two patterns stand out. The continuously compounded figure is always below the annualized one, since whenever (Practice Problem 5). And for windows shorter than a year the exponent exceeds 1, so annualizing magnifies whatever happened in the window: the six-month 45.99% becomes 112.80%.
Annualizing compounds a short-period return as if it recurred all year. 0050's six-month return of 45.99% annualizes to 112.80%, more than twice its best full calendar year in the sample (+48.67% in 2024). The GIPS standards (provision 8.A.4) forbid annualizing returns for periods shorter than one year in performance advertisements. Show short-period returns as they are.
累積報酬 902%、年化報酬 21.3%、連續複利年報酬 19.3%,三者都來自同一個成長倍數 ,並不矛盾。年化報酬是「每年複利一次」的等值利率,連續複利報酬是「連續複利」的等值利率,兩者的關係就是上一節的 。對客戶報告用年化報酬,因為它能直接和存款的有效年利率比較;做研究、建模、跨期加總用連續複利報酬,因為它可以相加,也和期間長度成正比。累積報酬除以年數得到的 75.6% 是單利;把半年 46% 的報酬年化成 113%,只是算術,不是預測。台股 2015–2025 年平均一年約 244 個交易日,本模組樣本的年化因子 ,用 252 天年化日報酬會高估。
A fund returned 18% over 30 months. Compute its annualized return and its continuously compounded return per year. Which is larger, and why must it be?
Answer
With years, and . The annualized return is larger because for every (Practice Problem 5). A rate compounded continuously needs a lower quote to deliver the same growth.
5Adding Returns Across Time and Across Assets
Across time, log returns add
Over consecutive periods growth factors multiply, . The product rule (1.2) turns the product into a sum:
The identity is exact for any path. Simple returns do not add over time, and their sum has no meaning. Exhibit 8 splits 0050's twelve years into six two-year blocks.
| Block (close to close) | Days | Simple return | Log return |
|---|---|---|---|
| 2014-10-31 → 2016-10-31 | 731 | 16.035% | 0.1487 |
| 2016-10-31 → 2018-10-31 | 730 | 14.063% | 0.1316 |
| 2018-10-31 → 2020-10-30 | 730 | 43.561% | 0.3616 |
| 2020-10-30 → 2022-10-31 | 731 | 2.350% | 0.0232 |
| 2022-10-31 → 2024-10-30 | 730 | 106.473% | 0.7250 |
| 2024-10-30 → 2026-10-08 | 708 | 149.606% | 0.9147 |
| Whole period | 4,360 | 902.25% (compounded) | 2.3048 (summed) |
The table also shows how simple returns distort comparisons. The last block's 149.606% looks more than ten times the second block's 14.063%; in log points it is seven times, 0.9147 against 0.1316. The final two blocks supplied 71% of the twelve-year log growth, the steep end of the log chart in Exhibit 3. Averaging the six simple returns would also overstate the typical compound return; LM3 derives that gap, volatility drag, and LM14 its general form, Jensen's inequality.
Across assets, simple returns add
A portfolio is a sum of money, not a product. Let positions start with values , total value and weights , which sum to 1; a short position has and . If position returns over the period, the portfolio ends at , so
exactly, with weights measured at the start of the period, whatever their signs. Log returns do not aggregate this way. The portfolio's log return is .
Consider a long-only portfolio, with every and . For positive , the weighted arithmetic–geometric mean inequality states that , with equality only when all with are equal. It is stated here without proof; LM14 derives it from Jensen's inequality. Applied with and followed by logs, it gives
with equality only when every position with has the same log return. Averaging log returns across a long-only portfolio therefore understates its return, and the error grows with the dispersion of the positions' returns. With short positions the inequality can fail: weights and log returns give , below .
On 31 October 2014 an investor puts half her money in 0050 and half in 00631L, the daily 2× fund on the same index. She holds both until 8 October 2026, a long-only buy-and-hold portfolio. 0050's growth factor was 10.02 and 00631L's 44.54, log growths of 2.3048 and 3.7965. Compute the portfolio's return correctly and by averaging log returns.
By (1.13) the portfolio's growth factor is , a return of +2,628%.
Averaging log returns gives , which implies , or +2,013%. That understates the portfolio by 615 percentage points. The averaged figure is the log of , the geometric mean of the two growth factors, which no buy-and-hold investor earned.
The correct portfolio log return is , larger than the average 3.0507, as (1.14) requires for long-only weights.
Across multiplicative factors: currency and inflation
Some returns combine by multiplication rather than by weighting. A Taiwan investor in a US-dollar asset earns the asset's dollar return and the change in the TWD price of a dollar:
exactly in logs. In simple returns, carries a cross term. Inflation works the same way: a real return satisfies , so exactly. The familiar shortcut drops a second-order term, which LM3 measures.
A US equity fund gains 20% in US dollars over a year in which USD/TWD falls from 32.0 to 29.6 (hypothetical figures). Compute the TWD return exactly, by adding log returns, and by adding simple returns.
The dollar lost against the TWD. Exactly, . In logs, , and .
Adding simple returns gives , which overstates by the cross term . The currency loss applies to the whole dollar value, gains included.
- Across time: log returns add, (1.12); simple returns compound.
- Across positions over one period: simple returns add with start-of-period weights of any sign, (1.13). Log returns do not; for long-only weights their average understates the portfolio, (1.14).
- Across multiplicative factors such as currency and inflation: log returns add exactly, (1.15); simple returns need a cross term.
Index and portfolio returns are weighted averages of simple returns with start-of-period weights. In a long-only sector or factor portfolio, the members' average log return is the log of a weighted geometric mean of their growth factors. By (1.14) it lies below what an investor holding the members earned. Aggregate simple returns across names first; take logs of the portfolio afterwards if a log-return series is needed.
對數報酬「時間可加」:各期的對數報酬加總就是整段期間的對數成長,0050 六個兩年區間的對數報酬相加正好是 2.3048;簡單報酬只能連乘,硬加起來的 332% 沒有意義。投資組合的錢卻是相加的,所以跨資產要用期初權重,對簡單報酬做加權平均。對權重都不為負的多頭組合,把各資產的對數報酬加權平均,等於算成長倍數的加權幾何平均,一定低估組合報酬:0050 與 00631L 各半的組合實際賺了 2,628%,平均對數報酬卻只說 2,013%;組合含放空部位時,這個不等式就不一定成立。匯率、通膨這類「相乘」的因素,用對數報酬可以精確相加,簡單報酬則多出一個交叉項。
Two long positions of equal size have log returns of +0.10 and −0.10 over a month. What is the portfolio's simple return, and what does averaging the two log returns suggest?
Answer
The simple returns are and , so . The average log return is zero, which suggests a flat month. The portfolio gained because the winner's gain in money exceeds the loser's loss.
6Solving Growth Equations with Logarithms
One equation, four unknowns
With an annual rate , equation (1.1) over years reads . It links four quantities, and any three determine the fourth. The ending value needs only multiplication; the starting value, a present value, is the subject of LM6. The other two need logarithms or roots:
The time formula takes logs of both sides and applies the power rule, . In log terms every growth problem is a division: the log growth required, divided by the growth rate available or by the time available.
Doubling time
Setting gives the doubling time . With a continuously compounded rate the formula is exact and simple, . The familiar rule of 72 approximates for annual rates; LM3 derives it from a Taylor expansion and explains why it works best near 8%. Exhibit 9 compares the two for rates that appear in this module.
| Annual rate | Context | Exact , years | Rule of 72, years |
|---|---|---|---|
| 1.725% | Bank of Taiwan one-year time savings deposit (定期儲蓄存款), compounded annually | 40.53 | 41.74 |
| 4.00% | Illustrative long-run assumption | 17.67 | 18.00 |
| 8.00% | Illustrative long-run assumption | 9.01 | 9.00 |
| 15.00% | Credit-card cap, if it were compounded annually | 4.96 | 4.80 |
| 21.30% | 0050, 2014–2026 | 3.59 | 3.38 |
Time to a goal and the required return
An investor aged 35 holds NT$3,000,000 and wants NT$20,000,000 at age 60, with no further contributions. (a) What annualized return is required? (b) If she earns an effective 6% a year (an illustrative assumption), when does she reach the target? (c) If the target is in today's money and inflation runs at an effective 2% a year (also illustrative), what nominal return is required?
(a) By (1.16) with : . In log terms, .
(b) years, at age 67.6. At 60 she would hold .
(c) Real growth and inflation add in logs, by (1.15): , so . Directly, . Two points of inflation raise the required return by more than two points, because inflation compounds too.
Drawdowns and recovery
A drawdown is the percentage decline from the highest value reached so far, ; the running peak includes the starting value . Recovering from a drawdown requires a gain with :
The required gain grows faster than the loss: a 10% drawdown needs +11.1%, a 50% drawdown +100% and a 90% drawdown +900%. In logs the asymmetry disappears. A drawdown is a log return of , and recovery is the same distance back, . At a log growth rate , recovery therefore takes years by (1.16); Exhibit 10 tabulates both views.
| Drawdown | Gain needed | Log distance | Years at 8% a year | Years at 0050's 21.30% |
|---|---|---|---|---|
| 10% | 11.1% | 0.1054 | 1.37 | 0.55 |
| 20% | 25.0% | 0.2231 | 2.90 | 1.16 |
| 25% | 33.3% | 0.2877 | 3.74 | 1.49 |
| 50.0% | 0.4055 | 5.27 | 2.10 | |
| 50% | 100.0% | 0.6931 | 9.01 | 3.59 |
| 75% | 300.0% | 1.3863 | 18.01 | 7.18 |
| 90% | 900.0% | 2.3026 | 29.92 | 11.93 |
Exhibit 11 and Exhibit 12 apply the arithmetic to 0050's own history.
data/lm01_charts.py.| Peak | Trough | at trough | Gain needed | Recovered | Days to recover | At 19.31% a year, days |
|---|---|---|---|---|---|---|
| 2015-04-27 | 2015-08-24 | 20.962% | +26.52% | 2016-08-08 | 350 | 445 |
| 2018-08-30 | 2019-01-04 | 17.533% | +21.26% | 2019-09-16 | 255 | 365 |
| 2020-01-14 | 2020-03-19 | 28.235% | +39.34% | 2020-07-13 | 116 | 628 |
| 2022-01-17 | 2022-10-25 | 33.929% | +51.35% | 2024-02-15 | 478 | 784 |
| 2024-07-11 | 2024-08-05 | 21.304% | +27.07% | 2025-01-06 | 154 | 453 |
| 2025-01-07 | 2025-04-09 | 27.490% | +37.91% | 2025-07-17 | 99 | 608 |
| 2026-06-22 | 2026-07-30 | 15.387% | +18.19% | 2026-09-21 | 53 | 316 |
data/lm01_numbers.py.Every recovery in the sample was faster than steady growth at the long-run rate would imply, because rebounds from troughs were steep. That is a description of 2015–2026, not a law. The 2022 episode also shows the other side: the deepest decline took 281 days to reach its trough and 478 more to recover.
On 5 August 2024, 0050 fell 9.13%, after −5.05% the session before. The session of 7 April 2025 was the first after the Tomb-Sweeping Day holiday and after the United States announced new tariffs on 2 April. 0050 fell 10.00% that day, Taiwan's daily limit, then 3.25% and 4.60% on the next two sessions.
Using Exhibit 12, compute for each drawdown the gain needed and the log distance. Then compare the actual recovery time with the time steady growth at would need.
2024. From the 11 July 2024 peak the index fell to a drawdown of 21.30% by the 5 August close. Recovery required , a log distance of . The index first closed above the old peak on 6 January 2025, 154 calendar days (0.42 years) and 104 trading sessions after the trough. Steady growth at would have needed years, or 453 days.
2025. The next session, 7 January 2025, set a new peak. By 2 April the drawdown was already 12.71%. The three sessions from 7 to 9 April took the index down a further 16.93%, to a drawdown of 27.49%.
Recovery required , a log distance of . On 10 April alone the index rose 9.99%. It regained the peak on 17 July 2025, 99 calendar days and 64 of 0050's sessions after the trough. The exchange held 69, but 0050 did not trade on five of them in June 2025, before its 4-for-1 split took effect.
The log view. The 2025 loss splits additively into log points up to 2 April and in the three crash sessions, in all. In simple returns, −12.71% and −16.93% compound to −27.49%. Recovery retraced exactly 0.3214 log points, a distance that reads as "+37.91%" in percent. At the long-run a year the climb would have taken years; it took 0.27.
A −20% month followed by a +20% month leaves −4%, because . Equal percentage moves in opposite directions always lose money; equal log moves cancel exactly. Translate percentages into log points before judging a recovery, a strategy's worst loss or a "bounce".
回本所需的報酬是 :回撤 10% 要漲 11.1%,回撤 50% 要漲 100%,回撤 90% 要漲 900%,跌得越深,回本越陡。換成對數就對稱了:下跌 個對數點,只要再漲回同樣多的對數點就能回本,所需時間=對數跌幅 ÷ 對數成長率。0050 在 2025 年 1 至 4 月的回撤中,從 1 月 7 日高點到 4 月 9 日低點共跌 27.49%(其中 4 月 7 日起的關稅崩跌三天跌了 16.93%),需要上漲 37.91% 才能回本,實際只用了 99 天(7 月 17 日收復);若以過去每年 19.31% 的連續複利成長率等速計算,需要約 1.66 年。歷史上的反彈速度是紀錄,不是保證。
A strategy suffers a 40% drawdown in a year. What gain recovers the loss, and how many years does recovery take if the strategy then earns an effective 15% a year?
Answer
By (1.17), . By (1.16), years. Earning 15% a year, the strategy needs more than three and a half years to undo one bad year.
7Return Calculations in Python
Three habits keep return code honest. Store prices and cash flows exactly as delivered and apply corporate actions explicitly. Compute log returns with log1p, which stays accurate for tiny returns. Keep every convention, such as the base date, the day count and , in a named variable instead of a hard-coded number.
The first block rebuilds 0050's total-return series and reproduces the case. Run from the repository root, it reads the raw FinMind files that data/fetch_finmind.py downloads into data/raw/ (see the companion lab below).
from datetime import date
import numpy as np
import polars as pl
# 1. FinMind closes (TaiwanStockPrice), dividends (TaiwanStockDividendResult)
px = pl.scan_csv("data/raw/0050__*.csv").select("date", "close").collect()
div = (pl.read_csv("data/raw/0050_dividends.csv")
.select("date", pl.col("cash_dividend").alias("D")))
SPLIT, RATIO = "2025-06-18", 4.0 # 4-for-1, effective date
# 2. R_t = (P_t + D_t) / (P_{t-1} / ratio_t) - 1, close restated per new share
P, D = pl.col("close"), pl.col("D")
ratio = pl.when(pl.col("date") == pl.lit(SPLIT)).then(RATIO).otherwise(1.0)
ret = (px.join(div, on="date", how="left")
.sort("date") # never rely on row order after a join
.with_columns(D.fill_null(0.0), ratio.alias("ratio"))
.with_columns(R=(P + D) / (P.shift(1) / pl.col("ratio")) - 1)
.drop_nulls("R")
.with_columns(pl.col("date").str.to_date(), r=pl.col("R").log1p()))
# 3. growth factor G, annualized R_G and continuous g: (1.9), (1.10), (1.12)
BASE, YEAR = date(2014, 10, 31), 365.25 # base close; days per year
G = float(np.exp(ret["r"].sum()))
tau = (ret["date"][-1] - BASE).days / YEAR
print(f"G = {G:.4f} HPR = {G - 1:.2%} "
f"R_G = {G ** (1 / tau) - 1:.2%} g = {np.log(G) / tau:.2%}")
# G = 10.0225 HPR = 902.25% R_G = 21.30% g = 19.31%
The second block computes drawdowns from the running peak and finds the 2025 recovery date of Example 10.
# 4. drawdown DD_t = 1 - W_t / running peak (incl. W_0 = 1), gain needed (1.17)
W = pl.col("W")
dd = (ret.select("date", W=(1 + pl.col("R")).cum_prod())
.with_columns(DD=1 - W / pl.max_horizontal(W.cum_max(), 1.0)))
in_2025 = pl.col("date").is_between(date(2025, 1, 1), date(2025, 6, 30))
trough = dd.filter(in_2025).sort("DD", descending=True).row(0, named=True)
back = dd.filter(pl.col("date") > trough["date"], pl.col("DD") == 0)["date"][0]
need = trough["DD"] / (1 - trough["DD"])
print(trough["date"], f"DD {trough['DD']:.2%}", f"gain needed {need:.2%}",
"recovered", back, (back - trough["date"]).days, "days")
# 2025-04-09 DD 27.49% gain needed 37.91% recovered 2025-07-17 99 days
The raw-file series counts 0050's own 2,906 sessions, four more than the aligned series of the daily example. It keeps the four March 2026 sessions on which 00631L did not trade. Growth factors, drawdowns and recovery dates are identical in both.
The notebook LM01_lab.ipynb rebuilds every exhibit and computational example of this module from the verified FinMind files. It is Polars-first and also solves the computational practice problems.
The notebook reads FinMind files that you download once with your own token. From the repository root, run uv run python data/fetch_finmind.py, then uv run python data/make_lab_data.py. FinMind's licence does not allow the book to redistribute the data. After that, the notebook runs offline.
In step 2 the code divides the previous close by the split ratio on the split date. Why not simply drop that day?
Answer
On 18 June 2025 one old share became four new ones, so the previous close must be restated per new share, . Without the adjustment the split would register as a fall of about 75%. Dropping the day would lose a real return, from the 10 June close. Every growth factor spanning it would be wrong: would be 9.937 instead of 10.0225.
That return covers six market sessions, because 0050 was suspended from 11 to 17 June. Deleting the row before computing returns is no better. The 19 June close would then be measured against the 10 June close, and the spurious fall would simply move there: .
Summary
- Growth multiplies and logarithms add: the product rule (1.2) turns products into sums and powers into multiples. Any logarithm is the natural log rescaled, ; 0050's log growth of 2.3048 equals 3.325 doublings.
- On a log axis equal distances are equal ratios and constant growth is a straight line. Linear axes make early history look flat and recent moves look extreme.
- A stated rate compounded times a year has an EAR of . For a fixed quote it rises with toward . The number is one unit compounded continuously at 100% for a year.
- Compounding frequency matters little at deposit rates (1.4 bp at 1.725%, monthly) and a great deal at high rates (118 bp at 15%, daily). Taiwan caps card revolving interest at 15% and forbids compounding it.
- The holding-period return, the annualized return and the continuously compounded return express one growth factor three ways. Here is in years, calendar days ÷ 365.25. and are one rate quoted annually and continuously, ; for 0050 they were 21.30% and 19.31%.
- Annualizing short-period returns is extrapolation and depends on conventions: a 90-day return of 10.33% annualizes to anything from 39.9% to 50.1%. Taiwan's market held about 244 sessions a year in 2015–2025, and the case sample has , not 252.
- Log returns add across time and simple returns add across positions. For long-only weights, averaging log returns across positions understates the portfolio; for a 50/50 mix of 0050 and 00631L the error was 615 percentage points.
- Time to goal and required return come from one equation solved with logs. A drawdown needs a gain of but only log points. 0050 regained its January–April 2025 drawdown of 27.49%, which needed +37.91%, in 99 days.
Practice Problems
-
The number of doublings in a 25-fold increase is closest to:
- A.4.64
- B.10.69
- C.12.50
-
The effective annual rate of a 12% stated rate compounded monthly is closest to:
- A.12.00%
- B.12.68%
- C.12.75%
-
A bank quotes 2.4% compounded quarterly. Compute (a) the EAR, (b) the equivalent stated rate with monthly compounding, and (c) the equivalent continuously compounded rate.
-
A continuously compounded rate of 8% corresponds to an effective annual rate closest to:
- A.7.70%
- B.8.00%
- C.8.33%
-
Bernoulli's inequality (stated without proof; it follows by induction on ) says that for every whole number and every . Use it with the limit (1.6) to show that for every real , with equality only at . Deduce that a continuously compounded rate is below the effective rate unless .
-
0050's price-only growth factor over the case period was 7.0413, with years. Compute the price-only annualized return and continuously compounded return. How much of the total continuously compounded return of 19.31% a year did dividends contribute?
-
A strategy earned 6% in four months. Its annualized return is closest to:
- A.19.10%
- B.18.00%
- C.26.25%
-
0050's calendar-year total returns for 2023, 2024 and 2025 were 27.40%, 48.67% and 36.85%. The three years run from the close of 30 December 2022 to that of 31 December 2025. Compute (a) the cumulative return, (b) the annualized return, (c) the sum of the log returns and (d) the continuously compounded return per year. Compare the sum of the three simple returns with (a).
-
Two long positions of equal size have log returns of +30% and −10% over a year. The portfolio's log return is closest to:
- A.10.0%
- B.10.5%
- C.12.0%
-
A Taiwan investor holds a US bond fund that returns 4% in US dollars while USD/TWD rises from 30.0 to 31.5. Compute the TWD return exactly and by adding log returns. What does adding simple returns give?
-
How long does NT$500,000 take to grow to NT$2,000,000 at (a) an effective annual rate of 6%, (b) a continuously compounded rate of 6%?
-
To turn NT$1 million into NT$5 million in 15 years, the required annualized return is closest to:
- A.10.73%
- B.11.33%
- C.26.67%
-
A portfolio's drawdown reaches 35%. (a) What gain restores the peak? (b) How many years does recovery take at an effective 10% a year? (c) If the portfolio then rises 30%, what is its drawdown?
-
0050's 2022 drawdown in Exhibit 12 reached . Verify the gain needed, and compute how long recovery would take at the long-run continuously compounded rate of 19.308% a year. Compare with the actual 478 days.
-
(Python) With the lab data, compute 0050's annualized total return over the ten calendar years 2015–2024 from the growth factor. Then annualize the mean daily log return over the same years, once with and once with the sample's own . Convert both to effective rates and explain the differences.
Solutions
-
A is correct. By (1.3), . B divides by , the mixed-base error of the pitfall in Section 2. C halves 25 instead of taking a logarithm.
-
B is correct. . A ignores compounding. C is the continuous limit , which monthly compounding approaches but does not reach.
-
(a) . (b) . (c) . As the frequency rises, the equivalent stated rate falls: 2.4217% annual, 2.4000% quarterly, 2.3952% monthly and 2.3928% continuous.
-
C is correct. By (1.8), . A applies the conversion in the wrong direction, ; B ignores compounding.
-
Fix . For every , Bernoulli's inequality gives . Letting and using (1.6), , because a limit preserves a weak inequality (stated without proof; see LM2).
Equality holds only at . For , apply the result to and square, since both sides are non-negative: when . For , .
For , put : then , so , with equality only when , that is . A continuously compounded quote is below the effective rate it represents unless both are zero; Section 4 uses this strict form.
-
The price-only annualized return is , and . Dividends contributed a year in log terms, which is the 0.3530 log points of Example 1 spread over the horizon: .
-
A is correct. Four months is a third of a year, so . B scales linearly, : a stated rate compounded three times a year, not an EAR. C mistakes four months for a quarter and compounds four times, .
-
(a) ; (b) the two closes are 1,097 days apart, so and ; (c) , as (1.12) requires; (d) a year. The simple returns sum to 112.92%, far below the cumulative 159.20%, because adding ignores the gains earned on earlier gains.
-
C is correct. The growth factor is , so . A averages the log returns, which (1.14) shows understates for long-only weights. B converts that average into a simple return, , which does not repair the averaging error.
-
Exactly, . In logs, , and . Adding simple returns gives , which misses the cross term : the currency gain also applies to the fund's gain.
-
(a) By (1.16), years. (b) years. Continuous compounding at the same stated rate gets there 0.69 years, about eight months, sooner.
-
B is correct. . A is the continuously compounded rate , the right answer to a different question. C is simple interest, .
-
(a) By (1.17), . (b) years. (c) , so the drawdown is still 15.50%: a 30% gain after a 35% loss leaves a deficit.
-
Gain needed: , as in the exhibit. Log distance: , so steady growth at would take years, or 784 days. The actual recovery took 478 days, about 61% of that.
-
From the close of 31 December 2014 to that of 31 December 2024, years and the growth factor was 4.0030, so and .
The daily log returns in those years have mean 0.056869%, and the sample's own factor is . With the mean annualizes to , or an EAR of . With it gives , exactly , and an EAR of 14.88%.
The 252 convention overstates by 0.46 percentage points in log terms and 0.53 points as an EAR. The growth factor itself needs no annualization factor at all.
Glossary
| Term | 中文 | Meaning |
|---|---|---|
| Growth factor | 成長倍數 | , ending value divided by starting value. |
| Exponential function | 指數函數 | A function with the variable in the exponent; wealth at a constant rate, (1.1). |
| Logarithm | 對數 | , the exponent that turns into . |
| Natural logarithm | 自然對數 | . |
| Change of base | 換底公式 | , (1.3). |
| Logarithmic axis | 對數座標 | Chart axis on which equal distances are equal ratios. |
| Simple interest | 單利 | Interest on principal only, . |
| Compound interest | 複利 | Interest credited to the balance, earning interest itself. |
| Stated annual rate | 名目年利率 | Quoted rate , credited as per period. |
| Periodic rate | 期間利率 | Rate per compounding period, . |
| Effective annual rate (EAR) | 有效年利率 | , (1.4). |
| Continuous compounding | 連續複利 | The limit ; growth , (1.7). |
| The number | 自然常數 | , (1.5). |
| Holding-period return | 持有期間報酬 | Gain per unit invested over the holding period, income included. |
| Total return, price return | 總報酬、價格報酬 | Return with and without reinvested income. |
| Annualized return | 年化報酬 | , (1.9). |
| Continuously compounded return | 連續複利報酬 | , (1.10). |
| Log return | 對數報酬 | ; adds across time, (1.12). |
| Annualization factor | 年化因子 | , periods per year used to annualize; 243.1 returns a year in the case sample. |
| Day-count convention | 計日慣例 | Rule that turns days into years: calendar days ÷ 365.25 between dated closes in this book, actual/365 for the deposit and card interest of Section 3. |
| Drawdown | 回撤 | , the decline from the running peak. |
| Recovery gain | 回本所需報酬 | , (1.17). |
| Doubling time | 翻倍時間 | , exactly for a continuous rate. |
| Revolving credit | 循環信用 | Card balance carried past the due date and charged interest. |
| Lump-sum time deposit | 整存整付 | Time deposit with interest compounded monthly and paid at maturity. |
| Interest-paying time deposit | 存本取息 | Time deposit whose interest is paid out monthly rather than compounded; the principal is repaid at maturity. |
References
- Stewart, J., Clegg, D. K. and Watson, S. (2021) Calculus: Early Transcendentals, 9th ed., Cengage. ISBN 9781337613927; the chapters on exponential and logarithmic functions, on as a limit and on sequences (the monotonic sequence theorem): Cengage, product page.
- O'Connor, J. J., and E. F. Robertson. “The number e.” MacTutor History of Mathematics Archive, University of St Andrews, on Bernoulli's compound-interest problem of 1683: MacTutor, The number e.
- 銀行法第 47 條之 1 第 2 項 (Banking Act, Article 47-1, paragraph 2: revolving-credit rate cap of 15% a year from 1 September 2015): 全國法規資料庫, 銀行法第 47-1 條; see also 理律法律事務所 (Lee and Li), newsletter on the amendment.
- 信用卡業務機構管理辦法第 48 條 (Regulations Governing Institutions Engaging in Credit Card Business, Article 48, item 1: revolving-credit interest may not be compounded): 全國法規資料庫, 信用卡業務機構管理辦法第 48 條; explanation in 法律百科, 信用卡循環利息.
- 三信商業銀行 (COTA Commercial Bank). 信用卡循環信用利率說明 (interest = balance × rate × days/365, capped at 15%): COTA Bank, revolving-credit disclosure (PDF).
- 臺灣銀行 (Bank of Taiwan). 新臺幣存(放)款牌告利率, posted 10 October 2026: Bank of Taiwan, NTD deposit rates.
- 星展銀行(台灣)(DBS Bank Taiwan). 新台幣存款計息方式, updated 10 April 2024 (time savings deposits: 整存整付 compounded monthly and paid at maturity, 存本取息 accrued daily and paid monthly; interest on actual days over a 365-day year, leap years included): DBS Taiwan, NTD deposit interest (PDF).
- Taiwan Stock Exchange. Company history (the daily price limit widened from 7% to 10% on 1 June 2015): TWSE, company history; also 臺灣證券交易所 60 週年特刊, p. 181: TWSE, 升降幅度之演變.
- Taiwan Stock Exchange. Holiday Schedule of 2025 (no trading on 3 April, an adjusted holiday, or on 4 April, Children's Day and Tomb-sweeping Day): TWSE, holiday schedule (choose the year 2025).
- The White House (2 April 2025). Fact sheet declaring a national emergency over trade deficits: a 10% tariff on imports from all countries from 5 April and higher rates for some countries from 9 April: The White House, fact sheet of 2 April 2025.
- Global Investment Performance Standards (GIPS) for Firms (2020), provision 8.A.4, as reproduced in GIPS, Advertising Guidelines comparison for firms (PDF).
- Microsoft. “LOG function” (“If base is omitted, it is assumed to be 10”): Microsoft Support, LOG function.
- FinMind open data:
TaiwanStockPriceandTaiwanStockDividendResult(0050, 00631L), retrieved 10 October 2026.