1982issue C021-6
Building FFT spectra to size cycle filters
A constructed Fourier spectrum turns a finite daily series into measured peak spacing, then into an explicit moving-average length. Editorial reading: treat that construction as three gates, honoring the daily sampling limit, repairing the endpoints, and only then sizing the filter from the built spectrum.
- Fourier analysis writes a finite ordered series as sinusoids that share one fundamental length; spectral analysis plots power against frequency and drops phase.
- For daily samples the usable spectrum stops at the folding frequency and is grouped into three spectral bands before a filter is chosen.
- Construction subtracts a linear trend, applies a bell window, pads zeros, and runs a Fast Fourier Transform; unequal ends, breaks, and heavy noise can still create false oscillations.
- Frequency delta converts a measured peak into a session period, and that period sets a moving-average length checked by comparing the raw and averaged spectra.
Sinusoids, power, and phase
Fourier analysis represents a finite observed series as a sum of sinusoids whose cycle lengths are fractions of one shared fundamental length. A single sinusoid is specified by amplitude, frequency, and phase. Under a 260-session year, a frequency of 10 cycles per year corresponds to a 26-session period.
Spectral analysis is the condensed view of that decomposition. A Fourier spectrum plots power, amplitude squared, against frequency and therefore omits phase. The Fast Fourier Transform is the algorithm that computes the sinusoid decomposition quickly enough for interactive series of moderate length.
Honor the daily sampling limit
For once-daily samples, frequencies above 130 cycles per year cannot be separated from lower aliases, so the usable spectrum runs only from 0 to that folding frequency. The folding frequency is the highest distinguishable frequency in a sampled series. For daily closes it is the two-session cycle.
Daily series can be partitioned into spectral bands used to group long-term, intermediate, and short-session variation before a filter is chosen. Low-frequency content runs from 0 to 4 cycles per year, periods longer than 60 sessions. Intermediate content runs from 4 to 40 cycles per year, periods of 6 to 60 sessions. High-frequency content runs from 40 to 130 cycles per year, periods shorter than 6 sessions.
Repair the endpoints before the transform
A constructed spectrum subtracts a linear trend, multiplies by a bell-shaped window that vanishes at the endpoints, pads extra zeros, applies a Fast Fourier Transform, then forms a normalized power spectrum. Detrending is that subtraction of a fitted line so a level mismatch at the sample ends does not dominate the transform. The bell window is the taper that drives the series to zero at both ends, reducing the false break created by periodic extension and smoothing the spectrum.
Intervals of at least 64 daily points are recommended, and the described transform is intended for series up to 512 points.
Convert peak spacing into a moving-average length
The frequency delta is the spacing between adjacent spectral lines, equal to the assumed sessions-per-year count divided by the extended array length. That spacing equals 260 divided by the extended length N. A peak 16 lines from zero on an N of 256 therefore sits at 16.25 cycles per year, or a 16-session cycle.
An M-session moving average is constructed to reduce sinusoids shorter than M sessions, frequencies above 260 divided by M, while leaving cycles longer than 1.5 times M largely intact. Comparing the raw and averaged spectra checks that suppression. Moving-average length is the integer session count chosen so sinusoids shorter than that count are reduced while longer cycles are retained.
A historical construction check
On a 110-session soybean-oil close series the constructed spectrum showed intermediate peaks near 16 and 32 cycles per year, about 16- and 8-session periods. An 8-session average then left only the first two peaks.
All readings on this track · 16 readings
- 1982Building FFT spectra to size cycle filters
- 1988Fourier cycle models break in major swings
- 1988Constructing moving average filters from price Fast Fourier Transforms
- 1989Staging Fast Fourier construction under memory limits
- 1993Constructing forecast inputs with moving averages, Fourier transforms and intermarket spreads
- 1994Preprocessing prices so Fourier peaks set moving-average lengths
- 1994Constructing a spreadsheet FFT power spectrum from daily prices
- 1994Building dominant-cycle spectra with FFT preprocessing
- 1994Constructing labeled cycle lengths from FFT spectra
- 1999Fast Fourier Transform reconstruction is not a walk-forward decision tool
- 1999Walk-forward endpoint Fourier construction as a same-day mechanical procedure
- 2002From the power spectrum to indicator windows
- 2003Endpoint Fast Fourier Transform evaluation with walk-forward mechanical rules
- 2004Constructing signal and noise from market waveforms
- 2012A two-stage case study in market cycle analysis
- 2015Whitening pink noise to build a near-zero-lag cycle oscillator