SG Off-the-Radar — End-of-Day Verdict
1 ACQUIRE + 1 DISPOSE. ACQUIRE: D05 DBS STRONG BUY - ADD cv90 BreakoutUp_20D, Buy_Rank 1 - the standing GTC limit @ Sis CARRIED UNCHANGED to its 08-13 expiry (missed today's low by 11 cents); the reprice to the live Sentry is SUPPRESSED by SGO-5 at RSI 75.27 > 75. DISPOSE: G07 Great Eastern TRIM @ ~S (ADR-0012 profit-take, genuinely armed at Gain_ATR 6.00 + a fresh RSI_DIV tick; G1 does not shield a name that has printed cv0 for 14 sessions), banking Sand retaining behind a 21.02 trail. O39 queue @29.82 WITHDRAWN on a second consecutive miss then a liquidity-gate blanking -> mandatory trail-raise 28.51 -> 29.73, with G1 correctly blocking the trim on the book's strongest breakout. J36 holds under its 08-06 escalation clause; S58 stop 4.56 -> 4.58; S68 still no re-arm.
Recommendations
1 to acquire · 1 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 |
|---|---|---|---|---|---|---|---|---|---|
| D05 | DBS Group Holdings | 76.99 | ADD — QUEUED @75.87 | 75.87 | 73.54 | 77.22 (+1.8%) | 85.46 (+12.6%) | 92.93 (+22.5%) | DBS is the book's strongest technical setup and its conviction has fully recovered - the breakout that faded last week reasserted itself, with the shares closing at Safter touching S, comfortably above every major moving average and with the model's 12-week view still 22% higher. We already have a standing order to buy 1,500 more shares at Sand we are leaving it exactly where it is rather than raising it to chase the stock, because the shares are now technically overbought and paying up here is the single most reliable way this book loses money. The bank is expensive against its residual-income anchor, which is why this is a small top-up rather than a large one, but the recent record quarter and the 81-cent dividend underpin the price. If the market does not come back to us by 13 August the order simply expires. Ops: reprice to the live Sentry SUPPRESSED by SGO-5 (RSI 75.27 > 75); the engine's printed 'Buy Stop @76.41' sits BELOW the 76.99 close and would fill at market, so the instrument is declined too (EDATR -0.40 => limit per SGO-5). Provenance: standing 75.87 is S (0.24%) below the live band [76.05, 76.77], on the pullback side; auto-withdraw triggers not met (cv90 >= 65, expiry 08-13 unreached), so CARRY not withdraw. Size held at - deliberately NOT resized to today's 114.38%. PROFIT_ARMED has dropped off now the blended Avg_Cost 73.9572 reads correctly (Gain_ATR 2.11 < 3.0, T12_Progress 82.85 < 90) - the 08-07 SGO-4 false positive has cleared. Quality_Pass False non-binding (ADD to a held name + SGO-3 financial); DCF anchor 57.01 suppressed per SGO-3. f = 0.141 (measured calib_1w; graded buys hit 11 >= 10 this session, first run off the 0.30 fallback). Ex-div 81c on 08-14 now falls OUTSIDE the 08-13 expiry, unlike the 08-07 card. Stop ratchets 73.28 -> 73.54. · news |
| G07 | Great Eastern | 22.40 | SELL 30% | 22.40 | 21.02 | n/a | n/a | 31.92 (+42.5%) | Great Eastern has run 35% in a month and 42% year-to-date, and we are banking roughly a quarter of a position that is now sitting 22.6% above what we paid. The insurer's half-year numbers were good - S of profit and a 35-cent dividend - but the shares are severely overbought, momentum has started to diverge from price for the first time in a week, and the stock traded only today against millions for the banks we hold. A very small free float, under 12% after the failed take-private, is what makes a move like this possible in both directions, and it is why we would rather take some money off the table while the door is open than discover how narrow it is later. We are keeping behind a raised stop because the model still sees 42% upside over twelve weeks; this is a de-risk, not an exit. Ops: ADR-0012 profit-take, armed + 1 tick -> profit_take_1 30% tier. Armed is genuine, NOT an SGO-4 artifact (Avg_Cost 18.27 matches portfolio JSON exactly; Gain_ATR 6.00, double the 3.0 threshold). Tick (a) RSI_DIV is a FRESH instance - absent 08-04..08-10, re-prints today; the previously fired 4x-NO-TRADE tick was spent on 08-06 ( @ 21.98), one fire per instance. Ticks (b) no cv collapse, (c) 12wk 31.92 vs 1.02x22.40 = alive at +42.5%, (d) spent + SGO-4 makes the liquidity-gate NO TRADE 'not evaluated' anyway. G1 does NOT shield: it needs a fresh BreakoutUp_*/MomentumContinuation_* at cv >= 80 and G07 has printed cv0 for 14 straight sessions. G2/G3 govern the valuation-elevate path only and do not block a fired profit-take; valuation is neutral here regardless (MoS -0.678, no tier bump, not UNDERVALUED). % x 2200 = 660 -> (board lot 100, rounded DOWN per this book's 08-06 G07 precedent. Action price 22.40 = anchor close; row is liquidity-gate blanked so Entry/Stop/Target are wiped -> 1wk and 4wk render n/a rather than being synthesized. Corroboration: today's high 22.6599 hit the last live model Target_Price (22.66, printed 07-28) to the cent. Retained trail 20.95 -> 21.02 (2.0x ATR chandelier off the 22.40 peak close). HORIZON GAP: G07 goes ex-div Son 2026-08-19 (1.56%, 0.51 ATR) and sg_horizon.json carries no G07 event at all - trimming 08-12 forfeits Simmaterial; the 08-19 mark-down must NOT be read as deterioration or trip the 21.02 trail. · news |
| J36 | Jardine Matheson | 63.22 | HOLD | 63.22 | 61.76 | n/a | n/a | 57.36 (-9.3%) | We already halved this position last week and we are holding the rest. Jardine Matheson's half-year numbers were respectable - underlying profit up 9% and free cash flow up 21% - and on our valuation work it is the cheapest thing we own, trading at less than half its estimated worth. But the share price is going nowhere: it sits below every major moving average and the model's twelve-week view is 9% below today's price. The sensible discipline is the one we set when we trimmed - we sell the remainder only if the stock closes decisively below S, and otherwise we leave it alone rather than dribbling out of a position that is stabilising and pays a dividend on 20 August. Ops: the 08-06 escalation clause governs and is NOT met - close 63.22, low 62.66, stop 61.76 approached but untouched; re-cutting on a 0.75% down-day is the dribble L3 warns against. PROFIT_ARMED is a FALSE POSITIVE re-verified by hand: position is at a LOSS (-0.52% on 63.55 cost, Gain_ATR -0.19), and T12_Progress 110.22 is computed across an inverted span because Target_12Week < Avg_Cost - not armed, so ticks (c)/(d) cannot open an ADR-0012 path. Signal degradation is genuine not mechanical (NoTrade_Reason 'Consensus conflict + low conviction', 3rd consecutive real NO TRADE; below EMA20 64.15 / EMA50 64.64 / EMA200 65.17; 12wk eroding 58.36 -> 57.36; RSI 48.0 -> 46.0) - which is exactly why the escalation clause exists. Sec9(b) argues DOWN a tier (UNDERVALUED +0.382, Quality_Pass True, DCF 132.13). Ex-div USon 08-20 (~1.3%). · news |
| S58 | SATS | 4.78 | HOLD | 4.72 | 4.58 | n/a | 5.08 (+7.6%) | 6.04 (+28.0%) | SATS is held and the protective stop moves up a notch to S. The shares eased slightly to S, leaving us fractionally below our purchase price, but the setup is quietly improving rather than deteriorating - the model's confidence rose, the stock remains above all its major moving averages, and the twelve-week view points 26% higher. Our valuation work is unflattering, but a full valuation does not by itself justify selling a position whose trend is intact, and there is no trading signal telling us to reduce. Nothing to do but hold and let the stop do the work. Ops: HOLD cv53 (up from 45) with a live entry/stop/targets; position -1.44% on 4.85 cost, Gain_ATR -0.63; above EMA20 4.69 / EMA50 4.41 / EMA200 3.86; no Exit_Warning, not armed, no horizon event. Adopt printed model stop 4.56 -> 4.58. val_adj -10 and a 0.75x size modifier would apply to any ADD, but per OTR-2 / CLAUDE.md Sec9 valuation NEVER originates a sell and the label is HOLD, not REDUCE. Second-largest position at S. |
| S68 | Singapore Exchange | 25.20 | WATCH | 25.20 | 23.47 | n/a | n/a | 27.73 (+10.0%) | SGX remains on the watch list with no order live. We withdrew our buy order at Slast week when the model stopped publishing an entry level for the stock, and it still is not publishing one - meanwhile the shares have climbed another 2.8% to S, now 5% above where we wanted to buy. The investment case is unchanged and strong: full-year revenue up 13.9%, adjusted earnings up 24.6%, and daily trading volumes at an 18-year high. We are simply waiting for the model to give us a level again rather than buying at any price. Ops: second consecutive 'Liquidity gate failed' blanking, so the re-arm condition (a printed BUY/STRONG BUY with a live Entry_Price) is unmet. Trend pillar still Bullish, Consolidation_Bullish consensus. Cost of the gate keeps compounding - logged as systemic finding #1. |
| 9CI | CapitaLand Investment | 2.72 | WATCH | 2.72 | 2.69 | n/a | 2.84 (+4.4%) | 2.87 (+5.5%) | CapitaLand Investment perked up but not enough to buy. The signal is only a watch-level reading, the stock looks expensive against what the business earns, and the particular pattern firing here is one that has a poor record in this book. Its half-year results land on 13 August - a reason to wait and see rather than to position ahead of them. Ops: adj 51, fourteen points under the 65 floor; WATCH is not an actionable label; L1 explicitly discounts the FailedBreakdown_Up family (~0.25 hit, ~60% stop-first). Quality_Pass False. |
| C07 | Jardine C&C | 28.42 | WATCH | 28.42 | — | n/a | n/a | 26.20 (-7.8%) | Jardine Cycle & Carriage is the cheapest, highest-quality thing on our screen - our work puts fair value at more than double the Sshare price - and for the fifth session running we are not buying it, because the price action gives us no entry. Cheapness alone has never made this book money; we need the stock to actually start moving first. Wilmar's results on 12 August and Olam's on 14 August are the read-throughs worth watching. Ops: OTR-2 in its purest form. Gave back even the WATCH 54 held on 08-07 - now NO TRADE cv0, Pillar_Consensus Indeterminate, Regime Transitional, below EMA50 28.30. val_adj +10 (best in book, Quality_Pass True, DCF 65.48) still moves nothing without a BUY signal >= 65. |
| U11 | United Overseas Bank | 42.16 | WATCH | 43.36 | 42.26 | n/a | 46.32 (+6.8%) | 46.35 (+6.9%) | UOB is off the table for now. It briefly looked buyable last week, then faded twice, and today fell 2.6% to S, dropping through its 20-day average with momentum rolling over. We never bought it, which is the system working - a signal that decays before you can act on it is one you were right not to chase. It goes ex-dividend 88 cents on 17 August, the largest scheduled price move in the book's calendar. Ops: sharpest decay in the book - BUY 71 (08-06) -> WATCH 53 -> WATCH 26; adj 23, forty-two points under the floor. RSI 56.5 -> 45.9 on 11.96m sh, close below EMA20 42.93. |
Outcome & track record