This website is for educational purposes only and does not constitute investment advice. Always do your own research and assess your own risk tolerance before making investment decisions.

SG End-of-Day Verdict 12 Aug 2026, 17:00:00 GMT+8

SG Off-the-Radar — End-of-Day Verdict

0 ACQUIRE + 2 DISPOSE. The buy pool is EMPTY - no bullish actionable Action anywhere in the snapshot, Buy_Rank NaN book-wide, anticipate slot empty; best near-miss is C07 at adj 61 (UNDERVALUED +10) and it is only a WATCH. DISPOSE: O39 OCBC TRIM @ S - ADR-0012 profit-take, armed at Gain_ATR 3.47 (+8.94%) with tick (b), a 38-point conviction collapse from the 08-07 STRONG BUY - ADD cv90 breakout to today's HOLD cv52 failed-breakdown, read through the 08-11 liquidity-gate blank per SGO-4; banks S / Srealised and keeps behind a 29.73 trail, the record 1H result holding the tier at the minimum 30%. G07 Great Eastern TRIM @ S - the 08-11 fire RE-ISSUED after the auto-executor silently skipped its market_open execution type despite G07 opening at exactly the card's 22.40; banks S / Sand keeps, trail 21.02 -> 21.11. D05 holds into Thursday's 81c ex-div (stop held at 73.54, not armed on the true blended cost); S58 stop raised to 4.59 with only 2.5% of headroom left; J36 holds 1,700 with the escalation clause live - its PROFIT_ARMED is a false positive on a losing position and the day's low missed the 61.76 stop by two cents. Systemic: the executor DOUBLE-FILLED the carried D05 GTC, buying for Sagainst an authorised 1,500 - a 2x unauthorised position increase with no error raised.

Recommendations

0 to acquire · 2 to dispose

