OPEN-SOURCE SCRIPT
Updated Planetary Ingress

Displays 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.
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.
Release Notes
v2 - Lunar Node Support Added mean North Node (☊) and South Node (☋) ingress tracking with full support for historical markers and future projections.
Release Notes
Bug Fix: Future Projections on Closed Markets Reported by: Hi-Phi (Again, thank you for the feedback!)
Issues Fixed:
1. Future projections not showing on closed markets (DJI, etc.)
- Cause: not barstate.isconfirmed blocked drawing on confirmed bars
2. Removing the above condition caused a bug where labels stacked during replay
- Cause: Single var variables tracked only the last marker; cleanup deleted only one marker per bar
3. Future projection label appeared on the current bar during replay
- Cause: When an ingress was imminent (next bar), ingress_time equaled the current bar time
- Created a trailing label at each replayed position
Solution:
- Replaced single marker variables with arrays to track ALL future ingress markers
- Added comprehensive cleanup at the start of each execution (deletes all markers before redrawing)
- Added ingress_time > time check to only draw markers strictly in the future
Release Notes
Updated to Blueprint Ephemeris Lib v1. Improved accuracy for all planets, now under 0.1° error, validated against NASA DE440 over 250 years.No changes to functionality.
Release Notes
Planetary Ingress — Release NotesASC/MC Angle Ingresses
- Added Ascendant and Midheaven sign-change tracking with configurable observer coordinates (latitude/longitude)
- Tooltips display the full axis (ASC/DSC, MC/IC)
- Optimized for sub-15-minute charts — built-in warnings guide users to the appropriate timeframe and coordinate system
Bisection-Refined Ingress Timing
- Historical and projected ingress times are now resolved via binary search, extracting maximum timing precision from the Blueprint Ephemeris library
- Our VSOP87D implementation uses a truncated term set (~1.6% of the full series) to fit within Pine Script's constraints, achieving an RMS error of less than 0.1° against JPL DE440
- Not JPL-grade, but remarkably close for a charting platform
Timezone Display
- Future projection labels now include abbreviated timezones (e.g., "14:23 ET")
Bug Fixes & Infrastructure
- Resolved stale-state issue causing phantom future labels on chart redraw
- Corrected future label bar alignment on sub-minute timeframes
- Migrated to blueprint_ephemeris_lib/4 — single consolidated import
Release Notes
Planetary Ingress — Bug Fix Fixed: Ingress label not appearing on the current bar when the sign change occurs mid-bar (reported by InThePrice). 🙏
On daily and higher timeframes, if a planet crossed into a new sign during the current bar (e.g., Sun entering Pisces today), no label would appear. The ingress would only show
after dropping to a lower timeframe or waiting for the next bar to close.
Root cause: The historical detection checked the planet's position at bar open (still in the old sign), while the future projection detected the ingress but filtered it out due to
a strict greater-than check that excluded the current bar.
Fix: The future projection now correctly includes the current bar, showing the ingress label with its refined date/time as soon as the sign change falls within the current bar's
time window. When the bar completes, the label seamlessly transitions to a standard historical marker.
No changes to accuracy, calculation logic, or existing historical labels.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
© 2026 Blueprint Research LLC · Hyperfork Matrix™
All indicators · CC BY-NC-SA 4.0 · Inquiries: blueprintresearch9@gmail.com
All indicators · CC BY-NC-SA 4.0 · Inquiries: blueprintresearch9@gmail.com
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.
Open-source script
In true TradingView spirit, the creator of this script has made it open-source, so that traders can review and verify its functionality. Kudos to the author! While you can use it for free, remember that republishing the code is subject to our House Rules.
© 2026 Blueprint Research LLC · Hyperfork Matrix™
All indicators · CC BY-NC-SA 4.0 · Inquiries: blueprintresearch9@gmail.com
All indicators · CC BY-NC-SA 4.0 · Inquiries: blueprintresearch9@gmail.com
Disclaimer
The information and publications are not meant to be, and do not constitute, financial, investment, trading, or other types of advice or recommendations supplied or endorsed by TradingView. Read more in the Terms of Use.