Feature guide · 7 min read

Sunrise Zones

For each enabled city the engine finds the local civil sunrise every trading day and marks the high/low of the minute it lands in, projected forward with an EQ midpoint line.

Settings toggle
Enable Sunrise Zones
NinjaTrader 8 name
ToredaSunriseZones
Ships enabled
Yes

What it does

For each enabled city, the indicator computes the local civil sunrise time every trading day and marks a sunrise zone: the high and low of the 1-minute bar in which that sunrise occurs, projected forward for the city's Keep Days, with an EQ (midpoint) line and a day-age counter.

Detection runs on its own added 1-minute series, so the zone resolves to the true sunrise minute no matter what period your chart is on. A 15-minute chart gets the same zone a 1-minute chart does.

Sunrise zones · default seven-city roster2275022800228502290022950Tel AvivFrankfurtLondonRioNew YorkChicagoS. FranciscoEQ line (midpoint)Reaction at the zone
The default seven-city roster, each zone with its dashed EQ midline.

Zone anatomy

Every zone is a band, not a line. The EQ line through the middle is the 50% level of that band, and it is where price most often reacts inside the zone.

One zone, close up100102104NYCZone highEQ = 50% midpointZone low
Zone high, EQ midpoint, zone low.

Zone strength

Each zone also records how much was actually traded in its sunrise minute, so you can tell a zone worth watching from one that formed in dead air:

  • Volume — the sunrise bar's volume.
  • RVOL — that volume divided by the average 1-minute volume over the RVOL Lookback bars before it. Dividing through makes cities in very different liquidity comparable to each other.
  • Retests — a live count, incremented each time a chart bar overlaps the zone after the previous bar closed fully outside it.

The optional stats table shows, per enabled city: sunrise time in the session timezone, High, Low, Range, Volume with its RVOL multiple, and Retests — always for that city's newest zone. The volume cell is tinted in the city color once RVOL clears the highlight threshold.

Cities

18 preset cities plus 4 custom lat/lng slots. Each has its own Enabled, Color, Sunrise Offset and Keep Days inputs, grouped into Day Sun Cities and Night Sun Cities sections in the dialog.

The seven cities on by default are the Day Sun beginner preset — the day-flow sequence TLV → FRA → LON → RIO → NYC → CHI → SFO. Custom slots add Name, Latitude and Longitude; their timezone is approximated from longitude at 15° per hour.

CityAbbrevDefaultCityAbbrevDefault
New YorkNYCOnLondonLONOn
FrankfurtFRAOnChicagoCHIOn
S. FranciscoSFOOnRioRIOOn
Tel AvivTLVOnTokyoTYOOff
DubaiDXBOffAucklandAKLOff
MiamiMIAOffReykjavikREKOff
SingaporeSINOffHong KongHKGOff
ShanghaiSHAOffSydneySYDOff
TorontoTOROffDallasDALOff

When each zone forms

Because a sunrise zone is minted at local sunrise, each city drops its zone at a different point in your trading day. These are the two beginner presets in the dialog, with roughly when each one lands in Eastern Time.

These times are a snapshot, not a schedule

The figures below are approximate Eastern Time for 9 September 2026. Sunrise moves every day — typically by about a minute — and DST changes shift it by a full hour, so treat these as a guide to when a city's zone tends to land rather than as fixed times.

🌙 Night Sun cityApprox. sunrise (ET)
Auckland2:31 PM
Tokyo4:19 PM
Hong Kong6:08 PM
Singapore6:58 PM
Dubai10:02 PM
Tel Aviv11:21 PM
☀️ Day Sun cityApprox. sunrise (ET)
Frankfurt12:51 AM
London1:25 AM
Rio de Janeiro4:56 AM
New York6:31 AM
Chicago7:24 AM
San Francisco9:46 AM

The seven cities in bold are the ones enabled out of the box. Read them in order — Tel Aviv, Frankfurt, London, Rio, New York, Chicago, San Francisco — and you have the day-flow sequence: each zone forms a little later than the last, so the chart fills in from overnight through to the US afternoon.

Start simple, add cities as you learn

Seven zones is already a busy chart. The remaining presets are there for when you want coverage of a particular session — turn them on one at a time rather than all at once.

Inputs

InputDefaultMeaning
Zone Opacity86Fill transparency. 0 = solid, 100 = invisible.
Zone BorderOnOutline each zone in its city color.
Show EQ Line / EQ Line StyleOn / DashedMidpoint line through each zone.
Show Day CounterOffAge label (1 = sunrise day) at the right edge of each zone.
Label Offset (minutes)25How far past the last bar the day counter sits.
Session TimezoneAmerica/New_YorkTimezone for the stats-table sunrise times.
Daylight Saving TimeOnSunrise in each city's DST-aware local time. Off uses the standard offset year-round, which shifts DST-observing cities by an hour in summer.
Strength on Day CounterOffAdds a second line to each counter: volume, RVOL and retests.
Show Sunzone LabelsOnLive-edge mode: each zone is cut off just past its counter and ends in a city-name chip. Off gives classic zones spanning the full Keep Days.
Label Buffer (minutes)2Gap between a zone's live-edge end and its name chip.
Auto Label Background / Label BackgroundOn / #000000Chip background: the zone's own fill, or a fixed color.
Strength on Zone Name ChipsOffAdds the strength line to each name chip. Needs Show Sunzone Labels.
Draw VisualsOnMaster drawing switch.

Stats table inputs

