Dominant cycle
The most common distance between repeating peaks and troughs in the price series.
What it shows
Cycle analysis tries to find a repeating length in the price series, such as a peak every 40 bars. A common method is to detrend the series and find the length that fits best.
Cycles in prices are weak in most markets and shift over time. We show the best-fitting length and how well it fits.
How we find it
The same code that draws it on your chart follows these steps, with the same result every time.
- Remove the trend with a detrending step.
- Test cycle lengths from 10 to 120 bars.
- Pick the length with the best fit.
- Draw it over the price and show the fit.
Starting values: Lengths 10 to 120 bars. These are proposed and will be tuned on real price data before launch.
How to read it
- Dotted lines mark the cycle's peaks.
- Gaps between them are equal.
- Price follows only roughly.
Status labels you may see
| Label | What it means |
|---|---|
| Good fit | R-squared above 0.4. |
| Weak fit | R-squared 0.15 to 0.4. |
| No cycle | R-squared below 0.15. |
What cancels it
Nothing cancels it.
What traders check next
- Fit quality.
- Whether it persists.
- Window.
Limits
- Cycles are unstable.
- Easy to find cycles in noise.
- Fit is in-sample.
Try it in forecastviz
- Open any ticker and choose Relative strength, cycles and structure → Dominant cycle in the left menu.
- Switch between 1Y, 3Y to see how the picture changes.
- Compare with Detrended price oscillator and Schaff trend cycle on the same chart.
Questions
Are market cycles real?
Some fits appear, but they rarely persist. We make no claim.
What is detrending?
Removing the long-term slope.
Related trends
Further reading
- O'Neil, How to Make Money in Stocks
- Levy, The Relative Strength Concept of Common Stock Forecasting
- Pring, Technical Analysis Explained
- Frost and Prechter, Elliott Wave Principle
- Hank Pruden, The Three Skills of Top Trading
- Hirsch, Stock Trader's Almanac
Educational only. Not financial advice, and not a price forecast. Charts are drawn by code from past price data, which may be delayed.