Astro: Time-Degree Trend Lines [invincible3]Astro-Gann Time-Degree Trend Lines – Invincible3
Astro-Gann Time-Degree Trend Lines is a range-based financial astrology and Gann timing tool designed to project planetary motion into price space.
Instead of plotting ordinary planetary positions, this indicator converts planetary movement into price-degree trend lines using a selected anchor price, anchor time, end time, user-defined planetary starting degrees, a motion harmonic multiplier, and a custom price-per-degree scale.
The concept is based on the Gann principle that time, price, and degrees can be harmonically related. Each planet’s movement over the selected range is converted into price movement, allowing traders to study planetary speed, time cycles, price vibration, and harmonic market geometry directly on the chart.
The indicator also includes a Gann-style aspect table that compares planet-to-planet angular relationships at the end of the selected range using each planet’s manually entered starting degree. This makes the aspect logic more meaningful because planets no longer begin from a common zero point. Each planet can start from its own real zodiac degree, ephemeris-based value, or symbolic Gann degree.
This tool is especially useful for traders who apply W.D. Gann methods, planetary time cycles, price-time squaring, astro-harmonics, Square of 9 logic, 360° degree geometry, and financial astrology to identify possible zones of trend continuation, support, resistance, vibration, or reversal timing.
What This Indicator Does
The indicator starts from a selected anchor price and anchor time.
Each planet also has a user-defined starting degree at the anchor. From that point, the script calculates how many degrees each planet moves during the selected date range, adds that motion to the planet’s starting degree, and then converts the resulting degree value into a projected price level.
The projection model is:
Planetary Motion = Days × Average Daily Motion × Motion Harmonic Multiplier
Line Degree = Starting Degree + Planetary Motion
Projected Price = Anchor Price ± (Line Degree × Points Per Degree)
This means the starting degree directly affects the trend-line position.
For example, if the Sun starts at 4°, moves 30°, and the selected scale is 10 points per degree, then:
Line Degree = 4° + 30° = 34°
Projected Price = Anchor Price ± 340 points
So the line does not only represent planetary movement from zero. It represents the full start-degree-adjusted Gann line degree.
Core Concept
This is not a standard astronomical aspect indicator. It is a Gann-style time-degree projection tool.
The purpose is to study:
How many degrees each planet moves during a selected market range.
How planetary motion can be translated into price.
How each planet’s starting degree changes the projected line position.
Which planets produce stronger or weaker price-time slopes.
Where planetary degree projections align with price structure.
Which planet pairs form Gann/astro harmonic relationships at the end of the range.
This makes the indicator useful for analyzing market vibration, planetary speed relationships, price-time geometry, harmonic projection, and range-based astro-Gann timing.
Key Features
Range-Based Astro-Gann Projection
Select a custom time range using:
Anchor Time
End Time
Anchor Price
The indicator calculates planetary movement across this exact range and projects it onto the price chart.
This allows traders to study planetary motion from an important market event such as:
Major swing high
Major swing low
Breakout point
Crash low
All-time high
Cycle start
First trading date
Gann anniversary date
Important planetary event
Major economic or market cycle date
The selected range becomes the measurement window for planetary movement and Gann degree projection.
User-Defined Starting Degrees
Each planet has a manual starting degree input.
This allows traders to enter the actual zodiac degree or symbolic Gann degree of each planet at the anchor date.
The starting degree affects:
The plotted planetary trend-line position
The projected price level
The end label
The final line degree
The aspect-table end longitude
This correction is important because each planet no longer starts from 0°. Each body can begin from its own real, ephemeris-based, or symbolic starting degree.
For price projection, the indicator uses:
Line Degree = Starting Degree + Planetary Motion
For aspect calculations, the indicator uses:
End Longitude = Starting Degree + Signed Planetary Motion
Planetary Time-Degree Trend Lines
The indicator plots planetary motion lines for:
☉ Sun
☾ Moon
☿ Mercury
♀ Venus
♂ Mars
♃ Jupiter
♄ Saturn
♅ Uranus
♆ Neptune
♇ Pluto
☊ Lunar Node
Each planet has:
Its own average daily motion
Its own starting degree
Its own projected line degree
Its own color setting
Its own visibility toggle
The final trend-line position is based on the planet’s starting degree plus its movement over the selected range.
Uptrend and Downtrend Projection
The indicator can plot:
Upward planetary projection lines
Downward planetary projection lines
Upward lines project planetary degree movement above the anchor price.
Downward lines project planetary degree movement below the anchor price.
This allows traders to study both bullish and bearish price-time pathways from the same anchor.
For example:
Up projection = Anchor Price + Line Degree × Points Per Degree
Down projection = Anchor Price - Line Degree × Points Per Degree
This gives a balanced way to study both expansion and contraction from a selected market point.
Points Per Degree Scaling
The user can define how many price points represent one planetary degree.
Examples:
1 point per degree
10 points per degree
100 points per degree
Custom market-specific scaling
This is useful because every market has a different vibration.
Gold, Bitcoin, forex pairs, stocks, commodities, and indices may require different degree-to-price scaling.
The purpose is to find a scale where planetary degree projections align meaningfully with market structure, swing points, or harmonic price zones.
Motion Harmonic Multiplier
The motion harmonic multiplier can be used to increase or decrease the speed of planetary projection.
Examples:
1x = normal planetary motion
2x = double-speed harmonic
0.5x = half-speed harmonic
This can be useful for traders who study:
Harmonic repetition
Accelerated cycles
Compressed planetary timing
Higher-frequency market vibration
Fractional planetary movement
The motion harmonic multiplier changes the planetary movement component of the line.
It affects the slope and speed of the planetary projection. It should be understood as a speed or cycle multiplier, not as a 360° price octave shift.
Gann Aspect Table
The indicator includes a compact aspect table that compares planet-to-planet angular relationships at the end of the selected range.
The table uses each planet’s starting degree and signed planetary motion:
End Longitude = Starting Degree + Signed Planetary Motion
Then it calculates the angular separation between planet pairs and finds the nearest Gann/astro aspect.
Supported aspect angles include:
0° Conjunction
30° Semi-sextile
45° Semi-square
60° Sextile
72° Quintile
90° Square
120° Trine
135° Sesquiquadrate
144° Biquintile / Gann harmonic
150° Quincunx
180° Opposition
The table displays:
Planet pair
Nearest aspect
Angular delta at range end
Orb from exact aspect
This helps identify which planet pairs are in close harmonic relationship at the end of the selected range.
Aspect Interpretation for Gann Traders
In financial astrology and Gann analysis, aspects are not used only as traditional astrology signals. They are also treated as geometric divisions of the 360° circle.
Important divisions include:
45° and 90° for square pressure and market action
60° and 120° for smoother harmonic flow
72° and 144° for fifth-harmonic and pentagonal geometry
180° for opposition, polarity, and possible culmination
30° and 150° for adjustment zones
When a planet pair forms a tight orb near one of these angles, it may indicate a time window where market rhythm, volatility, or direction can shift.
The table is not meant to be used as a standalone signal. It is designed to provide astro-Gann confluence with price structure, swing points, trendlines, Fibonacci levels, cycle dates, and market context.
How to Use
1. Choose an Important Market Anchor Point
Select a meaningful market point such as:
Major swing high
Major swing low
Breakout level
Crash low
All-time high
All-time low
First trading date
Cycle start
Gann anniversary date
This anchor becomes the origin point for the projection.
2. Set the Anchor Price
Enter the price level from which the planetary degree lines will begin.
This is usually the price of the selected swing high, swing low, breakout, or cycle point.
3. Set the Anchor Time and End Time
Choose the start and end dates of the range.
The indicator calculates planetary movement across this selected time window.
The range defines the time component of the Astro-Gann projection.
4. Enter Starting Degrees for Each Planet
Enter the starting degree for each planet at the anchor date.
These can be:
Actual zodiac degrees from an ephemeris
Geocentric planetary degrees
Heliocentric planetary degrees
Symbolic Gann degrees
Custom cycle degrees chosen by the trader
The starting degree affects both the trend-line position and the aspect-table calculation.
5. Adjust Points Per Degree
Increase or decrease the price-per-degree value until the projected planetary lines match the market’s vibration.
Different markets may require different scales.
For example:
Gold may respond better to one scale.
Bitcoin may require a larger scale.
Forex may require a smaller scale.
Stocks and indices may need symbol-specific calibration.
6. Adjust the Motion Harmonic Multiplier
Use the motion harmonic multiplier to test faster or slower planetary projection rhythms.
For example:
1x = normal planetary speed
2x = double-speed projection
0.5x = half-speed projection
This is useful when studying compressed cycles, expanded cycles, or harmonic repetitions of planetary motion.
7. Enable the Planets You Want to Study
Enable or disable planets depending on your trading timeframe.
General use:
Moon, Mercury, Venus = faster short-term timing
Sun and Mars = intermediate timing
Jupiter and Saturn = larger cycle structure
Uranus, Neptune, Pluto = macro or long-term harmonic background
Node = long-cycle timing reference in financial astrology
8. Use the Aspect Table
Look for tight orbs between planet pairs near important Gann aspects such as:
45°
60°
72°
90°
120°
135°
144°
150°
180°
The tighter the orb, the closer the pair is to an exact harmonic relationship at the end of the selected range.
Use this as timing confluence, not as a mechanical buy/sell signal.
Practical Trading Applications
This indicator can be used to study:
Price-time squaring
Planetary degree projection
Market vibration
Time-cycle completion
Harmonic resistance and support zones
Planetary speed-based trend slopes
Start-degree-adjusted planetary projection
Possible reversal windows
Range-based astro-Gann confluence
Planet-to-planet harmonic relationships
It is best used together with normal market structure tools such as:
Swing highs and lows
Trendlines
Fibonacci levels
Support and resistance
Volume
Momentum indicators
Cycle dates
Seasonality
Volatility zones
The strongest use case is when planetary lines, motion harmonics, aspect-table harmonics, and technical market structure all point to the same zone.
Important Notes
This indicator uses average daily planetary motion, not a full astronomical ephemeris engine.
The starting degrees are entered manually by the user. For more accurate astrology-based analysis, users should obtain planetary degrees from an ephemeris and enter them into the starting degree fields.
The starting degrees affect both:
Visual projection lines
Aspect-table calculations
This makes the tool more consistent with range-based Astro-Gann analysis.
The Lunar Node is commonly treated as retrograde in zodiac motion. For price-line projection, absolute motion may be used for clean visual direction, while aspect logic respects signed motion.
Because this is a Gann-style projection tool, the purpose is not to predict with certainty. The purpose is to map possible price-time harmonics and observe where market structure reacts around those projected levels.
Known Limitations
Planetary positions are based on average motion, not high-precision ephemeris calculations.
Manual starting degrees are required for meaningful projection and aspect-table results.
The indicator does not automatically fetch real-time planetary longitude.
The motion harmonic multiplier changes projection speed, not a 360° price octave.
Results should be treated as analytical confluence, not standalone trade signals.
Best Use Case
This tool is best suited for traders who already use or are studying:
W.D. Gann methods
Financial astrology
Planetary price-time projection
Square of 9 logic
360° degree geometry
Astro-cycle timing
Harmonic market geometry
Planetary speed relationships
Price-time squaring
It is designed for traders who want to visually connect planetary motion, starting degrees, time range, and price movement directly on the chart.
Summary
Astro-Gann Time-Degree Trend Lines – Invincible3 converts planetary motion into price-degree projections using a selected market range.
The corrected logic combines:
Starting Degree
Planetary Motion
Motion Harmonic Multiplier
Price-per-degree scaling
This creates a practical Astro-Gann projection model where each planet has its own degree origin, its own movement, and its own projected price path.
The result is a charting tool for studying planetary price-time geometry, market vibration, harmonic resistance/support, and possible reversal timing.
Disclaimer
This indicator is for educational and analytical purposes only. It does not provide financial advice or guaranteed market predictions. Always combine astro-Gann analysis with risk management, market structure, and independent trading judgment. Indicator