InputDefaultMeaning
Show Table / Position / Text SizeOff / BottomRight / SmallTable placement and font.
RVOL Lookback (1m bars)20Bars of 1-minute volume averaged as the RVOL baseline.
RVOL Highlight Threshold1.5Volume cell is tinted in the city color at or above this RVOL.

Per-city inputs

InputDefaultMeaning
EnabledVariesWhether this city draws a zone.
ColorPer cityThe zone fill, border, EQ line and name chip color.
Sunrise Offset (sec)0Shifts the detected sunrise moment for this city.
Keep Days12 (max 20)How long this city's zones stay on the chart.

Adding it to a chart

  1. Right-click the chart → Indicators… → find ToredaSunriseZones, click Add, set the inputs, click OK.
  2. Color inputs shown as #RRGGBB are typed as hex text, e.g. `#6FA8DC`. An invalid value falls back to a default and prints a note in the NinjaScript Output window rather than failing the indicator.
  3. Give it history. Zones appear only once a sunrise has been seen on the 1-minute series, so load at least a couple of days of data. Cities whose sunrise falls outside your instrument's session simply produce no zone that day.
  4. Enable more cities in their city groups as needed. Each enabled city costs one sunrise calculation per minute bar, which is cheap.

Notes and limitations

  • The name-chip buffer is measured in minutes rather than pixels, so it reads as more bars on faster charts.
  • Retests count once per closed chart bar, so the count depends on your chart period.
  • A city whose timezone or color fails to resolve is disabled on its own with a note in the Output window. The other cities keep working.

For strategy builders

NinjaTrader 8 only

The plots below are the NinjaScript surface the NT8 build exposes to the Strategy Builder. Every plot is registered transparent, so it changes nothing on a chart until you color it in the indicator dialog. Levels are NaN when there is no value — never 0, which would compare as a real price — and flags are 1/0.

Only seven inputs are reachable from the Strategy Builder: City Roster, Focus City, Session Timezone, Daylight Saving Time, RVOL Lookback, Keep Days Override and Draw Visuals. City Roster (`"NYC,LON,…"`, blank = use the per-city toggles) and Keep Days Override (0 = use each city's own) exist so the Builder never has to touch the 88 per-city inputs.

PlotMeaning
FocusZoneHigh / Low / EqNewest zone of the city named in Focus City. All NaN when that input is blank, unknown, disabled, or the city has no live zone.
FocusZoneAgeDaysWhole city-local days since that zone was minted (0 = today).
FocusZoneRetestsIts re-entry count.
FocusZoneRvolIts sunrise-bar RVOL.
NearestZoneHigh / Low / EqThe zone nearest to price across all enabled cities. A zone containing price wins outright.
NearestZoneDistanceTicksSigned ticks from price to that zone: + above, − below, 0 inside.
NearestZoneAgeDays / Retests / RvolThe same three measures for the nearest zone.
NearestZoneCityIndexIts city slot, 0–21, comparable against a literal.
InAnyZone1 while price is inside any live zone of any enabled city.
NewZoneSignal1 on the first chart bar after any enabled city mints a zone.
RetestSignal1 on any bar where a zone's retest count incremented.

This content is for educational purposes only and is not financial advice. Trading involves substantial risk of loss. See our risk disclosure for details.

Disclaimer

Toreda is a product of Bearcat Solutions, a company registered in the U.S. and its affiliates (collectively, the “Company”). Toreda is a trade journaling, performance analytics, and AI coaching platform designed to help traders log, review, and improve their trading. None of the information provided by the Company or contained herein is intended as investment advice, as any offer or solicitation to buy or sell securities of any kind, or as a recommendation, endorsement, or sponsorship of any security, company, or fund. Nothing contained herein constitutes a solicitation of any kind or an offer to buy or sell futures, options, forex, or any other derivative security. The performance dashboards, trade scores, AI coach insights, and analytics provided through Toreda are for informational and educational purposes only and are not intended to be relied upon for making investment decisions. Any use of the information on the Company's websites and platform is strictly at your own risk, and the Company assumes no responsibility or liability for any use or misuse of such information. Past performance is not indicative of future results, and every investment involves risks, including the possibility of total loss of the amount invested. You should always seek professional advice before making any investment decisions. The Company is not a financial broker, financial advisor, financial manager, or a financial representative, and does not accept client deposits.

Toreda does not offer or provide trading or investment recommendations. The AI Coach feature provides analytical insights based on your own trade history — it does not recommend specific trades, securities, or strategies. Any trading or investment decisions you make are entirely your responsibility and at your own risk. The results of any services provided by Toreda are directly related to each individual's professional skill level, trading discipline, and their capacity to apply the insights provided.

Disclosure on Performance Data

The performance metrics, scores, equity curves, and analytics displayed within Toreda are calculated from trade data imported from your connected broker accounts or manually entered by you. These metrics reflect historical results and have inherent limitations. No claim is made that any trading approach tracked in Toreda will achieve or is likely to achieve future profits or losses comparable to those shown. Actual trading results can differ significantly from historical performance data. Performance analytics benefit from hindsight and cannot account for all market factors, emotional decision-making, or evolving market conditions that affect real-time trading. Many factors — including slippage, commissions, market liquidity, and individual execution — can adversely affect actual trading results beyond what is reflected in the platform's analytics.


NinjaTrader® is a registered trademark of NinjaTrader Group, LLC. No NinjaTrader company has any affiliation with the owner, developer, or provider of the products or services described herein, or any interest, ownership or otherwise, in any such product or service, or endorses, recommends or approves any such product or service.