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

Singapore — End-of-Day Verdict

27th cycle: OCBC's record 1H lifts O39 to STRONG BUY - ADD cv90 at BuyRank #1 and its real-cost profit-take is downgraded by G1 to a trail-raise; B61's armed exit FIRES on the 2nd close below the rebased stop, freeing the the book has lacked for a month; and the holdings file is now static for **17 consecutive cycles** with FOUR undecided cards

Recommendations

2 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 Bank30.30ADD — QUEUED @29.8229.8228.5130.26 (+1.5%)29.92 (+0.3%)31.03 (+4.1%)OCBC just posted a record first half - net profit S19bn (+13% YoY), interim dividend lifted 15% to 47 cents, and non-interest income up 36% to a record S51bn - and the shares broke to a new high on triple-normal volume, giving the strongest buy signal this holding has printed (conviction 90, top-ranked in the book). We are adding, but only on a pullback: the stock closed 1.6% above the level our model wants to pay and RSI is hot at 73, so we queue a limit at Srather than chase the earnings pop. Valuation is mildly rich on a residual-income basis, which trims the case slightly but does not block an add to a position we already own. A fill before the mid-August ex-dividend also captures the 47-cent interim. OPS: GTC limit @29.82, entry band 29.66-29.98 (+/-0.25 ATR), expires 2026-08-13. Model portion 114.38% x 1,000 = at the 100-lot; size modulator 1.0x (MoS -0.61). Quality gate False does not block - held ADD, not a new entry. Risk SL6 + no-chase both bite (eD -0.73, RSI 72.6, same-day post-earnings gap). SG-6 exception explicitly checked and FAILS on all three limbs (cv90 < 95, extended, RSI-hot) -> strict queue. Stop raised 28.28 -> 28.51. Separately, the ADR-0012 profit-take armed (real Avg_Cost 25.93, Gain_ATR 6.69) and fired on tick (a) RSI_DIV, but G1-softened downgrades a Tier-1 code on a fresh BreakoutUp cv90 to a trail-raise - no trim. Cancel this card only if the S58 reconcile shows no free cash AND B61 does not execute. · news
D05DBS Group Holdings76.33ADD — QUEUED @75.8775.8773.2875.92 (+0.1%)75.65 (-0.3%)78.90 (+4.0%)DBS is following through on yesterday's record quarter - net profit up 9% to S08bn on all-time-high total income of S09bn, with full-year guidance raised - and the shares closed at the day's high, up another 1.7%. The breakout signal is intact but has cooled from very strong to solid, and the stock is now sitting above where our model wants to buy, so we queue a limit at Sinstead of buying at market. Be clear-eyed about the payoff: the model sees the post-results move as fully priced for the next month and puts essentially all of the expected return in the 12-week leg, helped by the mid-August dividend a pre-ex fill would capture. OPS: reprices - does NOT republish - the unfilled 08-06 card (stale limit 75.07 -> live entry 75.87) per the provenance rule. GTC limit, entry band 75.55-76.19, expires 2026-08-13. Model portion is unfundable; is set by residual cash after O39 (ranked first at adj 87): S - S = S / 75.87 = at the lot. Risk SStop raised 72.50 -> 73.28. RSI_DIV + PROFIT_ARMED print but the arm is VOID under SG-7 (no Avg_Cost). CONTINGENT: cancel this card if the unreconciled 08-05 S58 buy-stop (4,900 x 4.85 = S) is confirmed filled - the book would then have ~Sfree cash. · news
B61BT Sembawang Estates4.54SELL 30%4.544.624.53 (-0.2%)4.53 (-0.2%)4.58 (+0.9%)Our largest holding has now closed below its stop-loss line for a second straight session and has failed to recover the 22-cent dividend it paid on 5 August, while the model's forward view has gone flat - one- and four-week estimates are slightly negative and the twelve-week view has faded to under 1%. That combination triggers the exit condition we armed yesterday. We are selling 30%, not the whole position: the shares still screen as undervalued on intrinsic worth and sit above their long-term trend line, so this is a first tranche that cuts the book's biggest concentration and frees the cash we have lacked for a month, not a verdict that the name is broken. OPS: market order at the open, ~S, (30% x 26,300 = -lot); residual = STicket is 6.3% of ADV - single-session workable. Basis is L2 + the SG book note: NoTrade cv0 label admitted on stop-break + flat 12wk, not on a sell label. SG-2's second leg is FLAT not decisive (Est_12W +0.9%), which is exactly why this is 30% and not an exit. Valuation UNDERVALUED (+0.216) argues the trim DOWN one tier - 30% is already the minimum, so no escalation to 50%. PROFIT_ARMED on this row is VOID under SG-7 (no Avg_Cost). Sdividend already ex on 08-05; Sreceivable unaffected. RE-ARM tranche 2 on a close below 4.50 or Est_12W turning negative; a reclaim of 4.62 disarms. · news
HMNCapitaLand Ascott Trust0.86SELL ALL0.860.880.86 (+0.0%)0.86 (+0.0%)0.88 (+2.3%)This small trust has now closed below its stop for a fourth straight session and has broken below all three of its short-, medium- and long-term trend lines, with the model pointing to a further 8% downside. We recommended trimming it yesterday and the trade was not executed, so we are escalating to a clean exit of the whole holding at the open rather than leaving an unsellable stub behind. The dollars are trivial - the entire position is about S - so this is housekeeping and discipline rather than a decision. OPS: market order, full (sweeps the 300-sh residual the 08-06 80% card would have left - _state.json flagged it as a de-minimis stub to sweep with the next disposal, and this is it). SG-1 escalation at cycle 2: unconditional market order, no limit. Label DEGRADED this session (STRONG SELL - REDUCE cv78 -> AVOID cv47), which is why the card rests on the stop-break + EMA200 break, not the label (SG-2/SG-5: SG sell labels fade). Valuation MoS -0.81 = no tier change (amplify needs <= -3). PROFIT_ARMED VOID under SG-7.
S68Singapore Exchange24.51HOLD23.5624.5524.3924.69SGX delivered a genuinely strong full year - revenue up 13.9% to S48bn, adjusted earnings per share up 24.6%, daily traded value up 35% to an 18-year high, and 21 new listings versus six a year earlier - but the market faded it: the shares ran to Sintraday and settled at S, 2.4% off the high. We had queued a conditional add pending these numbers; the signal collapsed rather than re-armed, so we hold what we own and add nothing. OPS: the 08-06 deferral required an 08-07 post-print close reprinting a non-extended PullbackBuy_VWAP. It did not - STRONG BUY - ADD cv81 -> NO TRADE cv0 on 'Liquidity gate failed'. ADD RE-ARM FAILS. Stop held at 23.56. RSI_DIV + PROFIT_ARMED print; arm VOID under SG-7. See systemic finding 3 - the liquidity gate appears to misfire on high-volume event days (3.59M shares) and cost this name a legitimate evaluation. · news
C07Jardine Cycle & Carriage28.29HOLD28.2926.38n/an/an/aThe book's only genuinely cheap quality name - it screens undervalued on intrinsic worth and passes the quality screen, the only holding to do both - and it is showing the pullback-entry pattern that has historically been our most reliable buy setup. It falls one point short of our action threshold, so we hold rather than add, and watch for a slightly stronger print. OPS: NEAR-MISS. cv54 + val_adj +10 (UNDERVALUED, MoS +0.616, Quality_Pass True) = adj 64 vs the 65 floor. eD -0.44. Re-evaluate on a cv>=56 reprint, which would clear the floor unaided. Held (S), stop 26.38.
U11United Overseas Bank43.30HOLD43.3042.15n/an/an/aUOB reported second-quarter results today and the shares are sitting in the pullback zone we prefer to buy - not extended, unlike the other two banks - but the signal is only a hold, not a buy, and conviction is well short of what we require to commit cash. We hold the position and keep the trailing stop where it is. OPS: eD +0.25 - genuinely non-extended, the L1-favoured shape - but the label is HOLD (not in the buy pool) and cv53 is 12 points under the 65 floor. Trail 42.15 stands. Q2 results per the horizon file; no fresh headline surfaced in the bounded search.
J69UFrasers Centrepoint Trust2.21HOLD2.212.172.21 (+0.0%)2.21 (+0.0%)2.26 (+2.3%)The model is flagging this REIT as a sell again, but it is still trading above the stop level we set and its twelve-week outlook remains positive, so the case does not hold up. This particular sell pattern has been wrong roughly two-thirds of the time in this book, and we require a genuine stop break before acting on it. No action. OPS: SG-2 FAILS for the 7th time - close 2.21 is ABOVE the recorded 2.17 stop and Est_12W 2.26 is +2.3%, positive. RallySell_BearTrend|sell carries the ACTIONABLE -3 haircut (n=9, hit_1w.333) -> adj 46. Loud label, no basis. Same adjudication as N2IU (adj 38, close 1.28 vs stop 1.27).

Outcome & track record

Accuracy at the time of this record.

104 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.229 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.