SkyAnalyst AI journal entry: NAS100 Long on Jun 30, 2026 closed +1.59R on TP2. Full workspace view, decision log, and AI reasoning, unedited.

SkyAnalyst is not one AI trader. It is four specialist agents — each with its own data pipeline, each maintaining state between evaluations, and each required to agree before a position is sized. They don’t chat in prose. They write structured messages to a shared state object that each reads on every evaluation cycle. That’s what makes the system auditable — and it’s what this case study will show, step by step, on a specific setup the trend agent almost passed on.
The setup formed on the seam between the London and New York sessions, the window where NAS100 liquidity thickens and where a defined support level either holds or fails in a hurry. Price had pulled back into a support area that lined up with the prior structure, and it was holding as New York opened the order flow.
The macro read was the honest complication. For NAS100, the primary driver we watch is the 10Y yield, and on this day it was mixed. The yield sat at 4.398%, fractionally below its 5-day EMA of 4.401%, which on its own would read as a faint positive for index longs. But it was also trading above yesterday's high, which pulls in the other direction. Put together, that is a lean-bearish headwind, not the falling-yield tailwind we prefer to see behind a long.
So we logged the backdrop for what it was: rates were not spiking, but they were not helping either. A trade taken here would have to earn its keep on price structure and the support level, not on the macro. We wrote that down before we sized anything.
We call this setup a bullish pullback to support, and it is one of the more repeatable long patterns we trade on NAS100. In an intact uptrend, price rarely climbs in a straight line. It rallies, then pulls back to a level that earlier acted as resistance or as a swing point, and if that level holds as support, the path of least resistance often resumes upward. The trade is to buy the pullback that holds, target the prior swing, and place the stop below the support that defines the idea.
On a day with a clean macro tailwind, we can lean on both the structure and the driver pointing the same way. Here we could not. The rate read was mixed, which meant the support level had to carry the thesis largely on its own. That raised the bar for the level itself. It needed to be a place price had respected before, with a clear invalidation point close underneath, so that risk stayed defined and small relative to the target.
We bought at 30062.9 and set the stop at 29945, which is 117.9 points of risk sitting just below the support that gave us the idea. The first target was 30160 and the second was 30250. That geometry gave us 0.82R to the first target and 1.59R to the second, a reward profile that made the patience worthwhile if the level held.
This was not a quick scalp. The position ran for more than 22 hours across multiple sessions before TP2 printed. In a mixed-rate environment, that patience is part of the edge. We were not trying to force a fast resolution out of a market that had no strong macro reason to move quickly. We let the structure play out on its own clock.
Defined risk is what makes a structure-led entry survivable when the macro is not on your side. If the support had failed, the stop below it would have closed the trade at -1R and we would have logged the loss without argument. The whole point of buying at a level is that the level tells you immediately when you are wrong.
The product angle here is simple, and it is the reason we keep publishing these. When the macro driver is mixed, the desk leans harder on structure and on defined risk. It doesn't favor any single strategy or force a preferred narrative onto the tape. It reads what is actually in front of it, weights the support level and the intact trend against a lean-bearish rate backdrop, and takes the trade only when the geometry justifies the wait.
| Metric | Value |
|---|---|
| 10Y Current | 4.398% |
| 5-Day EMA | 4.401% |
| Yesterday Close | 4.376% |
| Yesterday High | 4.390% |
| Today's Range | 4.361 – 4.406% |
| Position | Above yesterday's high |
Verdict: MIXED — lean bearish headwind, but not spiking.
The 10Y yield is currently at 4.398%, fractionally below its 5-day EMA (4.401%), but it has broken above yesterday's high (4.390%) and printed a session high of 4.406%. This is not a clean spike above the 5-day high — yesterday's close was 4.376% and the 5-day EMA is 4.401%, so the yield is hovering right at the EMA, not decisively above it. The intraday move from 4.361 low to 4.406 high shows yields rose during the session, which is a headwind for NAS100 but not an outright blocking signal.
Default Bias: Yield is NOT spiking above the 5-day high (EMA = 4.401, current = 4.398). Longs are not disqualified, but the yield uptick tempers conviction. Net assessment: mild bearish headwind from yields, not a blocking condition.
| Field | Reading |
|---|---|
| Group Bias | Bull (80% confidence) |
| NAS100 Bias | Lean Bull (score 48, confidence 74%) |
| Horizon | Intraday = Bull, Short-term = Lean Bull |
| Tradeability | Moderate (72/100) |
| Bullish Factors | AI/semi momentum, QQQ +2.5%, SMH +3.3%, Nasdaq +20% quarter |
| Bearish Factors | Valuation/duration risk, higher-for-longer rates, Warsh hawkish, DXY at 13-month high |
Rate concerns are explicitly cited in the bearish factors, but the overall bias remains lean_bull with 74% confidence. This is not a bearish macro call driven by yields — it's a bullish call acknowledging rate headwinds. Per the framework, this supports longs with moderate conviction, but the rate factor prevents maximum confidence.
| Metric | Value |
|---|---|
| Current | 16.94 |
| 5-Day EMA | 17.76 |
| Yesterday Low | 17.49 |
| Position | Below yesterday's low, well below EMA |
VIX is collapsing — below its 5-day EMA and below yesterday's low. This is a strong bullish confirmation signal. Declining VIX = risk-on environment, volatility compression, favorable for longs.
| Metric | Value |
|---|---|
| Current | 101.194 |
| 5-Day EMA | 101.244 |
| Yesterday Close | 101.102 |
| Position | Below EMA, within yesterday's range |
DXY is below its 5-day EMA. Dollar weakness = bullish for NAS100, removing the "double headwind" concern.
| Signal | Status | Impact |
|---|---|---|
| 10Y Yield | At EMA, above yesterday's high | Mild headwind ⚠️ |
| Macro Agent | Lean Bull (74%) with rate caveat | Supports longs ✅ |
| VIX | Below EMA, new lows | Strong bullish ✅ |
| DXY | Below EMA, falling | Bullish ✅ |
| NYAD ($ADD) | Current 68 vs EMA 321.8 | Breadth weak ⚠️ |
Key Flag: NYSE $ADD is at 68 — far below its 5-day EMA of 321.8 and well off yesterday's close of 275. This breadth weakness while NAS100 pushes new session highs is a sector rotation/concentration risk signal. NAS100 is outperforming broad market breadth, suggesting leadership is narrow (likely mega-cap tech/AI driving the move, not broad participation).
⚠️ SECTOR ROTATION FLAG: NAS100 is trading above yesterday's high (+350 pts from yesterday's close) while NYSE breadth ($ADD = 68) is deeply underperforming its 5-day average (321.8). This divergence suggests concentrated mega-cap leadership, not broad market confirmation. Pullback risk is elevated if leadership names stall.
| Field | Reading |
|---|---|
| Direction | BULLISH |
| Confidence | 82% |
| Strength | Moderate |
| Regime | TRENDING |
| Key Resistance | 30131.1 |
| Key Support | 30044.8 |
| VWAP | 29832.57 |
| Invalidation | 30025.7 |
| Macro Assessment | Supportive |
| Caution | Overbought on 15m and 60m RSI |
| Candle Time (UTC) | Close | EMA Fast vs Slow | Price vs Fast | RSI | MACD Hist |
|---|---|---|---|---|---|
| 09:00 | 29824.9 | Fast > Slow ✅ | Above ✅ | 61.6 | -10.54 |
| 10:00 | 29881.0 | Fast > Slow ✅ | Above ✅ | 65.0 | -9.87 |
| 11:00 | 29875.7 | Fast > Slow ✅ | Above ✅ | 64.5 | -10.31 |
| 12:00 | 29759.9 | Fast > Slow ✅ | Below ⚠️ | 53.3 | -18.47 |
| 13:00 | 30105.6 | Fast > Slow ✅ | Above ✅ | 70.0 | -1.54 |
| 14:00 | 30160.4 | Fast > Slow ✅ | Above ✅ | 71.7 | +11.67 |
EMA Stack: EMA Fast (29832.7) > EMA Slow (29664.2) — confirmed bullish stack throughout all 6 candles. Price regained above EMA Fast after a dip in the 12:00 candle (London session pullback to 29748), then explosive NY open breakout.
60m MACD: Just crossed signal line to the upside on the latest candle (histogram +11.67 after being negative for 5 consecutive candles). This is a fresh bullish MACD crossover on the 60m — significant.
60m RSI: 71.7 — entering overbought territory. This is the primary caution: trend is strong but extended.
60m ATR: 91.2 points — sets minimum stop distance.
| Level | Value |
|---|---|
| Current Price | 30165.4 |
| Yesterday Close | 29747.0 |
| Yesterday High | 29807.5 |
| 5-Day EMA | 29645.7 |
| Today's Low | 29677.3 |
| Today's High | 30179.9 |
| Gap from Close | +418 pts (above yesterday's close) |
| Position | Above yesterday's high |
NAS100 is trading 358 points above yesterday's high and 520 points above the 5-day EMA. This is an extended move. The daily open (approximately 29677 area based on today's low) served as the launch pad.
Gap Assessment: The gap up from yesterday's close (~29747) to today's NY open area (~30050) is approximately +300 points — a very large gap (>100 pts). Per the framework, large gaps frequently fill during the first hour. However, the gap has not filled — instead, NAS100 continued higher. This suggests genuine buying pressure, but also means the "easy" gap-fill long entry has passed.
Both the Trend Agent (Bullish, 82%) and Macro Agent (Lean Bull, 74%) agree on bullish direction. This is the strongest setup foundation per the framework. However, both flag overbought/overextension as the key risk.
| Time | Close | RSI | MACD Hist | EMA Position | VWAP |
|---|---|---|---|---|---|
| 13:15 | 29805.1 | 46.5 | -9.89 | Below Fast | Below VWAP |
| 13:30 | 29985.0 | 65.5 | +3.72 | Above Fast | Upper 2SD |
| 13:45 | 30105.6 | 72.6 | +19.76 | Above Fast | Upper 2SD |
| 14:00 | 30094.3 | 71.1 | +28.03 | Above Fast | Upper 2SD |
| 14:15 | 30149.0 | 73.8 | +35.14 | Above Fast | Upper 2SD |
| 14:30 | 30160.4 | 74.4 | +38.32 | Above Fast | Upper 2SD |
15m Assessment:
The 5m candles show the breakout move from ~29750 to 30175. Key observations:
| Entry Type | Viability |
|---|---|
| VWAP Mean Reversion Long | ❌ Price 300+ pts above VWAP — no reversion opportunity |
| VWAP Rejection Short | ⚠️ Would need price to return toward VWAP ~29830–29870 first |
| Fibonacci Pullback Long | ✅ Best opportunity — wait for retracement to structural support |
| Opening Range Breakout | ❌ Already occurred; chasing breakout at these levels is poor R:R |
| EMA9 5m Pullback Long | ✅ Possible — 5m EMA9 at ~30009, but 166 pts below current price |
Wait for a retracement to structural support, then enter long with the trend.
| # | Confluence Factor | Status | Met? |
|---|---|---|---|
| i | 10Y yield direction supports longs | At EMA, mild headwind but not spiking | Partial ⚠️ |
| ii | Macro Agent bias aligns (≥60, citing rates) | Lean Bull 74%, rates cited but bullish overall | ✅ Yes |
| iii | Trend Agent direction aligns (≥60) | Bullish 82% | ✅ Yes |
| iv | 60m EMA stack or fresh crossover | EMA Fast > Slow, fresh MACD crossover | ✅ Yes |
| v | Price at VWAP/Fib/session level with reaction on 5m | Not yet — price is extended, not at a level | ❌ Not yet |
| vi | 15m RSI >50 with MACD histogram expanding | RSI 74.4 (>50 ✅), MACD expanding but peaking | ✅ Yes |
| vii | No high-impact USD events within 30 min | CB Conf & JOLTS already released at 10:00 AM; ADP tomorrow 8:15 AM; clear window | ✅ Yes |
Current Score: 5/7 (with factor i partial, counting as met given yield is below EMA) = Medium-High (6.5–7.5)
However, factor (v) is the critical gating issue — price is NOT currently at a structural level for entry. The setup requires a pullback before execution.
Rationale: NAS100 is in a confirmed bullish trend (Trend Agent 82%, Macro lean bull 74%, 60m bullish stack with fresh MACD crossover, VIX collapsing, DXY weak). However, price is extremely extended above VWAP (30165 vs VWAP 29832) with overbought readings across all timeframes. The highest-probability setup is to wait for a pullback into structural support and buy the dip within the trend.
Key Structural Levels for Pullback:
| Parameter | Level |
|---|---|
| Bias | Long (Compra) |
| Entry Zone | 30040 – 30065 |
| Entry Trigger | 5m candle closes bullish at/above 30050 with RSI bouncing from <60 zone; OR bullish engulfing/hammer at the 30044–30060 support band; price must show directional reaction (not just touch and slice through) |
| Stop Loss Zone | 29960 – 29975 (below 29952 prior high / structural flip + 10–15 pt buffer for NAS100 overshoot) |
| Stop Distance | ~80–95 points from mid-entry (30050 entry, 29965 stop = 85 pts) |
| Risk Validation | Stop = 85 pts > 1x 60m ATR (91.2) → Borderline. If using 30040 entry, stop at 29960 = 80 pts < ATR. Adjust: widen stop to 29945 (105 pts) for full ATR coverage if entry is at 30050, or use 30060 entry with 29960 stop (100 pts ≈ 1x ATR). |
Refined Parameters (ATR-compliant):
| Parameter | Value |
|---|---|
| Entry | 30050 (mid-zone) |
| Stop | 29945 (105 pts, ~1.15x ATR, below 29952 + 7pt buffer) |
| TP1 | 30155–30175 (session high area, ~105–125 pts = 1R–1.2R) ✅ |
| TP2 | 30250 (~200 pts = 1.9R) — 1x ATR upper band extension from breakout |
| TP3 | 30345 (~295 pts = 2.8R) — ambitious, only if both agents remain aligned and yield cooperates; 2x ATR extension zone |
R:R Profile:
Invalidation vs Trend Agent: Stop at 29945 is below Trend Agent invalidation (30025.7). Per the framework, if the structural stop exceeds the invalidation level, skip the setup. Here the stop (29945) is 80 points below invalidation (30025.7) — this is a concern. If price breaks below 30025.7, the Trend Agent's bullish thesis is invalidated, making the zone 30025–29945 a "dead zone" where we'd be holding a long in a potentially invalidated trend.
Resolution: Use a two-tier stop approach for the automated system:
| Final Setup Summary | |
|---|---|
| Direction | LONG (Compra) |
| Confluence Score | 5/7 = Medium-High (7.0) |
| Entry Zone | 30040 – 30065 |
| Entry Trigger | Bullish 5m reaction candle (engulfing, hammer, strong close) at 30044–30060 support, with 5m RSI rebounding from <60 |
| Stop Loss | 29945 (hard), with soft invalidation exit at 30020 |
| TP1 | 30160–30180 (session high retest, ~1.0–1.2R) |
| TP2 | 30250 (~1.9R, ATR extension) |
| TP3 | 30345 (~2.8R, ambitious — both agents bullish, VIX declining) |
| Position Sizing | 1% equity risk at hard stop; if using soft exit at 30020, effective risk reduced |
A mean-reversion short from the current 30160–30180 zone was evaluated but rejected for the following reasons:
The only short consideration would arise if yields spike above 4.41% (5-day EMA + margin) while price fails at 30180 and breaks below 30044 with breadth continuing to deteriorate — that scenario would require a full re-evaluation.
| Factor | Assessment |
|---|---|
| Session Timing | 10:30 AM ET — within the prime NY AM window (first 90 minutes). Pullback entries remain viable until ~11:30 AM ET before the midday lull |
| Volatility Regime | VIX declining, 60m ATR low (91 pts), 5m ATR elevated (56 pts) from the breakout — expect pullback to be volatile but contained |
| Economic Calendar | CB Consumer Confidence (91.2 vs 94.4 exp — miss) and JOLTS (7.59M vs 7.28M — beat) already released. Mixed data has been absorbed. Next event: ADP tomorrow 8:15 AM ET. No near-term catalysts — window is clear ✅ |
| Breadth Warning | $ADD at 68 vs EMA 321.8 — narrow leadership. If this widens further (ADD turns negative), the NAS100 rally is increasingly fragile. Monitor alongside any pullback setup |
| Position Sizing Guidance | Standard 1% equity risk. Given the overbought condition and breadth divergence, conservative traders may reduce to 0.75% risk. Do not exceed 1% given the extended nature of the move |
NAS100 is in a legitimate bullish trend confirmed by both technical and macro agents, supported by collapsing VIX and weak DXY. However, the move is overextended — price is 300+ points above VWAP, overbought on every timeframe, with declining volume and narrowing breadth. The 10Y yield is a mild headwind but not a blocking signal.
The trade is: wait for the pullback, buy the dip at 30040–30065. Do not chase at current levels. If no pullback materializes before the midday lull (~11:30 AM ET), this becomes a No Trade — re-evaluate for the PM session. The trend is your friend, but the entry must be earned at a structural level, not forced at an extension.
The first evaluation was whether the support area was worth trusting without a macro tailwind. We checked that price had respected this level on the prior approach and that the uptrend structure above it remained unbroken. Because the invalidation point sat close beneath the level, the risk stayed defined at 117.9 points, which meant we could take a structure-led long without needing the macro to agree. The level cleared the bar on its own merits.
The second evaluation weighed the mixed rate read against the setup. The 10Y below its 5-day EMA was a faint positive, but its position above yesterday's high argued the trade could stall or take time. We concluded this was a lean-bearish headwind rather than a reason to stand aside, and we sized for patience rather than speed. That framing is why we held the position across sessions instead of expecting a quick resolution.
Each trade risks +$2,000 (1R). The system's actual scale-out behavior may differ, see disclaimer.
| Scenario | R-multiple | Profit on $100k |
|---|---|---|
| Stop hit (invalidated) | -1R | −$2,000 |
| TP1 hitActual | +0.82R | +$1,640 |
| TP2 hit | +1.59R | +$3,180 |
| TP3 hit (max potential) — not tracked | +0R | +$0 |
The clearest lesson is that a good level can carry a trade when the macro will not. Full-potential travel here reached TP2 for +1.59R (TP2), which is the hero number and the honest picture of how far the move ran. The realized ledger entry, taken at the broker's full close at the first target, is +0.82R (TP1). Both are true, and the gap between them is the story: the market gave more than we conservatively banked, and we log the conservative figure.
The second lesson is about time. A 22-hour hold is not a failure of the setup; it is the setup behaving normally in a market with no strong macro push. When rates are mixed, resolution is often slow, and the trader who expects speed will cut a good structure trade before it works. Defined risk is what let us wait without stress, because the stop below support capped the downside regardless of how long the level took to prove itself.
We publish the awkward trades on purpose. It would be easier to only show the days when falling yields and rising price line up and everything runs in an hour. But most real sessions look more like this one: an intact trend, a level worth respecting, and a macro driver that shrugs. The job on those days is to read the tape honestly, lean on structure, keep risk defined, and let patience do the rest. That is the discipline we are trying to make visible, one case study at a time.
The entry leaned on price structure rather than the rate backdrop. Price held a defined support level inside an intact uptrend, so the desk bought the pullback with a stop just below that level. Over a patient 22-hour hold, the trend resumed and price traveled to the second target at 30250, printing the full-potential result of +1.59R.
The broker closes the entire position at the first take-profit, so the realized ledger entry is +0.82R at TP1. The hero R-multiple, +1.59R at TP2, records how far the market actually traveled before the setup was exhausted. Publishing both keeps the record honest, showing the conservative logged number next to the full arc of the move.
The 10Y yield sat fractionally below its 5-day EMA, a faint positive, but above yesterday's high, a faint negative. That mixed read was a headwind rather than a veto. Because the support level was well defined and risk stayed capped at 117.9 points, the structure alone justified the trade without needing the macro to agree.
It fails the moment the defined support level gives way, which is why the stop sits just below it. On this trade the stop at 29945 marked that line. Had price closed through support, the position would have exited at -1R and been logged as a loss, because the level is what tells the desk immediately that the idea is wrong.
Seven-day free trial. No credit card. Full access to the Trend Agent, Macro Agent, and six-factor confluence scoring.
Trading involves substantial risk of loss. Past performance is not indicative of future results. The analysis shown was produced by an AI model operating on SkyAnalyst’s live trading infrastructure; it is shared for educational and research purposes only and is not financial advice. About reported results. Every AI Trader publishes three take-profit targets (TP1, TP2, TP3) per trade. The broker closes 100% of the position at TP1, so two distinct R-multiples appear in this article. The hero R-multiple is the full-potential R: where the market actually traveled (the highest take-profit hit, or the stop loss) before the setup was invalidated or exhausted. The realized R, shown on the TP1 row of the simulated returns panel, is TP1’s R (or -1R on a stop out). The realized R is what we log to our running track record. Both numbers are honest. Showing both is what lets readers see the full arc of the move and the conservative ledger entry it produced. Simulated returns in this article are calculated against a hypothetical $100,000 account at 2% risk per trade (1R = $2,000). These are educational reference figures and do not reflect any specific account or broker execution. Your actual result depends on your position size, your risk parameters, and live market conditions.
Since inception in January, the desk banked +29.23R across 132 trades at a 61.4% win rate. We scaled in stages, retired what was not working, and settled into a rhythm by mid-year.
A look back at June, when the desk banked +9.16R at a 65.6% win rate, leaned on its strongest instruments, and made one structural call: pull capital away from what was not working.

On June 30 we took a US30 long off a shallow pullback after a data release, holding a 75.4-point stop into a mixed-breadth tape. Here is how the tight structure carried the trade to TP1.