James Marsden Hurst 1924—2005

Chapter 12.6

Appendix VI — Trigonometric curve fitting (Hurst)

Objectively measuring frequency, amplitude and phase of the sinusoids in a filter output: generalized least squares, Chebyshev polynomials — and smoothing for free, at no cost in lag.

On this page

Who this entry is for — After the band-pass one question remains: which sinusoids are in the output, exactly? This appendix gives the method for measuring their frequency, amplitude and phase objectively — with a bonus: "high frequency smoothing gained at no cost in additional time lag".

Source: J. M. Hurst, The Profit Magic of Stock Transaction Timing, Prentice-Hall, 1970 — Appendix VI, Trigonometric Curve Fitting (pp. 215 ff.). The family of techniques known as Prony's method.


Prerequisites

The Ormsby filters and — for the simple sibling — Ch. 11's least-squares line.


The idea

A band-pass output contains a reduced number of components: postulate the form S(t) = Σ (Aᵢ·cos ωᵢt + Bᵢ·sin ωᵢt) with m components, and with N > 2m output points write the N equations demanding the form hold at every instant. The least-squares fit comes from the appendix's generalized procedure — valid "for any kind of rational function", not just sinusoids:

  1. Form the matrix of the unknowns' coefficients (the A's and B's) plus the right-hand members.
  2. From it, build a second matrix: multiply each row's elements by that row's first-column element and sum by columns (first new row); then by the second-column element (second row); and so on — the normal equations, 2m equations in 2m unknowns.
  3. Simultaneous solution yields the A's and B's — that is, for each component, composite amplitude √(A²+B²) and phase.

And the frequencies?

When the ωᵢ are not known in advance, the method extracts them by the same logic: the determining equation — of the form 2cos(mω) − 2α₁cos((m−1)ω) − … − αₘ = 0 — is expressed in Chebyshev polynomials (T₀(x) = 1, T₁(x) = x, and the recurrence generating the rest), reducing the problem to solving a polynomial in cos ω. This is the "Prony" heart: frequencies, then amplitudes and phases, all from the data.

Card — What it is for, in practice

  • Objective measurement of frequency/amplitude/phase from a filter's output — no more eyeballing the chart.
  • Smoothing for free: the fit removes the high-frequency residue without adding lag — unlike a further filter.
  • With parabolic interpolation, it closes the pipeline: filter → reconcile spacings → measure the sinusoids.

Summary card

Element Value
Postulated form S(t) = Σ (Aᵢcos ωᵢt + Bᵢsin ωᵢt), N > 2m points
Method Generalized least squares (normal equations via matrix)
Frequencies From a polynomial in cos ω, via Chebyshev polynomials
Output ωᵢ, amplitude √(Aᵢ²+Bᵢ²), phase — objective
Bonus HF smoothing with no additional lag