TickerNameCloseActionAction 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
O39OCBC Bank31.19SELL 30%31.1929.7331.39 (+0.6%)32.67 (+4.7%)40.17 (+28.8%)OCBC has run 8.9% since we bought it and the breakout that carried it there has stopped working: two sessions ago the model called it a strong buy at 90 conviction on a 20-day breakout, today it prints a weak 52 on a failed-breakdown bounce with RSI still stretched at 75. Record first-half profits and a 15% dividend increase are real, but that news is already in the price - it is what drove the run - so we bank a third of the position at Sand keep the remaining for the 12-week path, which still points 29% higher. ADR-0012 profit-take: armed (Gain_ATR 3.47) + tick (b), a 38-point conviction collapse read through the 08-11 liquidity-gate blank per SGO-4 (last evaluable print 08-07 cv90 BreakoutUp_20D). G1 does not shield - signal is not a fresh breakout at cv>=80; G2/G3 govern the valuation-elevate path only and do not block a fired profit-take. Base 30% tier: 1 tick, MoS -0.77 is not <= -3 so no valuation bump, and the strong 1H result caps it at the minimum. 30% x 5800 = 1740 -> rounded DOWN to the 100-sh board lot (08-06 G07 precedent). Retained trail HELD at 29.73 - today's printed model stop 29.71 is lower and stops are never lowered (ADR-0020 peak = live, 0% erosion). Ex-div 47c on 08-17: the forfeit Sbut the pre-div sale price compensates, mechanically a wash; retained shares still collect SSGO-3: Quality_Pass=False and the DCF anchor (32.21) are structurally inapplicable on an IsFinancial=True / ResInc name - both suppressed. f=0.138 measured calib_1w (graded buys 11 >= 10, L5 fallback off). Action price = anchor Entry_Price, provenance band [31.01, 31.37]. · news
G07Great Eastern Holdings22.37SELL 30%22.3721.1122.54 (+0.8%)23.63 (+5.6%)31.88 (+42.5%)Great Eastern is up 22.4% for us and has run nearly 35% in a single month, leaving it at an RSI of 83 - the kind of vertical move in an insurer that gives back a chunk. We flagged this trim yesterday and it never got executed, so we are placing it again: sell at Sto lock in the gain and keep working behind a raised stop. RE-ISSUE of the unfilled 08-11 ADR-0012 profit-take (armed Gain_ATR 6.00 + fresh RSI_DIV tick). The 08-11 card used execution type market_open, which the auto-executor silently skipped - G07 OPENED at exactly the card's 22.40 and traded 22.19-22.60, so the miss was mechanical, not a market condition. Per L3 (execute the de-risk promptly, do not let a recommended trim keep bleeding) the fire is CARRIED, not re-derived: the position is more armed today (Gain_ATR 6.00 -> 6.48). On today's row in isolation no FRESH tick fires (RSI_DIV dropped off, conviction, 12wk alive at 31.88 vs 1.02 x 22.37 = 22.82, NO TRADE streak broken) - this card is the execution of an outstanding decision, not a new origination. Execution type reverted to market. Action price repriced from the stale 22.40 to the live anchor Entry_Price 22.37, provenance band [22.21, 22.53]. 30% x 2200 = 660 -> rounded DOWN to board lot (08-06 precedent). Trail RAISED 21.02 -> 21.11 (printed model stop). MoS -0.68 not <= -3, no tier bump. SGO-3: blank DCF anchor and Quality_Pass=False both non-binding on an IsFinancial/ResInc name. Ex-div 35c on 08-19: trimmed shares forfeit S (immaterial), retained 1,600 collect S; per the 08-11 ruling the mark-down must not be read as deterioration next week. f=0.138. · news
D05DBS Group Holdings75.85HOLD74.4673.5476.51 (+2.8%)79.26 (+6.4%)94.47 (+26.9%)DBS is our largest position and it is holding steady just above where we bought it, with the 12-week view still the strongest in the book at about 24% upside. It also goes ex-dividend on Thursday, paying 81 cents a share - roughly Sto us - so there is no case for touching it. Signal cooled to HOLD cv60 on PullbackBuy_VWAP; NOT armed - on the true blended cost S (portfolio JSON; the scan's Avg_Cost 73.96 and 'Held ' are the SGO-4 (d) one-session write-lag) Gain_ATR = (75.85 - 74.7025)/1.4518 = 0.79, far under 3.0, and T12_Progress 80.29 < 90; Exit_Warning blank confirms it. Stop HELD at 73.54 - today's printed model stop 72.66 is lower and stops are never lowered (ADR-0020 peak = live, 0% erosion). NOTE the position is not the authorised 6,200: the auto-executor double-filled the carried 75.87 GTC by treating the 08-07 and 08-11 cards as independent orders, buying for Sagainst an authorised 1,500 / S (systemic finding #1). SGO-3 suppresses the DCF-anchor flag and makes Quality_Pass=False non-binding. No reconcile card is emitted for the two fills - the original 08-07/08-11 cards grade themselves. · news
S58SATS4.71HOLD4.734.594.76 (+0.6%)5.10 (+7.8%)5.85 (+23.7%)SATS is our one position underwater, down 2.9%, and it is now trading only about 2.5% above the stop we have set - the tightest margin in the book and the name most likely to force a decision next. The 12-week view is still constructive at roughly 24% upside, so we hold, but we nudge the stop up to Sand watch it closely. HOLD cv53 PullbackBuy_VWAP, Gain_ATR -1.25, not armed, no Exit_Warning, no fired exit. Stop RAISED 4.58 -> 4.59 (printed model stop); ADR-0020 peak = live, 0% erosion. FAIR_VALUE with MoS -2.42 is the miscalibrated banding note B warns about on this book - read cautiously, and it originates nothing on its own (CLAUDE.md §9). No qualifying news in the window. f=0.138.
J36Jardine Matheson63.30HOLD63.3061.76n/an/a57.12 (-9.8%)Jardine Matheson is the closest call on the board - the signal turned outright bearish today and the stock traded within two cents of our stop before recovering to close well above it. But the position is essentially flat, the company just reported higher profits, higher cash flow and an 8% dividend increase, and it is the one holding our valuation work says is genuinely cheap. We hold, with a hard rule: a decisive close below Stakes all, no further deliberation. The PROFIT_ARMED flag is a FALSE POSITIVE for the third session running - the position is at a LOSS (-0.39%, Gain_ATR -0.14) and the arm comes solely from a degenerate T12_Progress_Pct 110.82, which reads >100% only because Target_12Week 57.12 sits BELOW the price. There is no profit to take; ADR-0012 is a profit-take mechanism and applying it here would be a disguised signal exit the signal has not authorised. Read as a signal exit it also fails by exactly one condition: note B's valid-exit shape is AVOID + below-stop + negative-12wk, and two of three hold (AVOID RallySell_BearTrend cv48, 12wk 57.12 = -9.8%) but the close at 63.30 is well above the 61.76 stop. The day's LOW was 61.78, two cents above the line - L4 makes the settled close authoritative and the book's 08-06 escalation clause keys on the close. Valuation argues the same way: UNDERVALUED MoS +0.38 with Quality_Pass=True argues any trim DOWN one tier (§9), which from a 30% base is no trim. OTR-1 explicitly says discount RallySell_BearTrend. Stop stays 61.76; the row's printed Stop_Price 66.78 is the SHORT-side stop belonging to the RallySell signal and is not applicable to a long. · news
C07Jardine C&C27.88WATCH27.8827.6928.05 (+0.6%)29.13 (+4.5%)25.47 (-8.6%)Jardine C&C screens as the cheapest quality name on our list and it scores best once valuation is folded in, but the chart has not given a buy trigger - it is still only on the watch list. We do not buy cheapness without a signal, so we wait. Best FUSED score on the board (WATCH cv51 + val_adj +10 on UNDERVALUED MoS +0.61 with Quality_Pass=True = adj 61) and still short of the 65 floor - and it fails the floor's first clause anyway because WATCH is not an actionable Action. OTR-2 governs exactly this shape: UNDERVALUED without a signal is not a buy. Re-arm trigger: a printed BUY/STRONG BUY, at which point the +10 val_adj clears the floor comfortably.
S68Singapore Exchange24.96WATCH24.9624.7925.12 (+0.6%)26.09 (+4.5%)27.64 (+10.7%)SGX has the strongest raw signal of any name we do not own, but it is still only a watch-list print and our valuation work says it is expensive here, so it stays on the sidelines. Highest raw conviction among unheld names (WATCH cv60) but OVERVALUED_VS_RI MoS -1.84 takes it to adj 50, and WATCH is not an actionable Action. The 08-06 queue @24.00 was withdrawn 08-07 and there is still NO re-arm: a re-arm requires a printed BUY/STRONG BUY and this is the fourth session without one. Quality_Rank 1 (best in the book) keeps it top of the watch list.
9CICapitaLand Investment2.73WATCH2.732.702.74 (+0.4%)2.84 (+4.0%)2.90 (+6.2%)CapitaLand Investment reports first-half results tomorrow, so we are not putting an order in front of it regardless of what the chart says - we do not chase earnings gaps. WATCH cv53, adj 43 after GROWTH_PRICED_IN MoS -1.87. 1H 2026 results CONFIRMED for 2026-08-13 per sg_horizon.json; L6 forbids queueing into an earnings gap. Blocked on the calendar independently of the score, which would not clear the 65 floor anyway. Reassess after the print, and buy the pullback rather than the pop.
U11United Overseas Bank41.95WATCH43.2442.2543.61 (+0.9%)45.91 (+6.2%)45.19 (+4.5%)UOB keeps sliding away from the level the model wants to buy it at - price is now well below the entry with momentum still falling, which is a falling knife rather than a pullback. We stay out. WATCH cv51, adj 48. Entry_Distance_ATR +1.60 means price sits 1.6 ATR BELOW the model entry with RSI 44.2 and a 12wk of 45.19 against a 41.95 close; the conviction trail -> is unstable. Ex-div 88c on 2026-08-17 per sg_horizon.json - the largest certain move in the window - which will mark it down further mechanically. Re-arm on a printed BUY with price back at or above the model entry.

Outcome & track record

Accuracy at the time of this record.

18 Graded decisions Past recommendations old enough to score against what actually happened (target hit / stopped out / closed). This is the evidence base — the bigger the number, the more history behind the calls. Click to inspect every one. See the decisions →
0.138 1-week calibration How much of the eventual 4-week move typically shows up in the first week (0 = almost none, 1 = most of it). Use it to read the 1-week estimates: a low number means prices drift toward the target slowly, so don't over-read a soft week-1.
50 Published records How many dated end-of-day verdicts exist for this book — the length of the public track record you can browse in the Archive below.

This website is for educational purposes only and does not constitute investment advice. Always do your own research and assess your own risk tolerance before making investment decisions.