OPEN-SOURCE SCRIPT
VIGAX/VVIAX 10Y & 15Y Detrended Z-Scores

This indicator measures how stretched U.S. large-cap growth is versus U.S. large-cap value by analyzing the VIGAX/VVIAX ratio. Because VIGAX represents large-cap growth and VVIAX represents large-cap value, a rising ratio means growth is outperforming value, while a falling ratio means value is outperforming growth.
The script calculates the ratio, converts it to log scale, and then fits rolling 10-year and 15-year regression trends. It plots the residual z-score of the ratio relative to those trends. In plain terms, the indicator shows whether growth is unusually strong or weak versus value after accounting for the long-term upward trend in growth/value leadership.
A z-score near 0 means the ratio is near trend. A positive z-score means growth is above trend versus value. A negative z-score means growth is below trend versus value. The script plots reference bands at ±1.5, ±2.0, and ±2.5 standard deviations.
The signal logic is contrarian and re-entry based. A VALUE signal occurs when the selected z-score has moved above the chosen positive threshold and then crosses back below it. This means growth became statistically stretched and then started to fail. A GROWTH signal occurs when the selected z-score has moved below the chosen negative threshold and then crosses back above it. This means growth became statistically washed out and then started to recover.
Suggested use:
Use the 15-year z-score for the cleaner, long-cycle signal. Use the 10-year z-score for a more responsive, current-regime read. The ±2.5 threshold is the highest-conviction signal and will fire rarely. The ±2.0 and ±1.5 levels are better treated as early-warning zones rather than automatic trade signals.
The indicator does not read manual TradingView trendlines. It creates its own statistical trend using rolling regression. The strongest setup occurs when the z-score signal aligns with the visual long-term channel on the VIGAX/VVIAX chart.
The indicator is not designed to work with charts other than the VIGAX/VVIAX chart.
Code by ChatGPT 5.5 Thinking
Prompts by Jeremy L. A. Hill Edwards
The script calculates the ratio, converts it to log scale, and then fits rolling 10-year and 15-year regression trends. It plots the residual z-score of the ratio relative to those trends. In plain terms, the indicator shows whether growth is unusually strong or weak versus value after accounting for the long-term upward trend in growth/value leadership.
A z-score near 0 means the ratio is near trend. A positive z-score means growth is above trend versus value. A negative z-score means growth is below trend versus value. The script plots reference bands at ±1.5, ±2.0, and ±2.5 standard deviations.
The signal logic is contrarian and re-entry based. A VALUE signal occurs when the selected z-score has moved above the chosen positive threshold and then crosses back below it. This means growth became statistically stretched and then started to fail. A GROWTH signal occurs when the selected z-score has moved below the chosen negative threshold and then crosses back above it. This means growth became statistically washed out and then started to recover.
Suggested use:
Use the 15-year z-score for the cleaner, long-cycle signal. Use the 10-year z-score for a more responsive, current-regime read. The ±2.5 threshold is the highest-conviction signal and will fire rarely. The ±2.0 and ±1.5 levels are better treated as early-warning zones rather than automatic trade signals.
The indicator does not read manual TradingView trendlines. It creates its own statistical trend using rolling regression. The strongest setup occurs when the z-score signal aligns with the visual long-term channel on the VIGAX/VVIAX chart.
The indicator is not designed to work with charts other than the VIGAX/VVIAX chart.
Code by ChatGPT 5.5 Thinking
Prompts by Jeremy L. A. Hill Edwards
Script de código aberto
Em verdadeiro espírito do TradingView, o criador deste script o tornou de código aberto, para que os traders possam revisar e verificar sua funcionalidade. Parabéns ao autor! Embora você possa usá-lo gratuitamente, lembre-se de que a republicação do código está sujeita às nossas Regras da Casa.
Aviso legal
As informações e publicações não se destinam a ser, e não constituem, conselhos ou recomendações financeiras, de investimento, comerciais ou de outro tipo fornecidos ou endossados pela TradingView. Leia mais nos Termos de Uso.
Script de código aberto
Em verdadeiro espírito do TradingView, o criador deste script o tornou de código aberto, para que os traders possam revisar e verificar sua funcionalidade. Parabéns ao autor! Embora você possa usá-lo gratuitamente, lembre-se de que a republicação do código está sujeita às nossas Regras da Casa.
Aviso legal
As informações e publicações não se destinam a ser, e não constituem, conselhos ou recomendações financeiras, de investimento, comerciais ou de outro tipo fornecidos ou endossados pela TradingView. Leia mais nos Termos de Uso.