SG Off-the-Radar — End-of-Day Verdict
1 ACQUIRE (QUEUED) + 3 DISPOSE. ACQUIRE: S68 SGX - QUEUE buy-limit @ SGTC, expires 08-19. The book's first printed STRONG BUY in eleven sessions - PullbackBuy_VWAP, the L1-favoured family, at conviction 99 and Buy_Rank 1, adj 90 after val_adj -9, clearing the 65 floor by 25 points. This is exactly the setup yesterday's entry said the book was waiting for, and no lower bar was used to find it. It is QUEUED rather than bought because the close ran 1.97 ATR (4.0%) past the model entry, outside the provenance band; the limit is the engine's own printed Order_Type, repriced each session per SGO-5. Sized at / S (14.4% of book) after a 0.75x modulator for OVERVALUED_VS_RI MoS -1.84. Stated openly: the no_chase_queue counterfactual reads [cost] across n=23, so this book's queues historically do not fill - the resolution is disciplined repricing and a 3-session expiry, not abandoning the no-chase rule. DISPOSE: O39 OCBC TRIM @ S - ADR-0012 profit-take, armed at Gain_ATR 4.34 (+11.04%) with a second-consecutive RSI_DIV at a RISING RSI 77.9 on another 52-week high; G1 now misses by 22 conviction points (58 vs the 80 bar) where it missed by seven yesterday, and the engine itself downgraded BUY-ADD to HOLD. Third rung of a ladder that leaves - 36% of the original - riding a still-positive 31% 12wk path. J36 JARDINE MATHESON TRIM @ S - §9 N-consecutive now at N=5 with the 12wk falling every session to -12.3% and the close beneath every moving average; the PROFIT_ARMED remains a false positive on a losing position and the escalation clause did NOT fire (close 62.34 vs 61.76, though the low pierced it a third time), so the full-exit clause stays live on the remaining. UNDERVALUED MoS +0.38 holds the tier at the 30% floor. G07 GREAT EASTERN TRIM @ S - ADR-0012 tick (d) fires on the second consecutive NO TRADE, the exact fire yesterday's card named as pending; SGO-4 does not shield it because both prints are genuine consensus-conflict reads, corroborated by a momentum pillar collapsed to 24 against trend 78 at RSI 78.5. Realised +21.5% on the slice - the book's best. Net realised +S; trims free Sand the queued buy is fully self-financed out of a S cash pile. D05's ex-div stop pre-adjustment from yesterday is VALIDATED - the printed 75.40 would have been breached on today's 81c mark-down alone. Zero trail erosion book-wide; two of five stops raised. Systemic: the LIQUIDITY GATE IS MISFIRING - it blocked S63 on 13.3m shares (+5.8%) and Z74 on 56.9m shares (+4.7%), the two largest turnovers in the book, while correctly blocking U13 at.
Recommendations
1 to acquire · 3 to dispose
| Ticker | Name | Close | Action | Action Price Where to act — a buy-limit on a pullback or a buy-stop above resistance, not the current price. Sanity-check vs Close: on a held name, an action price stranded above the close means the queued level was set when the stock was higher — stale, awaiting reprice. | Stop The risk-defined exit, set below the entry for a long (~1.2–1.8×ATR). A held long whose Stop sits at/above the Close is already below its stop — a stale box awaiting reprice. | 1wk Model estimate of the likely price at this horizon — a forward projection, not a guarantee, and separate from the trade's Action Price or Stop. Where the ML estimator is enabled these are per-ticker calibrated forecasts (~80% coverage band) that are refreshed periodically and can drift between refreshes; otherwise they're interpolated from the signal's swing target. Confirm against the settled close. | 4wk Model estimate of the likely price at this horizon — a forward projection, not a guarantee, and separate from the trade's Action Price or Stop. Where the ML estimator is enabled these are per-ticker calibrated forecasts (~80% coverage band) that are refreshed periodically and can drift between refreshes; otherwise they're interpolated from the signal's swing target. Confirm against the settled close. | 12wk Model estimate of the likely price at this horizon — a forward projection, not a guarantee, and separate from the trade's Action Price or Stop. Where the ML estimator is enabled these are per-ticker calibrated forecasts (~80% coverage band) that are refreshed periodically and can drift between refreshes; otherwise they're interpolated from the signal's swing target. Confirm against the settled close. | Rationale |
|---|---|---|---|---|---|---|---|---|---|
| S68 | Singapore Exchange | 25.24 | BUY — QUEUED @24.27 | 24.27 | 23.66 | 24.49 (+0.9%) | 25.89 (+6.7%) | 28.27 (+16.5%) | SGX has finally given us the entry signal we have been waiting six sessions for - the strongest buy print this book has produced since inception, on the one setup type that has served it best: a pullback into rising trend rather than a chase of a breakout. The catch is that the price ran away from the level the model wants to pay, so we place a resting order 4% below today’s close rather than buying at the high, and we size it three-quarters of normal because our own valuation work says the exchange is expensive here even as the momentum is real. Risk is tightly defined: 2.5% to the stop. STRONG BUY cv99 at Buy_Rank 1, 96.51, Mostly_Aligned (Trend 90 / Momentum 67 / Vol 37) in a Trending regime; adj 90 after val_adj -9, clearing the 65 floor by 25. QUEUED not bought because Entry_Distance_ATR -1.97 puts the close 1.97 ATR past the model entry and outside the provenance band [24.15, 24.39]. Limit = the engine’s own printed Order_Type "Buy Limit @ S" per SGO-5, NOT a self-invented deeper level; SGO-5 suppression does not trigger (RSI 67.7 < 75; entry below close = genuine pullback limit). Size: 96.51% x Sx 20% = Sx0.75 modulator (-3 < MoS -1.84 <= -1) = S / 24.27 = (lot-rounded down) = S = 14.4% of book; max_position_pct 60% and both non-binding. SGO-3 suppresses the DCF-anchor flag (IsFinancial, FV=ResInc); Quality_Pass is True so the hard quality gate passes on its own terms. Scorecard warning printed WITHOUT adjusting: PullbackBuy_VWAP|buy is 1/3 on 1wk targets (n=3), below the n>=5 floor so bias 0. COUNTERFACTUAL TENSION, stated openly: no_chase_queue reads [cost], median withheld 1wk +5.24% / 4wk +11.04% across n=23 - this book’s queues historically do not fill. Resolution is the REPRICE, not the level: per SGO-5 reprice to the live model entry every session while it lives; expires_on 2026-08-19 (anchor + 3 sessions); auto-withdraw if conviction < 65. This is also the first GTC the book carries across sessions since the 08-12 double-fill defect - watch the 08-17 fill closely (systemic #5). · news |
| O39 | OCBC Bank | 31.79 | SELL 30% | 31.67 | 30.41 | 32.38 (+2.2%) | 36.03 (+13.8%) | 41.70 (+31.7%) | OCBC closed at another 52-week high, up 11% for us and nearly 40% above its long-term trend line, with momentum now diverging from price for a second straight session - the classic late stage of a very good run. Record half-year profits and a 15% dividend increase are real and already in the price; that is why we bank a third slice rather than exit, keeping 36% of the original position riding a path the model still puts 31% higher over twelve weeks. ADR-0012 profit-take: ARMED (Gain_ATR 4.34 on a genuine +11.04% gain, not the T12 path) + TICK (a), a second-consecutive RSI_DIV at a RISING RSI 76.62 -> 77.87. Ticks (b)/(c)/(d) do not fire (conviction -15, short of the 20-pt bar; 12wk 41.70 vs 1.02x close 32.43 is far from dead; no NO TRADE streak). G1 does NOT shield: family qualifies but conviction 58 is 22 points short of the 80 bar (7 short yesterday), and the engine itself downgraded BUY-ADD -> HOLD. Base 30% tier - MoS -0.77 is nowhere near the <= -3 bump line. 870 rounded DOWN to 800 (SG 100-lot precedent). Ladder: ->. Action price 31.79 = settled close (L4), inside band [31.49, 31.85]; the printed 31.67 is a buy-stop below the close and is not a seller’s anchor. CRITICAL - EX-DIV ON THE EXECUTION DATE: O39 goes ex 47c on 2026-08-17, the execution date itself. Holding at tonight’s close already earns it, so the sale collects 800 x S = SAND prints ~1.48% lower (~S) for identical economics. This mark-down is NOT a gap - do NOT trigger the L8 reprice rule (the D05 08-14 precedent validated exactly this). Retained; trail RAISED 30.22 -> 30.41 (chandelier 2.0 x ATR 0.7273 below the 31.86 high), stepping to 29.94 on 08-17 as the 47c dividend adjustment - a genuine 19c raise on a like-for-like ex-adjusted basis (30.22 - 0.47 = 29.75). ADR-0020 live = peak, 0% erosion. Retained shares collect SSGO-3 suppresses the DCF-anchor flag and the non-binding Quality_Pass=False. All three horizons point UP - that is the case for a trim, not an exit. · news |
| J36 | Jardine Matheson | 62.34 | SELL 30% | 62.34 | 61.76 | 62.18 (-0.3%) | 61.18 (-1.9%) | 54.69 (-12.3%) | Jardine Matheson has now gone five straight sessions without the model authorising anything constructive, the last three explicitly bearish, on a position that is losing money and trading below every moving average we track. The twelve-week view has fallen every single session and now points 12% lower. The business itself is sound and the shares screen cheap - which is exactly why we take the smallest cut available rather than exit - but a falling forward view on a losing position is a reason to reduce, not to wait. CLAUDE.md §9 "N consecutive NoTrade/Conflicted on a held position", now N=5: NO TRADE (08-10) -> NO TRADE (08-11) -> AVOID (08-12) -> AVOID (08-13) -> AVOID (08-14). Target_12Week monotonic 58.36 -> 57.36 -> 57.12 -> 54.78 -> 54.69, now -12.3% vs close. Below EMA10 63.43 / EMA20 63.72 / EMA50 64.40 / EMA200 65.09; 22.7% below High_52W 80.63; Consolidation_Bearish, Ranging. NOT ADR-0012 - the PROFIT_ARMED is a FALSE POSITIVE for the fifth session (position at a LOSS, Gain_ATR -0.70; arm comes solely from degenerate T12_Progress 113.99 that reads >100% only because Target_12Week sits BELOW the price). NOT the escalation clause - settled close 62.34 is 58c ABOVE the 61.76 line, though the session low 60.62 pierced it for a THIRD consecutive session; L4 makes the settled close authoritative, so this is a PARTIAL trim and the full-exit clause stays LIVE on the remaining. Today’s +0.66% is a bounce inside an intact downtrend, not a signal change. UNDERVALUED MoS +0.38 with Quality_Pass=True amplifies DOWN one tier, holding the trim at the 30% floor. 360 rounded DOWN to 300. Books a Srealised loss deliberately. Action price 62.34 = printed Entry_Price exactly and also the settled close; band [61.91, 62.77]. The printed Stop_Price 65.78 is the SHORT-side stop and is NOT applicable to a long (systemic #3, third session) - the operative long stop stays 61.76. MANDATORY EX-DIV STOP ADJUSTMENT: ex 65 US cents on 08-20, on which date the stop steps mechanically to 61.11 (61.76 - 0.65) - a dividend adjustment, NOT a lowering, without which the escalation clause fires spuriously on the mark-down alone. Trimmed forfeit US; retained 900 collect USGoverned by L3 and the [saved] optional_trim counterfactual (median withheld 1wk +1.12%, n=6) after deferrals on 08-06 / 08-11 / 08-12. · news |
| G07 | Great Eastern | 22.20 | SELL 30% | — | 21.41 | n/a | n/a | 31.19 | Great Eastern is our biggest winner - up 21.5% - and it has just spent two straight sessions with the model unable to find any constructive read on it, with the momentum component of the signal collapsing while the price sits at an overbought extreme after a 35% month. Record half-year earnings and a raised dividend are genuinely good news, and coverage is openly asking whether the run has outpaced fair value. We bank a fifth of the gain at a +21.5% realised return and let three-quarters of the position keep running behind a tightened stop. ADR-0012 profit-take: ARMED (Gain_ATR 7.53, the most armed position in the book, on a real +21.51% gain) + TICK (d), TWO CONSECUTIVE NO TRADE prints (08-13, 08-14). This is the exact fire yesterday’s card named as pending ("this is the FIRST NO TRADE of the current run, not the second") - a pre-announced, mechanical fire, not a fresh interpretation. SGO-4 does NOT shield it: both prints carry NoTrade_Reason "Consensus conflict + low conviction", a GENUINE engine read, not a liquidity-gate block or post-fill lag - and the pillars corroborate it, Momentum collapsed to 24 against Trend 78 giving a real Conflicted consensus. (This same name’s 08-10/08-11 NO TRADEs WERE liquidity-gate blocks and were correctly exempted then - the contrast is the point.) Ticks (a)/(b)/(c) do not fire: PROFIT_ARMED prints alone; a blank NO TRADE row prints no conviction to compare (SGO-4); 12wk 31.19 vs 1.02x close 22.64 is nowhere near dead. Base 30% tier - MoS -0.68, no valuation bump. 480 rounded DOWN to 400. Realised gain 400 x (22.20 - 18.27) = SAction price 22.20 = settled close (L4); the row prints NO Entry_Price (a NO TRADE blanks the decision surface - systemic #4) so there is no provenance band and the close is the only defensible anchor. Estimates: 1wk and 4wk are n/a because the row prints no Target_Price - stated, not synthesized; the scan’s own band is Est_Low 21.76 / Est_High 22.64. The 12wk 31.19 (+40.5%) is the model’s most aggressive forward view in the book on a name at RSI 78.5 with momentum at 24 - precisely the number a 30% trim hedges rather than trusts. Retained; trail RAISED 21.33 -> 21.41 (chandelier 2.0 x ATR 0.5222 below the 22.45 high), stepping to 21.06 on 08-19 as the 35c dividend adjustment. ADR-0020 live = peak, 0% erosion. Trimmed sold 08-17, BEFORE the 08-19 ex-date, forfeit S - the one adverse dividend interaction today, too small to change the call; retained 1,200 collect SSession volume is genuinely thin but a 400-share sale is immaterial against it. SGO-3 suppresses the DCF-anchor flag and the non-binding Quality_Pass=False. · news |
| D05 | DBS Group Holdings | 75.53 | HOLD | 75.53 | 74.59 | n/a | 78.02 (+3.3%) | 93.58 (+23.9%) | DBS looks down 1.3% today but almost all of that is the 81-cent dividend coming out of the price - we collected Sin cash for it. The position is fine, the twelve-week view remains the strongest in the book at +24%, and yesterday’s decision to set the stop below the dividend-adjusted level is precisely what stopped us being shaken out on a purely mechanical move. We hold. VALIDATION WORTH CARRYING AS BOOK PRACTICE: yesterday’s printed model stop 75.40 WOULD have been breached on today’s mark-down alone (close 75.53, session low 75.20 - through it intraday); setting 74.59 = 75.40 - 0.81 saved the position. NOT ARMED on either path (Gain_ATR 0.66 on the true blended 74.7025, T12_Progress 80.71), so no profit-take is available. Exit_Warning blank. Today’s printed stop 75.16 is only 0.24 x ATR below the close - far too tight to adopt for the same reason - and the 2.0 x ATR chandelier off the 75.89 high is 73.40, LOWER than the incumbent; so the trail HOLDS at 74.59, the highest defensible line (= peak, 0% erosion). WATCH ITEM, not a fire: conviction is a 20-point slip that WOULD be tick (b), but tick (b) only fires on an ARMED position and D05 is not armed. SGO-3 suppresses the DCF-anchor flag and the non-binding Quality_Pass=False. · news |
| S58 | SATS | 4.69 | HOLD | 4.69 | 4.60 | n/a | 4.89 (+4.3%) | 5.64 (+20.3%) | SATS is our largest holding by share count and our only meaningful loser, down 3.3%, but nothing has triggered a sell: the signal has been a stable HOLD for five sessions, the twelve-week view still points 20% higher, and the model’s progress toward that target is actually improving. The stop stays where it is - the levels the model printed today are too tight to adopt safely. NOT ARMED (Gain_ATR -1.59), no Exit_Warning, conviction flat at 44. Headroom to stop EASED 1.7% -> 1.9%. Today’s printed model stop 4.65 sits only 0.85% below the close - too tight - and the 2 x ATR chandelier (4.72 - 0.20 = 4.52) is LOWER than the incumbent, so 4.60 HOLDS as the highest defensible line (= peak, 0% erosion). T12_Progress RISING 82.0 -> 83.2. Nothing in §9 has originated a sell - a stable five-session HOLD is not a REDUCE. Still the tightest stop margin in the book and the position most likely to force a decision. FAIR_VALUE at MoS -2.42 is the miscalibrated banding note B warns about - read cautiously; it originates nothing. · news |
| S63 | ST Engineering | 10.96 | WATCH | — | — | n/a | n/a | 10.00 | ST Engineering was the strongest mover in the book today, up 5.8%, and our system did not even evaluate it - the liquidity filter blocked it on a session with 13.3 million shares traded. That is an engine defect, not a judgement. It would not have been bought regardless, because it is the most expensive name on our valuation screen, but the defect needs fixing before it costs us a real opportunity. NoTrade_Reason "Liquidity gate failed" on and a +5.79% close to 10.96 - the book’s second-largest turnover, and also its second-largest yesterday (8.3M), so not a one-session blip. See systemic finding #1: the gate also blocked Z74 on 56.9M shares while correctly blocking U13 on 100 and passing G07 on 39,600 - consistent with a units/currency mismatch or threshold misconfiguration. GROWTH_PRICED_IN MoS -8.91 gives val_adj -10, the worst in the book, so adj -10; the defect cost nothing this session, but it will. |
| S59 | SIA ENGR | 3.13 | WATCH | 3.13 | 3.13 | n/a | n/a | 2.75 (-12.1%) | SIA Engineering shows the second-highest conviction score on the board today, but the signal is pointing DOWN, not up - and this is a long-only book. We do not open it. Worth stating precisely because the number alone looks actionable: AVOID cv71, adj 67, which clears the 65 floor arithmetically and fails on direction. FailedBreakout_Down_20D is a bearish family and the Target_12Week 2.75 sits 12.1% BELOW the close of 3.13. The floor’s first clause requires a bullish actionable Action; AVOID is not one. |
| C07 | Jardine C&C | 27.58 | WATCH | — | — | n/a | n/a | 24.51 | Jardine C&C remains the cheapest quality name on our screen for a third week running, and for a second straight session the model has no signal on it at all. Cheapness alone has never been a reason to buy in this book. We stay out and wait for a technical trigger. NO TRADE cv0 ("Consensus conflict + low conviction") despite a +1.06% close to 27.58. Its +10 val_adj (UNDERVALUED, MoS +0.61, Quality_Pass True) is the best fused valuation score in the book and still leaves adj 10 with no signal to attach it to. OTR-2 is the governing lesson: UNDERVALUED without a signal is not a buy. |
Outcome & track record