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 7 Aug 2026, 17:00:00 GMT+8

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

2 ACQUIRE, both QUEUED GTC limits expiring 2026-08-13 (O39 ADD 6,600 @29.82, repriced from the unfilled 28.82 after a record 1H lifted the name +3.31%; D05 ADD 1,500 @75.87, a half-size second tranche as conviction fades + S68 queue @24.00 WITHDRAWN on a mechanical liquidity-gate blanking + NO DISPOSE (J36 trim spent under its own 08-06 escalation clause; G07 armed but not re-fired -> trail 20.80->20.95; S58 stop 4.50->4.56).

Recommendations

2 to acquire · 0 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 Bank30.30ADD — QUEUED @29.8229.8228.5131.06 (+4.2%)33.94 (+13.8%)39.24 (+31.6%)OCBC just posted a record first half - net profit S19bn, up 13%, with total income up 11% to S0bn on all-time-high fee and wealth income, an interim dividend lifted 15% to 47 cents, and wealth assets under management at a record S$350bn. The market agreed: the shares jumped 3.3% to Son roughly double normal volume and closed near the day's high, upgrading our signal to a full breakout at the highest conviction reading this book has recorded. We are adding to a position already up 5.8%, but we will not chase the gap - the order sits as a limit 1.6% below the close, so it only fills if the shares come back to us. The one blemish is net interest income slipping 3% as rates fall; the fee engine is more than covering it, and the stock is cheap enough on a residual-income basis that the headline 'overvalued' valuation tag is not the right lens for a bank. Operational: repriced from the unfilled 08-06 GTC @28.82 to the live model entry per the Step 7 provenance rule (the name never traded below 29.63 today); SGO-5 sets limit not buy-stop on EDATR -0.73; L6 satisfied by the sub-close limit into a same-day earnings print; stop released from its deliberate 27.73 hold-through freeze to the model 28.51 now the Q2 print is absorbed; SGO-3 makes Quality_Pass=False and the 25.10 DCF anchor non-binding on a financial; f=0.30 on the 1wk per L5/SGO-2 (calib_1w 0.141, only 8 graded buys); expires 2026-08-13 (08-11/12/13; 08-10 National Day excluded); if the 08-11 reopen gaps >1.5% reprice per L8. · news
D05DBS Group Holdings76.33ADD — QUEUED @75.8775.8773.2878.32 (+3.2%)84.04 (+10.8%)94.85 (+25.0%)DBS extended Wednesday's record-quarter breakout for a second day, rising 1.7% to Sand closing at the session high, comfortably above every moving average we track and with a twelve-week view 25% higher. We are adding a second, deliberately smaller tranche - roughly half the size of yesterday's - because conviction faded from even as the price rose, and a rising price on a cooling signal is a reason to step in more carefully, not more boldly. The order is a limit at S, just under the close, so we buy a pullback rather than the high. Note the shares go ex-dividend for the Sdeclared with the results sometime between 13 and 17 August: expect a roughly 1% drop that is a payout, not a problem, and which may well be what fills this order. Operational: EDATR -0.35 plus a close at the high trips the ACT-NOW chase bar so this queues rather than buys at market (contrast the 08-06 at-market card at EDATR -0.01); RSI 73.42 is under 75 but the tightest in this book - one more up-session likely suppresses the reprice per SGO-5. CRITICAL - the row's PROFIT_ARMED flag is a FALSE POSITIVE from the executor write-lag (SGO-4): the scan read the pre-fill Avg_Cost 72.42 while the true blended basis after this morning's 2,500 @ 75.31 fill is 73.9572, giving Gain_ATR 1.83 (<3.0) and T12_Progress 80.47 (<90) - not armed, no ADR-0012 path. G3 independently fails any trim (+25% 12wk on a bullish breakout); G2 suppresses the valuation-amplify (SGO-3 financial, DCF anchor 52.03 < price is meaningless). Stop raised 72.50 -> 73.28 (model). Adj conviction 70 clears the 65 floor by 5 pts, the thinnest margin acted on since inception. f=0.30 per L5/SGO-2. Today's domain-restricted search returned only a stale 08-05 quote (73.55/-1.28%), discarded per L4 in favour of the settled 76.33 scan close.
J36Jardine Matheson63.70HOLD63.7061.76n/an/a58.36 (-8.4%)We halved this position yesterday and that is enough for now. The exit was executed this morning at S, slightly better than the price we planned on, and the remaining half is being left alone with a stop at S. Today the shares actually firmed 0.5% and momentum improved, so cutting again on evidence that is marginally better than yesterday's would be churn, not discipline. The stock is also the cheapest thing we own on an intrinsic basis and goes ex-dividend on 20 August, both of which argue for patience with what is left. But the trend is still broken - the price sits below its 20-, 50- and 200-day averages and our twelve-week view remains 8% below the current price - so this is a position on notice, not a position we like. Operational: the 08-06 escalation clause governs and is carried forward per Step 1.2 - a decisive close below 61.76 takes all in full, otherwise the trim is done and is NOT re-proposed (L3 anti-dribble). Stop 61.76 never approached (day's low 62.55). PROFIT_ARMED is again a FALSE POSITIVE, re-verified by hand: +0.24% on a 63.55 cost, Gain_ATR 0.078, and T12_Progress 109.15 is computed across an inverted span because Target_12Week < Avg_Cost - so ADR-0012 ticks (c) and (d) open no profit-take, there being no profit. The live sell basis is the CLAUDE.md section 9 stable-degradation one (cv0, sub-EMA200, negative 12wk), already acted on once at the correct size; section 9(b) UNDERVALUED argues the trim DOWN a tier. · news
G07Great Eastern21.92HOLD21.9220.95n/an/a31.24 (+42.5%)Great Eastern is our best position, up 20%, and we are protecting it by raising the sell-stop from Sto Srather than taking profit. The distinction matters: a position can be sitting on a large gain without anything having gone wrong, and nothing has - the twelve-week view is still 42% above the current price and no fresh warning printed today. We already trimmed 30% on Tuesday when the signal did deteriorate; that reason has been used and does not entitle us to sell again while conditions are unchanged. What is true is that the shares are technically stretched (RSI 81) on very thin volume, so the trailing stop is doing the risk work here, deliberately. Operational: genuinely armed (Gain_ATR 5.41 on a real 18.27 cost, unlike J36's artifact). Full ADR-0012 tick audit - (a) no other Exit_Warning code, PROFIT_ARMED stands alone; (b) conviction, uncomputable, no -20 collapse; (c) Target_12Week 31.24 vs 1.02 x 21.92 = 22.36, forward view ALIVE at +42.5%; (d) the 4x-NO-TRADE tick fired 08-05 and was executed 08-06 ( @ 21.98) - a tick fires once per instance and nothing fresh has printed. Armed-without-a-tick = mandatory trail-raise, never a trim. New stop = 2.0x ATR chandelier off the 22.30 peak close: 22.30 - 2 x 0.6748 = 20.95, a genuine raise on the 20.80 carried from 08-06. SGO-3: no valuation amplify on a financial. SGO-4: the Consensus-conflict NO TRADE is a genuine signal read, not a mechanical liquidity blanking.
S58SATS4.82HOLD4.704.56n/a5.09 (+8.3%)6.15 (+30.9%)SATS is holding steady at S, essentially flat on our Sentry from two days ago, and we are simply tightening the protective stop from Sto S. The signal came back to life today after an internal filter silenced it yesterday, and it reads the same as when we bought: a healthy pullback setup with the price well above all its moving averages and a twelve-week view 28% higher. No news, no scheduled events in the next fortnight, nothing to do but hold with a slightly tighter leash. Operational: re-evaluable again after yesterday's mechanical liquidity-gate blanking (SGO-4 - that was 'not evaluated', not deterioration). HOLD cv45 with a live entry/stop/targets; position -0.62%, Gain_ATR -0.26, not armed, no Exit_Warning. Adopt the printed model stop 4.56 (raised from the manual 4.50). Above EMA20 4.68 / EMA50 4.40 / EMA200 3.85. Valuation FAIR_VALUE with MoS -2.44 carries the known SG banding miscalibration (learnings note B) - read cautiously, and it originates nothing either way.
C07Jardine C&C28.29WATCH28.0027.19n/a30.17 (+7.8%)25.89 (-7.5%)Jardine Cycle & Carriage is by a distance the cheapest quality name in this universe - our intrinsic estimate is more than double the Sshare price and it passes every quality screen - and we are still not buying it, for the fourth session running. Cheapness is not a trigger. The price is below its 50-day average, momentum reads outright bearish, and the model's own twelve-week view is 8% BELOW today's price. We need the chart to turn before the valuation is worth anything to us. Operational: adj conviction 64 = raw 54 + val_adj +10 (the maximum, UNDERVALUED MoS +0.612 with Quality_Pass True), which misses the 65 floor by ONE point - and independently, WATCH is not an actionable label so C07 is not in the buy pool at all. This is OTR-2 in its purest form (valuation alone moves nothing). Not a proposed trade; ledgered so the counterfactual grader prices what standing aside costs or saves.
U11United Overseas Bank43.30WATCH43.5042.52n/a46.12 (+6.0%)48.68 (+11.9%)UOB reported alongside OCBC today and the market shrugged - the shares closed up just 0.3% at Swhile OCBC jumped 3.3%. Our buy signal, which appeared yesterday, has already faded back to a watch. We are content to stay out: a trigger that lasts one session and disappears before it can be acted on is precisely what our no-chase rule exists to filter out. The twelve-week view is still 12% higher, so the name stays on the list. Operational: adj conviction 50 (raw 53, val_adj -3) is well under the 65 floor; the trail BUY 71 (08-06) -> WATCH 53 (08-07) is the decay. Close 43.30 off a 43.55 high on 6.54m shares, sitting on EMA20 43.01. SGO-3: Quality_Pass=False and the broken 0.29 DCF anchor are non-binding on a financial and are not why this is a pass. Not a proposed trade; ledgered for counterfactual grading.
9CICapitaLand Investment2.69WATCH2.69n/an/a2.83 (+5.2%)CapitaLand Investment gave back 2.2% today to Sand our signal has been dead for three sessions since a brief strong-buy print on Monday. The setup we liked has gone, the shares look expensive against what we think the business is worth, and first-half results land on 13 August - so there is a scheduled event to wait for rather than a trade to force. No position, no action. Operational: NO TRADE cv0 for a third consecutive session, NoTrade_Reason 'Consensus conflict + low conviction'; Pillar_Consensus Conflicted, Momentum Bearish despite a Bullish trend read. RSI cooled 76.9 -> 63.7. val_adj -9 and Quality_Pass=False (a non-financial, so the gate WOULD bind on a new entry here - unlike the banks). 1H results 2026-08-13, band +-4.0%, stance hold-through. Not a proposed trade; ledgered for counterfactual grading.

Outcome & track record

Accuracy at the time of this record.

15 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.141 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.