Planetary Fan Array [BlueprintResearch]█ Planetary Fan Array automatically detects ZigZag price pivots and draws Gann-style fan angles whose slope is driven by real-time planetary longitude — not fixed geometric ratios. Each time price reverses direction, the indicator anchors a new set of fan lines at the pivot and traces their path using accumulated planetary motion, creating a dynamic framework where the angles evolve with celestial mechanics.
Designed as the pivot-based companion to Price and Longitude Angles , which draws fan lines from a single user-selected anchor point. Use both together: Price and Longitude Angles for static analysis from a key high or low, and Planetary Fan Array for automatic swing-by-swing tracking as new pivots form.
Powered by the open-source Blueprint Ephemeris library (VSOP87D + ELP2000-82 + Meeus) — all planetary positions computed directly in Pine Script, no external data required. Validated against NASA's DE440 ephemeris: all bodies under 0.1° RMS (Sun 0.004°, planets 0.005°–0.017°, Moon 0.062°, Pluto 0.059°).
█ HOW IT WORKS
The indicator combines two independent systems:
1. Pivot Detection
A ZigZag algorithm (via DevLucem/ZigLib) identifies significant highs and lows on price. The "Pivot Sensitivity" control sets the minimum bars between pivots — higher values produce fewer, more significant swings.
2. Longitude-Driven Fan Angles
At each pivot, the indicator begins accumulating planetary longitude (degrees traveled since the pivot). This accumulation is converted to price movement using a configurable $/° (price per degree) ratio, producing diagonal fan lines whose slope reflects actual planetary speed — including natural curves during retrograde motion.
Three fan lines are drawn per swing:
• 1x1 — 1° of longitude = 1 unit of price (on by default, toggleable)
• Ratio 2 — User-selectable (1x8 through 8x1)
• Ratio 3 — User-selectable (1x8 through 8x1)
Fan direction follows the swing: upward swings project fan lines upward from the pivot low, downward swings project downward from the pivot high. Mirror Mode inverts this for resistance/support analysis.
█ FEATURES
Automatic Swing Detection
• ZigZag-based pivot identification with configurable sensitivity, deviation, and backstep
• New fan angles automatically generated at each confirmed pivot
• Up to 30 historical swings preserved with full polyline rendering (Max History: 5–30, default 15)
Three Calculation Modes
• Single — Track one planet's longitude accumulation
• Average — Midpoint of two planets' accumulated longitude
• Synodic — Angular separation between two planets (synodic cycle phase)
12 Celestial Bodies
• ☉ Sun · ☽ Moon · ☿ Mercury · ♀ Venus · 🜨 Earth · ♂ Mars · ♃ Jupiter · ♄ Saturn · ⛢ Uranus · ♆ Neptune · ♇ Pluto
• 🜨 ERA (Earth Rotation Angle) — sidereal time, requires ≤15-minute timeframe
Swing Extensions
• Extend the last 1–3 completed swings to the current bar so prior angles remain visible when a new pivot forms
• Default extends 1 prior swing — you never lose the trend you were tracking
Future Projections
• Project fan lines up to 250 bars into the future from the current bar
• Projections use bar-index positioning for clean rendering on non-continuous markets (stocks, futures, indexes)
• Projected lines maintain the same color and style as historical lines — no visual break at the transition
Curved Polylines
• Fan lines are rendered as polylines that follow the actual longitude path bar by bar
• Natural curvature during retrograde periods — no straight-line approximation
• Optional smooth curves for non-continuous markets
Visual System
• Planet-specific HSV color palette consistent with Price and Longitude Angles
• Optional color overrides for the 1x1 line and ratio lines independently
• Configurable line width (1–5 pixels) applied to all fan lines
• Per-ratio line styles (Solid, Dotted, Dashed) and transparency controls
• Green ▲ and red ▼ pivot markers at detected lows and highs — these are the swing points the indicator builds its fan angles from
• Optional ZigZag connecting line with configurable width
• Info panel showing $/°, mode, planet, degrees traveled, swing direction, and swing count (X/Y where Y is your Max History setting)
• Warning indicator when both user ratios are set to the same value
Alerts
• 1x1 Cross — fires when price crosses the 1x1 fan line
• Ratio 2 Cross — fires when price crosses the second ratio fan line
• Ratio 3 Cross — fires when price crosses the third ratio fan line
• New Pivot — fires when a new pivot is detected and swing direction changes
█ HOW TO USE
1. Add the indicator to your chart. You'll immediately see green ▲ and red ▼ triangle markers on the chart — these mark every detected swing low and swing high. When prompted, click a significant high or low to set your starting point. Fan angles will only be drawn from that point forward.
2. Select your planet(s) in the Planet Selection group. For single-planet analysis, choose your planet as the Primary. For Average or Synodic modes, select both planets.
3. Choose Geocentric (Earth-centered, standard astrology) or Heliocentric (Sun-centered) in the Planet Selection group. Sun and Moon are always geocentric regardless of this setting.
4. Adjust "Price per 1°" to scale the fan angles to your market. Start with 1.0 and increase or decrease until the 1x1 line aligns with meaningful price action. This is the most important calibration step.
5. Set "Pivot Sensitivity" to control how many swings appear. Higher values (30-50) show only major turns; lower values (10-15) catch smaller moves.
6. Choose your two additional fan ratios. The 1x1 is on by default; Ratio 2 and Ratio 3 let you add steeper or shallower angles (e.g., 2x1 for faster price/degree, 1x2 for slower). All three ratios can be toggled independently.
7. Enable Extend Swings (default: 1) to keep the prior swing's angles visible after a new pivot forms.
8. Use future projections to see where fan lines will extend. On non-continuous markets, projections automatically space correctly across market gaps.
9. Check the info panel in the top-right corner. The "Swings" row shows how many completed swings are being tracked out of your Max History limit (e.g., "12/15"). Increase Max History (up to 30) in the Appearance group to keep more swings on screen, or decrease it to reduce visual clutter.
█ WHAT MAKES THIS ORIGINAL
Most planetary angle indicators on TradingView use a single fixed anchor point chosen by the user. This indicator takes a fundamentally different approach: it automatically detects price pivots and generates a new set of longitude-driven fan angles at every swing reversal. The result is a living framework that adapts as the market develops new structure.
Key technical contributions:
• Automatic pivot-to-pivot longitude accumulation — fan angles are driven by actual planetary motion between detected swings, not static geometric construction
• Net displacement through retrograde — longitude accumulates through retrograde motion (allowing negative deltas) rather than clipping to zero, producing smooth fan lines without plateaus
• Polyline-based curved fan rendering — each fan line is a bar-by-bar polyline following the planet's actual path, not a straight line between endpoints
• Global longitude history arrays — planetary positions are stored every bar and reused for extensions, eliminating recalculation discontinuities on non-continuous markets
• Bar-index projection positioning — future projections use bar_index instead of bar_time, preventing vertical line artifacts on non-continuous markets (stocks, futures, indexes during market close)
• Swing extension system — completed swings can be extended to the current bar, preserving visual continuity when new pivots form
• Full VSOP87D + ELP2000-82 + Meeus ephemeris computed in real time — 511 terms (1.6% of full theory) delivering sub-0.1° accuracy against JPL DE440
█ LIMITATIONS & TIPS
• TradingView limits polylines to 100. Each swing uses 3 polylines (one per ratio). With Extend Swings active, keep Max History ≤ 20 to avoid hitting the cap.
• The $/° ratio is market-specific. What works for Bitcoin ($50/°) won't work for ES ($0.50/°). Experiment with the scale to find meaningful alignment.
• ERA (Earth Rotation Angle) rotates ~360°/day — only useful on intraday timeframes ≤15 minutes. A runtime error appears if you select ERA on higher timeframes.
• On non-continuous markets (stocks, futures), the fan line may show a slightly steeper segment across weekend/holiday gaps because the planet moved during market close. This is astronomically accurate — the visual compression is inherent to how non-continuous charts display time.
• For mission-critical timing, always cross-reference with professional tools such as JPL Horizons , Swiss Ephemeris, or Astro.com.
█ COMPANION INDICATOR
• Price and Longitude Angles — The static anchor version. Draw fan lines from any user-selected high or low with 9 Gann ratios (1x8 through 8x1), zodiac bar coloring, aspect table, and cycle counter. Use it for focused analysis of a single key level; use Planetary Fan Array for automatic swing-by-swing coverage.
█ OPEN SOURCE
This indicator is part of the fully open-source Planetary Ephemeris project. The core ephemeris library is publicly available for study, modification, and reuse:
• BlueprintResearch/blueprint_ephemeris_lib — Planetary calculation engine (VSOP87D, ELP2000-82, Meeus)
█ CREDITS & DEPENDENCIES
This indicator is built on top of three exceptional open-source libraries. Without the work of these authors, Planetary Fan Array would not exist.
• Blueprint Ephemeris by @BlueprintResearch — The astronomical engine powering every planetary calculation in this indicator. Computes real-time ecliptic longitude, declination, and speed for all 11 celestial bodies using VSOP87D (planets), ELP2000-82 (Moon), and Meeus algorithms (Pluto) — entirely within Pine Script. Open source (CC BY-SA 4.0).
• ZigLib by @DevLucem — The backbone of all pivot detection in this indicator. Provides the ZigZag algorithm that identifies swing highs and lows, returning precise pivot times and prices that anchor every fan angle. Without ZigLib, there are no swings.
• hsvColor by @kaigouthro — The color system behind the planet-specific HSV palette. Provides HSV color construction and gradient interpolation that gives each celestial body its distinct visual identity. Open source (MPL-2.0).
• Theoretical framework inspired by W.D. Gann's price-time geometry and Patrick Mikula's Gann's Scientific Methods Unveiled , Volume 2, which details the relationship between planetary longitude and price movement.
Indicator

Planetary Ingress Dashboard [BlueprintResearch]Visualizes when planetary ingresses, the moments when celestial bodies cross from one zodiac sign into the next, clustering them together in time. A centered rolling window counts how many bodies have recently changed or will soon change signs, revealing periods of concentrated sign-change activity as a color-coded histogram.
Powered by the open-source BlueprintResearch Planetary Ephemeris library — 511 of the 31,577 original VSOP87D terms (just 1.6%) — yet achieving sub-0.1° accuracy against NASA JPL's DE440 reference ephemeris. All celestial longitude calculations (VSOP87D planets, ELP2000-82 Moon, Meeus Pluto) run entirely in Pine Script.
█ CONCEPTS
An ingress occurs when a planet's ecliptic longitude crosses a 30° sign boundary (0° Aries, 0° Taurus, etc.). Individual ingresses are meaningful on their own, but when multiple planets change signs within a narrow time window, that convergence may carry additional significance for cycle-based analysis.
This concept draws on the extensive research of Patrick Mikula, whose published works on W.D. Gann's methods detail how clustered planetary sign changes can serve as a timing framework. The visual design pays homage to the cover art of Gann's Tunnel Thru the Air — the cityscape silhouette along the bottom of the cover inspired the histogram outline, the sand-dune terrain, and the blueprint-blue palette. This indicator provides tools to study and visualize that idea on any instrument and timeframe.
This indicator applies a centered ±N window (configurable in days or bars) around each chart bar. For each enabled body, it checks:
• Whether the body ingressed within the past N units (using a binary-search refinement to pinpoint exact crossing times)
• Whether the body will ingress within the next N units (by evaluating its longitude at a future timestamp)
The sum of these counts determines the histogram's height at each bar. Higher bars indicate more sign changes clustering around that moment in time.
█ FEATURES
Celestial Bodies
• 11 toggleable bodies — Sun, Moon, Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto, and Lunar Nodes
• Each body has a unique color, shown in both histogram labels and future projection markers
• Sun, Moon, and Nodes are always geocentric; planets respect the Geocentric/Heliocentric toggle
Histogram Display
• Fill-based histogram with no drawing-object limits — works across the full chart history
• 5-tier discrete color gradient (1 ingress through 5+) — fully customizable
• Rolling sand-dune ground band with adjustable waviness for visual depth
• Dark blueprint-blue gradient background (toggle on/off, colors customizable)
• Histogram outline for building-silhouette definition
Future Projections
• Scans up to 500 bars ahead for upcoming ingresses
• Per-bar colored boxes indicate projected cluster intensity
• Individual planet symbol labels at each projected ingress, with hover tooltips showing the sign, date, and time
• Timezone selector for future date/time display (10 major zones)
• Sand dune and blueprint background extend seamlessly into the projection area
Performance
• Configurable bar calculation limit (default: 500 bars) for faster loading on instruments with deep history
• Set to 0 for unlimited calculation across all available bars
Ingress Timing
• A 15-iteration binary search between adjacent bars pinpoints the exact ingress moment
• Planet symbols are placed on the bar where the crossing actually occurred, not on the detection bar
█ HOW TO USE
1 — Enable the celestial bodies you want to track in the Celestial Bodies group
2 — Choose Geocentric (traditional, Earth-centered) or uncheck for Heliocentric (Sun-centered)
3 — Adjust the Rolling Window (±) to control cluster sensitivity — smaller values (1–2) highlight tight clusters, while larger values (5–10) reveal broader convergence zones
4 — Select Days or Bars for the window unit — Days uses calendar days (consistent across timeframes), while Bars uses chart bar duration (scales with your timeframe)
5 — Histogram bars appear in the lower pane — taller bars with warmer colors indicate more sign changes clustering near that date
6 — Planet symbols above histogram bars identify which bodies ingressed
7 — The future projection extends to the right of the current bar, showing where upcoming clusters are forming
8 — Hover over any future label to see the projected sign entry and date/time in your selected timezone
9 — If performance is slow on long-history instruments, reduce Limit Calculation (Bars) or keep the default of 500
█ LIMITATIONS & ACCURACY
The underlying ephemeris uses only 511 of the 31,577 original VSOP87D terms — just 1.6% — yet achieves sub-0.1° accuracy for every planet. It has been cross-validated against NASA JPL's DE440 reference ephemeris (via Skyfield).
Positional Accuracy (RMS vs JPL DE440):
• Sun: 0.004°
• Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune: 0.005°–0.017°
• Moon: 0.062°
• Pluto: 0.059° (Meeus method, valid 1900–2100)
All planets achieve sub-0.1° RMS accuracy. In practice, ingress timing has been manually verified against professional ephemerides:
• Sun, Moon, Mercury, Venus, Mars: Within minutes to ~1 hour
• Jupiter, Saturn: Within a few hours
• Uranus, Neptune, Pluto: Same-day accuracy — typically within ~18 hours, even for the slowest-moving bodies
Accuracy validation plots (Pine Script vs JPL DE440) are available in the library release notes .
Moon on Daily+ Charts:
The Moon changes signs approximately every 2.5 days. On daily or higher timeframes, some Moon ingresses may fall between bars and be missed. For best Moon coverage, use a 12-hour or lower timeframe. A warning label appears when the Moon is enabled on daily or higher timeframes.
Recommendation: For mission-critical timing, always cross-reference with professional tools such as JPL Horizons , Swiss Ephemeris, or Astro.com.
█ WHAT MAKES THIS ORIGINAL
Most planetary indicators on TradingView show individual planet positions or single-planet events. This dashboard takes a fundamentally different approach: it aggregates sign-change events across all enabled bodies into a unified time-density visualization, answering the question "When are multiple planets changing signs at the same time?"
Key technical contributions:
• Multi-body ingress clustering algorithm with a centered rolling window
• Binary-search ingress refinement (15 iterations) for sub-bar timing precision
• Fill-based historical histogram (unlimited data) combined with polyline/box-based future projection
• Full VSOP87D + ELP2000-82 + Meeus ephemeris computed in real time within Pine Script — 511 terms (1.6% of the full theory) delivering sub-0.1° accuracy against JPL DE440
█ COMPANION INDICATOR
• Planetary Ingress — A single-planet ingress indicator with on-chart labels, retrograde markers, and per-sign alerts. Use it with this dashboard to view individual planet details while monitoring cluster activity here.
█ OPEN SOURCE
This indicator is part of the fully open-source Planetary Ephemeris project. The core ephemeris library is publicly available for study, modification, and reuse in your own scripts:
• BlueprintResearch/blueprint_ephemeris_lib — Planetary calculation engine (VSOP87D, ELP2000-82, Meeus)
█ FURTHER READING
For the research on ingress clustering as a timing method, see Patrick Mikula, Gann's Scientific Methods Unveiled , Volume 1, Chapter 7: Planetary Ingress.
Indicator

Planetary Aspects [BlueprintResearch]█ Planetary Aspects is a focused-pair aspect detector for financial astrology. Select any two celestial bodies — planets, luminaries, or lunar nodes — and the indicator identifies every aspect passage directly on your chart, with exact-moment markers, background orb bands, and forward-looking projections.
Designed as the on-chart companion to Natal & Transit Planetary Aspect Table , which displays the full cross-aspect matrix in table form. Use both together for complete aspect coverage: the table for the big picture and this indicator for deep analysis of a single pair.
Supports both geocentric and heliocentric coordinates with high-accuracy ephemeris calculations. Powered by the open-source Blueprint Ephemeris library (VSOP87D + ELP2000-82 + Meeus) — all planetary positions computed directly in Pine Script, no external data required. Validated against NASA's DE440 ephemeris: all bodies under 0.1° RMS (Sun 0.004°, planets 0.005°–0.017°, Moon 0.062°, Pluto 0.059°).
What is an aspect?
An aspect is a specific angular separation between two celestial bodies as viewed from Earth (geocentric) or the Sun (heliocentric). When two planets reach an exact aspect angle — such as 0° (conjunction), 90° (square), or 180° (opposition) — astrologers consider it a moment of significance. Financial astrologers use these geometric alignments as potential timing markers for trend changes, volatility shifts, or turning points in price action.
█ FEATURES
Dual Mode Operation
• Transit Aspects — Compare two currently transiting planets in real time
• Natal Aspects — Compare a transiting planet against a natal (first-trade) position, with 20+ built-in presets for crypto, commodities, currencies, bonds, and indexes
13 Configurable Aspect Types
• Major: ☌ Conjunction · ☍ Opposition · △ Trine · □ Square · ⚹ Sextile
• Minor: ⚺ Semi-Sextile · ⚻ Quincunx · ∠ Semi-Square · ⚼ Sesquiquadrate · Q Quintile · bQ Biquintile · S Septile · N Novile
• Each aspect has its own toggle, orb (1°–15°), and color
12 Celestial Bodies
• ☉ Sun · ☽ Moon · ☿ Mercury · ♀ Venus · ♂ Mars · ♃ Jupiter · ♄ Saturn · ♅ Uranus · ♆ Neptune · ♇ Pluto
• ☊ North Node · ☋ South Node (mean lunar nodes)
Visual System
• Exact-moment markers — Aspect symbol labels placed at the precise bar where the orb begins widening (inflection point), with retrograde ℞ notation
• Background orb bands — Gradient-transparency bgcolor that intensifies as the aspect tightens toward exact
• Future projections — Dashed lines, date labels, and gradient orb boxes extending up to 500 bars into the future
• Zodiac positions — Tooltips show each planet's sign, degree, and arc-minute (e.g., 15°30' ♈)
• Info table — Compact top-right summary showing mode, pair, coordinate system, and active aspects at a glance
Smart Detection
• Exact-moment dedup prevents duplicate labels within the same aspect passage
• Retrograde re-approach detection — if a planet retrogrades back into orb, a new label fires
• Confirmed-bar alerts — alerts only fire on confirmed bars to prevent repainting
• Geocentric/heliocentric toggle with a single checkbox
█ HOW TO USE
1. Choose Transit Aspects or Natal Aspects mode.
2. Select Planet A and Planet B from the dropdowns.
In Natal mode, Planet A is the transiting body and Planet B is the natal position.
3. If using Natal mode, select a preset first-trade date or enter a custom one.
Presets include BTC, ETH, DOGE, NYSE, DJIA, S&P 500, Gold, Crude Oil, Wheat, and more.
4. Enable or disable individual aspects and adjust orbs to your preference.
Aspects (conjunction through sextile) are enabled by default; minor aspects are disabled by default.
5. Optionally enable future projections to view upcoming aspect passages before they occur.
6. Set up alerts via TradingView's alert dialog — the indicator provides a non-repainting "Exact Aspect Detected" condition.
█ NOTES
Geocentric elongation Constraints
In geocentric mode, inferior planets (those orbiting closer to the Sun than Earth) have a maximum angular separation from the Sun:
• ☉ Sun ↔ ☿ Mercury — max ~28° (only conjunction is reliably possible)
• ☉ Sun ↔ ♀ Venus — max ~47° (conjunction through semi-square)
• ☿ Mercury ↔ ♀ Venus — max ~75° (conjunction through quintile)
Aspects beyond these limits (e.g., Sun–Mercury opposition) will never occur. This is an astronomical reality, not a bug. All other planet pairs can form any aspect. In heliocentric mode, these constraints do not apply.
Lunar Nodes
This indicator uses mean lunar nodes. By definition, the North Node (☊) and South Node (☋) are always 180° apart, so the ☊ ↔ ☋ pair is automatically skipped — their opposition is permanent, not a transient event.
Companion Indicator
For a complete cross-aspect matrix of all planets at once, use Natal & Transit Planetary Aspect Table with this indicator. The table shows every active aspect across all planet pairs; this indicator provides detailed on-chart analysis for the specific pair you want to study.
█ KNOWN LIMITATIONS & TIPS
• TradingView limits drawing objects to 500 per category (lines, labels, boxes). On long histories — such as the full DJIA dataset — you may hit this cap. If labels run out, the background color should persist.
• On weekly and monthly timeframes, fast-moving planets (Sun, Mercury, Venus) can pass through an entire orb window within a single bar. Consider widening the orb or dropping to daily for these pairs.
• Future projections are computed on the last bar only and increase processing time at higher look-ahead values.
█ CREDITS
Built on the open-source Blueprint Ephemeris library by BlueprintResearch. Indicator

blueprint_ephemeris_lib🔭 Library blueprint_ephemeris_lib
Consolidated planetary ephemeris library with improved accuracy. Supersedes previous individual planet libraries (lib_vsop_core, lib_vsop_mercury, lib_vsop_venus, etc.). One import gives you geocentric/heliocentric positions for all 10 solar system bodies.
█ ACCURACY — VALIDATED AGAINST JPL DE440
Every planetary body was validated against NASA's DE440 ephemeris (via Skyfield). Using only 1.6% of the full VSOP87D theory (511 of 31,577 terms), this library achieves sub-arcminute accuracy for all planets:
Sun 0.004° (14 arcseconds)
Mercury 0.005° (18")
Venus 0.006° (22")
Mars 0.010° (36")
Jupiter 0.007° (25")
Saturn 0.009° (32")
Uranus 0.013° (47")
Neptune 0.017° (61")
Moon 0.062° (3.7')
Pluto 0.059° (3.5')
All bodies under 0.1° RMS — more than sufficient for aspect calculations, ingress timing, and planetary line work. The Sun is accurate to 14 arcseconds using a truncated series that fits entirely inside Pine Script's token limits.
█ WHAT'S NEW (V2)
The original ephemeris required 11 chained library imports. A full validation audit uncovered critical coefficient errors and motivated this rewrite:
• L1 Precession Fix — All 8 VSOP87 planets had incorrect longitude rate coefficients (VSOP87B values instead of VSOP87D). Each was missing +0.24382 rad/millennium of general precession. This single correction reduced error from ~0.75° to < 0.1° across the board.
• 28% Smaller — 4,300 lines across 11 files → ~3,100 lines in 1 file.
• Single Import — No dependency chain. Faster execution.
• Moon Improvements — Functions accept raw `time` directly. Node functions renamed with explicit north/south designation.
█ THEORIES
VSOP87D (Bretagnon & Francou, 1988) — Mercury through Neptune
511 truncated terms out of 31,577 total (1.6%). Heliocentric spherical
coordinates in the ecliptic of date.
ELP2000-82 (Chapront-Touzé & Chapront, 1983) — Moon
91 terms (48 longitude + 43 latitude) from Meeus Chapter 47.
Meeus Series (Meeus, 1998) — Pluto
Analytical series from "Astronomical Algorithms" Ch. 37.
Valid ±1 century from J2000.
█ HOW TO USE
Import the library:
import BlueprintResearch/blueprint_ephemeris_lib/1 as eph
Basic — plot a planet's geocentric longitude and declination:
float jupiter_lon = eph.get_longitude(eph.Planet.Jupiter, time, true)
float jupiter_decl = eph.get_declination(eph.Planet.Jupiter, time)
plot(jupiter_lon, "Jupiter Geo Lon", color.yellow)
plot(jupiter_decl, "Jupiter Decl", color.red)
Retrograde detection:
bool mercury_retro = eph.is_retrograde(eph.Planet.Mercury, time)
bgcolor(mercury_retro ? color.new(color.red, 90) : na)
Moon nodes and declination:
float north_node = eph.get_mean_north_node_lon(time)
float south_node = eph.get_mean_south_node_lon(time)
float moon_decl = eph.get_declination(time)
plot(north_node, "North Node", color.green)
plot(south_node, "South Node", color.purple)
plot(moon_decl, "Moon Declination", color.orange)
Dynamic planet selection from input:
string planet_str = input.string("Sun", "Planet", options= )
eph.Planet p = eph.string_to_planet(planet_str)
float geo = eph.get_longitude(p, time, true)
float helio = eph.get_longitude(p, time, false)
float speed = eph.get_speed(p, time)
plot(geo, "Geocentric", color.yellow)
plot(helio, "Heliocentric", color.blue)
plot(speed * 100, "Speed x100", color.white)
All functions accept TradingView's `time` variable directly.
█ FUNCTIONS
Unified API (all planets):
`get_longitude(Planet, time, preferGeo)` — geo or heliocentric longitude
`get_declination(Planet, time)` — equatorial declination
`get_speed(Planet, time)` — longitude speed (°/day)
`is_retrograde(Planet, time)` — true when retrograde
`string_to_planet(string)` — name to enum
Averages :
`get_avg6_geo_lon` / `get_avg6_helio_lon` — Mercury–Saturn
`get_avg8_geo_lon` / `get_avg8_helio_lon` — Mercury–Neptune
Moon (direct access):
`get_geo_ecl_lon(time)` · `get_geo_ecl_lat(time)` · `get_declination(time)`
`get_mean_north_node_lon(time)` · `get_mean_south_node_lon(time)`
`get_true_north_node_lon(time)` · `get_true_south_node_lon(time)`
`get_north_node_declination(time)` · `get_south_node_declination(time)`
█ LIMITATIONS
• Truncated series — sub-degree accuracy, not sub-arcsecond. More than sufficient for ingress timing and aspect work.
• Validated against DE440 across 250 years (1850–2100). Over this full span, the worst-case VSOP87 planet (Uranus) is 0.017° RMS / 0.043° max error. Ingress dates manually verified back to the late 1800s with consistent accuracy.
• Pluto uses Meeus series, limited to ±1 century from J2000.
• Moon has no speed function.
█ ACKNOWLEDGMENTS
Coefficient validation was made possible by Greg Miller's VSOP87 multi-language project, which provides the complete VSOP87D coefficient tables in accessible formats. His work converting the original Fortran data files into CSV/JSON for multiple languages was essential for identifying the L1 precession errors in the original libraries. Miller released this work into the public domain.
github.com/gmiller123456/vsop87-multilang
References :
• Meeus, Jean. Astronomical Algorithms (2nd Ed., 1998)
• Bretagnon & Francou. VSOP87 Solutions (Astronomy & Astrophysics, 1988)
• Chapront-Touzé & Chapront. ELP2000-82 (1983)
█ OPEN SOURCE
MIT License — part of the Blueprint Research open-source toolkit.
Source code on GitHub
get_geo_ecl_lon(time_)
Returns geocentric ecliptic longitude of the Moon.
Parameters:
time_ (float)
Returns: (float) Longitude in degrees, range [0, 360).
get_geo_ecl_lat(time_)
Returns geocentric ecliptic latitude of the Moon.
Parameters:
time_ (float)
Returns: (float) Latitude in degrees.
get_obliquity_j(time_)
Returns mean obliquity of the ecliptic.
Parameters:
time_ (float)
Returns: (float) Obliquity in degrees.
get_declination(time_)
Returns geocentric equatorial declination of the Moon.
Parameters:
time_ (float)
Returns: (float) Declination in degrees, range where positive is north.
get_declination(p, t)
Returns planetary geocentric equatorial declination.
Parameters:
p (series Planet) : (Planet) Planet to query.
t (float) : (float) Unix timestamp in milliseconds (use built-in 'time' variable).
Returns: (float) Geocentric declination in degrees, range where positive is north.
@note Declination is always geocentric (no heliocentric equivalent in library).
get_mean_north_node_lon(time_)
Returns mean longitude of the Moon's North Node (ascending node).
Parameters:
time_ (float)
Returns: (float) Longitude in degrees, range [0, 360).
@note Mean node is a simple averaged calculation, reducing computational error. Used for declination calculations.
get_mean_south_node_lon(time_)
Returns mean longitude of the Moon's South Node (descending node).
Parameters:
time_ (float)
Returns: (float) Longitude in degrees, range [0, 360). Equals North Node + 180°.
get_true_north_node_lon(time_)
Returns true longitude of the Moon's North Node with perturbation corrections.
Parameters:
time_ (float)
Returns: (float) Longitude in degrees, range [0, 360).
@note True node includes periodic perturbations but formula is low precision. Consider using mean node for consistency.
get_true_south_node_lon(time_)
Returns true longitude of the Moon's South Node with perturbation corrections.
Parameters:
time_ (float)
Returns: (float) Longitude in degrees, range [0, 360). Equals True North Node + 180°.
get_north_node_declination(time_)
Returns declination of the Moon's North Node.
Parameters:
time_ (float)
Returns: (float) Declination in degrees, range (bounded by obliquity).
@note Uses mean node for calculation (more consistent than true node).
get_south_node_declination(time_)
Returns declination of the Moon's South Node.
Parameters:
time_ (float)
Returns: (float) Declination in degrees. Inverse of North Node declination.
normalizeLongitude(lon)
Normalizes any longitude value to the range [0, 360) degrees.
Parameters:
lon (float) : (float) Longitude in degrees (can be any value, including negative or >360).
Returns: (float) Normalized longitude in range [0, 360).
string_to_planet(planetStr)
Converts a planet string identifier to Planet enum value.
Parameters:
planetStr (string) : (string) Planet name (case-insensitive). Supports formats: "Sun", "☉︎ Sun", "sun", "SUN"
Returns: (Planet) Corresponding Planet enum. Returns Planet.Sun if string not recognized.
@note Supported planet strings: Sun, Moon, Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto
get_longitude(p, t, preferGeo)
Returns planetary longitude with automatic coordinate system selection.
Parameters:
p (series Planet) : (Planet) Planet to query.
t (float) : (float) Unix timestamp in milliseconds (use built-in 'time' variable).
preferGeo (bool) : (bool) If true, return geocentric; if false, return heliocentric.
Returns: (float) Longitude in degrees, normalized to range [0, 360).
@note Sun and Moon always return geocentric regardless of preference (heliocentric not applicable).
get_speed(p, t)
Returns planetary geocentric longitude speed (rate of change).
Parameters:
p (series Planet) : (Planet) Planet to query.
t (float) : (float) Unix timestamp in milliseconds (use built-in 'time' variable).
Returns: (float) Geocentric longitude speed in degrees per day. Negative values indicate retrograde motion. Returns na for Moon.
@note Speed is always geocentric (no heliocentric equivalent in library). Moon speed calculation not implemented.
get_avg6_geo_lon(t)
get_avg6_geo_lon
@description Returns the arithmetic average of the geocentric longitudes for the six outer planets: Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto.
Parameters:
t (float) : (float) Time in Unix timestamp (milliseconds).
Returns: (float) Average geocentric longitude of the six outer planets in degrees, range [0, 360).
get_avg6_helio_lon(t)
get_avg6_helio_lon
@description Returns the arithmetic average of the heliocentric longitudes for the six outer planets: Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto.
Parameters:
t (float) : (float) Time in Unix timestamp (milliseconds).
Returns: (float) Average heliocentric longitude of the six outer planets in degrees, range [0, 360).
get_avg8_geo_lon(t)
get_avg8_geo_lon
@description Returns the arithmetic average of the geocentric longitudes for all eight classical planets: Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto.
Parameters:
t (float) : (float) Time in Unix timestamp (milliseconds).
Returns: (float) Average geocentric longitude of all eight classical planets in degrees, range [0, 360).
get_avg8_helio_lon(t)
get_avg8_helio_lon
@description Returns the arithmetic average of the heliocentric longitudes for all eight classical planets: Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto.
Parameters:
t (float) : (float) Time in Unix timestamp (milliseconds).
Returns: (float) Average heliocentric longitude of all eight classical planets in degrees, range [0, 360).
is_retrograde(p, t)
Returns true if the planet is currently in retrograde motion (geocentric speed < 0) == 0 = stationary.
Parameters:
p (series Planet) : The planet to check.
t (float) : Time in Unix timestamp (milliseconds).
Returns: true if the planet is in retrograde, false otherwise. Library

Planetary IngressDisplays planetary ingresses, the moments when a planet crosses from one zodiac sign into another. This indicator marks historical ingresses directly on your chart and projects upcoming ones with precise date, time, and retrograde status.
Powered by the open-source BlueprintResearch Planetary Ephemeris library , which implements truncated VSOP87 (planets) and ELP2000 (Moon) series for high-accuracy celestial calculations entirely within Pine Script.
█ FEATURES
• All 10 celestial bodies — Sun, Moon, Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto
• Geocentric or Heliocentric views — toggle between Earth-centered (standard astrology) and Sun-centered perspectives
• Retrograde indicator — shows ℞ symbol when a planet is in apparent retrograde motion (geocentric only)
• Future ingress projection — displays the following sign change as a dotted vertical line with customizable date/time and timezone
• Color-coded by zodiac sign — 12 fully customizable colors for each sign
• Per-sign visibility controls — easily show/hide specific signs
• Per-sign alerts — get notified when a planet enters selected signs
• Fully customizable labels — adjust size, colors, transparency, and placement
█ HOW TO USE
1. Select your planet from the dropdown
2. Choose Geocentric (traditional) or Heliocentric view
3. Historical ingresses appear as labels above price bars with a planet symbol and a zodiac sign
4. The next future ingress is shown as a dotted vertical line with projected date/time
5. Hover over labels for exact degree position (e.g., "0°Ari00'")
6. Set up alerts via "Alert on Ingress" settings for specific sign entries
█ LIMITATIONS & ACCURACY
This indicator uses optimized, truncated VSOP87 and ELP2000 series tailored for Pine Script performance. It delivers excellent accuracy for trading and analytical purposes, but is not intended for professional astronomical use.
Expected Ingress Timing Accuracy (Geocentric view):
• Sun, Moon, Mercury, Venus, Mars: Within hours to ±1 day
• Jupiter, Saturn: Within ±1–2 days
• Uranus, Neptune: Within ±3–7 days
• Pluto: Within ±1–2 weeks (simplified Meeus method, valid 1900–2100)
Heliocentric view: Inner and faster-moving planets match geocentric accuracy. Outer planets (especially Uranus/Neptune) may occasionally show larger variances (up to ±1 month in rare cases) due to their extremely slow motion amplifying minor truncation effects in the series.
Why outer planets vary more:
Slower planets take weeks or months to cross a single degree. Even minor positional discrepancies from truncated terms can shift ingress timing by days or weeks—most noticeable with the outermost bodies.
Recommendation: For mission-critical timing, always cross-reference with professional tools such as JPL Horizons , Swiss Ephemeris, or Astro.com.
█ ROADMAP
Accuracy improvements are an ongoing priority. The modular library design allows targeted upgrades to individual planets without breaking existing functionality.
Planned Enhancements:
• Higher-precision outer planet calculations (Uranus, Neptune)
• Improved heliocentric outer planet accuracy
• Enhanced Pluto method
• Additional series terms where beneficial
Updates will be released through the BlueprintResearch/lib_ephemeris library—follow for notifications.
█ OPEN SOURCE
This indicator is part of the fully open-source Planetary Ephemeris project. The core ephemeris library is public for study, modification, and reuse in your own scripts:
• BlueprintResearch/lib_ephemeris — Main planetary calculation engine
Licensed under MPL 2.0 — free to use and modify, with changes to the library shared back to the community. Indicator

Mikula's Master 360° Square of 12Mikula’s Master 360° Square of 12
An educational W. D. Gann study indicator for price and time. Anchor a compact Square of 12 table to a start point you choose. Begin from a bar’s High or Low (or set a manual start price). From that anchor you can progress or regress the table to study how price steps through cycles in either direction.
What you’re looking at :
Zodiac rail (far left): the twelve signs.
Degree rail: 24 rows in 15° steps from 15° up to 360°/0°.
Transit rail and Natal rail: track one planet per rail. Each planet is placed at its current row (℞ shown when retrograde). As longitude advances, the planet climbs bottom → top, then wraps to the bottom at the next sign; during retrograde it steps downward.
Hover a planet’s cell to see a tooltip with its exact longitude and sign (e.g., 152.4° ♌︎). The linked price cell in the grid moves with the planet’s row so you can follow a planet’s path through the zodiac as a path through price.
Price grid (right): the 12×24 Square of 12. Each column is a cycle; cells are stepped price levels from your start price using your increment.
Bottom rail: shows the current square number and labels the twelve columns in that square.
How the square is read
The square always begins at the bottom left. Read each column bottom → top. At the top, return to the bottom of the next column and read up again. One square contains twelve cycles. Because the anchor can be a High or a Low, you can progress the table upward from the anchor or regress it downward while keeping the same bottom-to-top reading order.
Iterate Square (shifting)
Iterate Square shifts the entire 12×24 grid to the next set of twelve cycles.
Square 1 shows cycles 1–12; Square 2 shows 13–24; Square 3 shows 25–36, etc.
Visibility rules
Pivot cells are table-bound. If you shift the square beyond those prices, their highlights won’t appear in the table.
A/B levels and Transit/Natal planetary lines are chart overlays and can remain visible on the table as you shift the square.
Quick use
Choose an anchor (date/time + High/Low) or enable a manual start price .
Set the increment. If you anchored with a Low and want the table to step downward from there, use a negative value.
Optional: pick Transit and Natal planets (one per rail), toggle their plots, and hover their cells for longitude/sign.
Optional: turn on A/B levels to display repeating bands from the start price.
Optional: enable swing pivots to tint matching cells after the anchor.
Use Iterate Square to shift to later squares of twelve cycles.
Examples
These are exploratory examples to spark ideas:
Overview layout (zodiac & degree rails, Transit/Natal rails, price grid)
A-levels plotted, pivots tinted on the table, real-time price highlighted
Drawing angles from the anchor using price & time read from the table
Using a TradingView Gann box along the A-levels to study reactions
Attribution & originality
This script is an original implementation (no external code copied). Conceptual credit to Patrick Mikula, whose discussion of the Master 360° Square of 12 inspired this study’s presentation.
Further reading (neutral pointers)
Patrick Mikula, Gann’s Scientific Methods Unveiled, Vol. 2, “W. D. Gann’s Use of the Circle Chart.”
W. D. Gann’s Original Commodity Course (as provided by WDGAN.com).
No affiliation implied.
License CC BY-NC-SA 4.0 (non-commercial; please attribute @Javonnii and link the original).
Dependency AstroLib by @BarefootJoey
Disclaimer Educational use only; not financial advice. Indicator

Path of the Planets🪐 Path of the Planets
Path of the Planets is an open-source Pine Script™ v6 indicator. It is inspired by W.D. Gann’s Path of Planets chart, specifically the Chart 5-9 artistic replica by Patrick Mikula "shown below". The script visualizes planetary positions so you can explore possible correlations with price. It overlays geocentric and heliocentric longitudes and declinations using the AstroLib library and includes an optional positions table that shows, at a glance, each body’s geocentric longitude, heliocentric longitude, and declination. This is an educational tool only and not trading advice.
Key Features
Start point: Choose a date and time to begin plotting so studies can align with market events.
Adjustments: Mirror longitudes and shift by 360° multiples to re-frame cycles.
Planets: Toggle geocentric and heliocentric longitudes and declinations for Sun, Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune, and Pluto. Moon declination is available.
Positions table: Optional color-coded table (bottom-right) with three columns labeled Geo, Helio, and Dec. Values show degrees with the zodiac sign for the longitudes and degrees for declinations.
Visualization: Solid lines for geocentric longitudes, circles for heliocentric longitudes, and columns for declinations. Includes a zero-declination reference line.
How It Works
Converts bar timestamps to Julian days via AstroLib.
Fetches positions with AstroLib types: geocentric (0), heliocentric (1), and declination (3).
Normalizes longitudes to the −180° to +180° range, applies optional mirroring and 360° shifts, and converts longitudes to zodiac sign labels for the table.
Plots and the table update only on and after the selected start time.
Usage Tips
Apply on daily or higher timeframes when studying broader cycles. For degrees, use the left scale.
Limitations at the moment: default latitude, longitude, and timezone are set to 0; aspects and retrogrades are not included; the focus is on raw paths.
License and Credits
Dependency: @BarefootJoey Astrolib
Contributions and observations are welcome. Indicator

Planetary Retrograde DashboardThe Retrograde Dashboard offers a quick overview of all planets and their historical and current retrograde statuses across various time frames.
How This Indicator Works
Custom Overlay: The indicator displays its own overlay, plotting the periods of planetary retrograde. This enables users to visually track all planetary retrogrades over time, both historically and in real-time.
When a planet is in retrograde, its symbol will show the ℞ retrograde symbol next to it.
When a planet is in direct motion, only the planetary symbol is visible.
The indicator adapts to different timeframes, allowing you to analyze whether a planet was in retrograde at any specific moment.
What is Retrograde Motion?
In astrology and astro-finance, retrograde motion occurs when a planet seems to move backward in the sky from Earth's perspective. Although this is an optical illusion due to differences in orbital speeds, many traders and analysts believe that planetary retrogrades can influence market behavior. Retrogrades are often linked with reassessment, reversals, and shifts in momentum, making them valuable for both historical and predictive market analysis.
Research & Discovery – Compare planetary retrograde cycles with historical market behavior to identify potential correlations.
Created using Astrolib by @BarefootJoey Indicator

Price and Longitude Angles Planetary Price & Longitude Angles Indicator
This indicator plots planetary price and longitude angles starting from a user-selected date and time, offering a distinctive lens to explore the relationship between price and planetary timing. It supports both heliocentric and geocentric, enabling flexible and in-depth planetary analysis. The angles can be plotted across any time frame for maximum versatility.
How to Use
Once the indicator is loaded, you’ll be prompted to select a starting date and time for your analysis. From there, customize it as follows:
Select Planetary Options:
To plot the price and longitude for a single planet, choose the same planet in both dropdown menus.
To plot the average of two planets, select a different planet in each dropdown.
Set the Price Per Degree of Longitude: Adjust this value to define the scaling of the planetary angles relative to price.
Customize Fan Settings:
Toggle the mirroring of the fan on or off based on your needs.
Show or hide specific angle divisions to tailor the display to your preferences.
Display or conceal the information label that indicates the price per longitude and the number of degrees traveled.
This indicator is inspired by the methodologies of W.D. Gann and Patrick Mikula, expanding on concepts from Gann Scientific Method Unveiled, Volume 2. It was built using Astrolib by @BarefootJoey
I crafted this tool through dedication to support my own study of these ideas. I’m sharing it open-source not only to deepen my understanding and honor the work of Gann and Mikula, but also to invite collaboration. There’s always room for improvement—whether in functionality, accuracy, or design—and I hope others will join me in refining it. This is for those like me: eager to explore these concepts but lacking tools to experiment with. Let’s build on it together. Indicator
