Foreign Flow Watch: The Retail Bid Fell 61% — Week of October 12, 2026

Foreigners sold $7.97bn of Korean stock over five sessions — $1.59bn a session, almost exactly the pace they sold at the week before. The KOSPI fell 14.46% instead of 5.39%. The difference is not on the selling side. It is on the buying side: retail’s net buying per session fell 61%, and the corporate bid that has carried four of our issues is now 99.1% and 94.7% spent.

This is the fourteenth issue of this series. Every figure below comes from exchange-published daily net quantities for 2,541 KOSPI and KOSDAQ listings, valued at settled closes, with one FX rate across the window. The universe excludes ETFs and preferred lines. The window is 12–16 October 2026, five settled sessions, and it begins at the session immediately after our last issue ended.

What “this week” means — five sessions, and why we did not cut it to three

Our previous issue covered three sessions and we said afterwards that stopping the window early cost readers the week’s shape. This issue covers every session since.

Our last issue closed on 8 October. The next trading day was 12 October, because 9 October was Hangul Day and the 10th and 11th were the weekend. So five sessions — 12, 13, 14, 15 and 16 October — is not a choice of convenience. It is every settled session between the two issues, with no gap. We report per-session figures precisely so that a three-session week and a five-session week stay comparable; the alternative, trimming the window to match the previous count, would have left 12 October in no issue at all. That is what happened to 2 October between issues 12 and 13, and we had to go back and repair it.

The comparison window throughout this issue is 6–8 October 2026, the three sessions our last issue covered. Where we compare, we compare per session.

Foreigners sold at the same pace

Per session, foreign net selling barely moved: −$1.56bn to −$1.59bn. What changed is who was on the other side.

Net buying This window, total This window, per session 6–8 Oct, per session Change per session
Foreign −$7.97bn −$1.59bn −$1.56bn −$0.03bn
Institutions +$2.30bn +$0.46bn −$0.62bn +$1.08bn
Retail +$3.10bn +$0.62bn +$1.59bn −$0.97bn
Residual (corporate) +$2.57bn +$0.51bn +$0.59bn −$0.08bn

Both rows: exchange-published daily net quantities valued at that session’s settled close, summed over the window, at ₩1,340.95/$1 (15 October 2026, FinanceDataReader). This window covers 2,541 listings and the comparison window 2,543. The universe is the exchange’s active common-stock coverage list — ETFs and preferred lines excluded — intersected with sessions that have both a flow row and a settled price.

Read the right-hand column as an accounting identity, not a causal story. The four categories sum to zero by construction, so a $0.97bn fall in retail’s per-session bid has to appear somewhere else. It appeared in institutions, which swung $1.08bn from seller to buyer. Those two nearly cancel. Foreign selling and the corporate bid were both close to unchanged. And yet the index fell 2.7 times as far as it did the week before. We are not claiming the flow table explains that; we are pointing out that the flows at this level of aggregation look remarkably similar across two weeks whose price outcomes were not similar at all.

Who stopped buying, and when?

Retail stayed a net buyer every session but the last two, and its single worst session was the index’s best one.

Session Foreign Institutions Retail Residual KOSPI
12 Oct −₩1.96tn −₩0.35tn +₩1.66tn +₩0.65tn −3.65%
13 Oct −₩4.21tn +₩1.66tn +₩1.97tn +₩0.57tn −5.46%
14 Oct −₩1.28tn +₩0.62tn −₩0.07tn +₩0.78tn −0.44%
15 Oct −₩3.41tn +₩1.54tn +₩1.20tn +₩0.67tn −7.57%
16 Oct +₩0.17tn −₩0.39tn −₩0.61tn +₩0.83tn +2.05%

Two things in this table are worth more than the weekly totals.

First, the residual never wavered. Through a week in which the index lost 14.46%, the corporate category bought between ₩0.57tn and ₩0.83tn every single session, and its largest day was the last one. Whatever else was happening, that bid did not flinch.

Second, foreigners turned net buyers on 16 October, the one session the index rose (+₩0.17tn, +2.05%). Retail was a net seller that day. One session is not a turn, and we will not call it one.

Did the buyback end?

Samsung’s is effectively over — 99.1% spent, and its last five days ran at 6% of its own average. SK hynix is at 94.7% with roughly two sessions of budget left.

Programme Spent Daily average Last 5 days Our exhaustion estimate Disclosed end
Samsung Electronics 99.1%
₩14.86tn / ₩15.0tn
₩412.9bn ₩24.2bn
6% of average
~19 Oct 2026 21 Nov 2026
SK hynix 94.7%
₩37.88tn / ₩40.0tn
₩996.8bn ₩631.4bn
63% of average
~20 Oct 2026 19 Nov 2026

Figures as of the 16 October session, from exchange investor-category data. Samsung’s authorisation funds employee share compensation and is not a cancellation — those shares return to the market later. SK hynix’s is a cancellation of 3.3% of shares outstanding.

There is something counter-intuitive here that we did not expect and want to state plainly. Both stocks fell hard this window — Samsung ₩262,000 to ₩215,500 (−17.75%), SK hynix ₩1,681,000 to ₩1,272,000 (−24.33%), measured from the 8 October settled close to the 16th. A programme with a fixed won budget buys more shares when the price falls, so a price collapse should pull the exhaustion date forward. It did not. Both dates moved out, because the constraint that bound was not the price — it was how much the companies chose to spend per day. Samsung’s spending did not slow gently; it stopped.

Our per-session residual for the two names moved the same way the exchange data did: Samsung from $0.07bn to $0.02bn, SK hynix from $0.51bn to $0.46bn. SK hynix alone is $2.32bn of this window’s $2.57bn residual — 90.3% — and the two companies together account for 93.8%. The residual proxy is still, overwhelmingly, these two programmes.

Was this a semiconductor exit?

81.6% of the foreign selling was two stocks. SK hynix −$3.93bn and Samsung Electronics −$2.57bn, out of −$7.97bn. Behind them: Samsung Electro-Mechanics −$0.39bn, Samsung SDI −$0.25bn, SK Square −$0.23bn.

That is the same concentration we have reported for four issues, and it is the reason we keep saying the index number and the flow number are not measuring the same thing. A reader who owns neither of those two stocks did not experience this week as a foreign exodus from their holdings.

Scorecard

Our last issue listed five things that would show it was wrong, and three dated predictions were live from earlier pieces. Here is where each one stands. We print the ones that went against us in the same table as the ones that did not.

What we said Result
“We will re-check the 8 October quantities on 12 October and print the difference” They did not change. Re-running that window reproduces what we published, to the rounding: foreign −₩6.29tn, institutions −₩2.48tn, retail +₩6.39tn, residual +₩2.38tn — the same −$4.70bn, −$1.85bn, +$4.77bn and +$1.78bn that issue printed. The 8 October quantities are intact. Our first attempt at this re-check said otherwise, and it was our error, not the exchange’s — see below.
“If SK hynix’s residual does not fall as its programme runs out, the buyback proxy is mostly something else” It fell, but less than the programme did. Residual per session −10% ($0.51bn to $0.46bn) while the exchange-measured spend ran at 63% of its own average, a −37% move. Same direction, different magnitude. The proxy survives this test; it is not as tight as four issues of agreement made it look.
“If Samsung’s residual rises again after 12 October, the authorisation was not the constraint” It did not rise. $0.07bn to $0.02bn per session, against a programme now 99.1% spent. The constraint reading holds.
“If retail’s net buying reverses next week while the KOSPI keeps falling, the ‘retail absorbed it’ reading was a one-week artefact” Not proven — and we are not going to round it in our favour. That condition has two halves. The KOSPI did keep falling (−14.46%). But retail did not reverse: it was a net buyer of $3.10bn across the window. What fell was the intensity, −61% per session. A 61% drop is not a reversal, and the test as we wrote it is unresolved.
“If an execution report shows either programme more than 2% away from our estimate, the residual method is weaker than it looks” Still open. Neither company has filed an execution-status report. Corrected 24 October 2026: this was wrong when published. Samsung Electronics had filed its execution report on 12 October 2026 (DART rcpNo 20261012000421), six days before this issue appeared. Its last purchase was on 6 October, so the “~19 October” exhaustion estimate in the table above was also wrong, by eight sessions. The filed total of ₩15.0tn is 0.93% above our ₩14.86tn estimate, inside the 2% test. SK hynix had not filed as of 24 October. Every flow figure in this issue was re-checked and is unchanged. Details in issue #15; see our corrections policy. Disclosure windows close 19 November (SK hynix) and 21 November (Samsung). Four issues of internal agreement is self-consistency, not verification; this filing is the only outside check we have.
6 Oct: “SK hynix exhausted around 15 October”, revised in our last issue to ~16 October Missed, twice, in the same direction. At the 16 October close the programme was 94.7% spent, not finished, and our estimate is now ~20 October. Both misses were late calls caused by assuming the recent spending pace would continue; it decelerated instead.
26 Sep: “SK hynix exhausts around 15 October” (progress 79.3%, eight sessions left) Wrong by about five trading days, same cause as the row above. That estimate had already been corrected once, from 14 to 15 October, to account for two autumn holidays.
Earlier: “at this pace both are spent in October, not November” This one looks right. Our current estimates are 19 and 20 October, roughly a month before the disclosed end dates of 21 and 19 November. The direction of that call — that the disclosed windows badly overstated how long the support would last — has held even though our specific dates slipped.

And our own re-check was wrong until the gate caught it

The promise above was the one we were most confident about keeping, so it is worth saying exactly how we nearly broke it.

We wrote a script to regenerate a past window on demand. It built its stock universe from the rows available — every listing with both a flow record and a settled price in the window — which quietly admits preferred lines. Samsung’s preferred line (005935) was in it. The resulting stock count came out at 2,543, identical to the number we published in the last issue, so we treated the match as proof that the method was right. The money did not match: foreign came out −$4.73bn against the −$4.70bn we had printed, and the residual +$1.87bn against +$1.78bn. We read that gap as the exchange having reclassified foreign and institutional quantities after publication, and we were ready to print it as a confirmed revision.

Two mistakes, and the second is the one worth remembering. First, we used a count as a positive control when only the values could serve as one — a count can agree by coincidence, and this one did. Second, when the values disagreed, we doubted the exchange’s data before doubting our own definition. That is the wrong order. Our figures are the ones we just changed; theirs are the ones that have been stable for four issues.

What stopped it was the pre-publication check that compares every market-wide number in a draft against the same universe we publish from. It refused the draft, printed the universe it was comparing against, and named the preferred line. Rebuilding the script on the published universe reproduced the last issue to within 0.009 across all four categories. That gate exists because this exact confusion — a discrepancy whose whole explanation was Samsung’s preferred line — cost us a correction once before.

The pattern across the three exhaustion rows is worth naming: every date we have missed, we missed by being early. We extrapolated a recent daily pace onto a remaining budget, and a company that spends less than its own average is not being forced to stop — it is choosing a pace, and that choice is not in our data.

The nuclear falsifier closed, and it could not have fired

The four-week window we opened on 13 September has expired. The falsifier did not fire — but the way we wrote it, it was close to unfireable, and that is our error, not a result.

We said this: “If the nuclear basket’s foreign flow turns net positive over both windows within four weeks while the prices hold, then ‘sold in both windows’ was a two-week artefact.” Three conditions joined by and. Here is what happened, measured at the last session before the window closed.

Company Foreign, 3 sessions Foreign, 20 sessions Price, 11 Sep to 8 Oct Price, 11 Sep to 16 Oct
Doosan Enerbility (034020) −$117.0M −$525.6M −14.10% −28.85%
KEPCO KPS (051600) +$0.1M −$9.3M −11.66% −15.31%
KEPCO E&C (052690) −$11.3M −$81.5M −19.08% −33.68%
BHI (083650) +$0.7M −$41.5M −21.64% −29.82%
Basket −$127.5M −$657.9M — —

Windows: 3 sessions = 6–8 October 2026; 20 sessions = 8 September–8 October 2026. The 20-session window differs from the one used in issue 10, so the price columns are not comparable across those issues.

Foreign flow stayed negative in both windows, so the first condition never came close. But look at the price columns: all four names fell double digits, every one of them. The “while the prices hold” clause was therefore already false. Had foreigners turned net buyers of the whole basket, the falsifier still could not have fired, because we had bolted a price condition onto a flow claim.

So the honest verdict is not “our reading survived”. It is: we wrote a test that our own claim could not fail, and the four weeks it ran produced no information about foreign positioning in this basket. A falsifier with three and-joined conditions is not a falsifier. Future falsifiers in this series will test one thing at a time.

What we cannot tell you

One FX rate across a five-session window in which the won itself moved. Named again rather than quietly carried, and it remains our weakest number.

The residual category (기타법인) contains every corporate buyer, not only companies buying their own shares. We attribute it to the two buyback programmes because they dominate it — 93.8% of this window — and that attribution would break if a third large corporate buyer appeared.

Institutional flow is a single line here. Which institutions swung $1.08bn per session from selling to buying — pension funds, asset managers, insurers, proprietary desks — is published separately and we have not broken it out in this issue. “Institutions turned buyer” is as far as this data takes us, and a reading that depends on which institution is a reading we cannot support.

Exchange investor-category data is always as of the previous session. Our buyback progress figures are as of 16 October and the two exhaustion dates are our estimates, not disclosures.

Prove this issue wrong

One condition each, testable on its own.

If SK hynix’s residual does not collapse in the next window, after a programme we say is 94.7% spent, then our spend-tracking and the residual are measuring different things. This is the cleanest test the series has had: the budget is nearly gone, so the bid has to go.

If Samsung’s residual returns to anything near ₩412.9bn a day, its programme was not the constraint and our 99.1% figure is wrong.

If retail’s net buying per session recovers above $1.00bn in the next window, then this window’s −61% was a panic-week artefact rather than exhaustion of the retail bid.

If an execution-status report puts either programme more than 2% from our estimate, the residual method is weaker than five issues of agreement suggest.

If the 12–16 October quantities move when we re-check them on 20 October, every total in this issue shifts. We have saved a snapshot of exactly what we read this time, so next issue we will be able to say which session changed — and, just as importantly, to tell a real revision apart from a change in our own method.

Update, 20 October 2026 — we re-checked, and nothing moved. Re-running the 12–16 October window against the snapshot we froze on 18 October returns the same five sessions, the same 2,541 listings, the same FX rate and the same four totals to the won: foreign −₩10,690,411,992,699, institutions +₩3,082,307,732,082, retail +₩4,158,790,726,741, residual +₩3,449,313,533,876. The per-stock figures for Samsung Electronics and SK hynix are identical, and so is the 6–8 October comparison window. The script that generates these numbers has not been edited since the snapshot was written, so this is a statement about the exchange’s data and not about our own method. Before accepting the zero we checked that the comparison can see a change at all: shortening the window by one session moves all four totals, the largest by ₩0.83tn. Every total in this issue stands as printed.

Lingo Check

Residual buyer (기타법인) — the fourth investor category in Korean exchange data. A company buying its own shares lands here rather than in a dedicated line, so it can only be recovered by subtracting the other three from zero.

Execution-status report (자기주식 취득결과보고서) — the filing a Korean company makes after a buyback window closes, stating what it actually bought. Until it lands, every figure about programme progress, including ours, is an estimate from market data.

Settled close (확정 종가) — the exchange’s confirmed closing price. Our flow table carries a provisional price for the newest session, so every figure here is valued at the settled close from the price table instead.

Next issue: Foreign Flow Watch #15 — foreign selling fell 90%, the KOSPI fell anyway (week of 19 October 2026).

Disclosure

The author holds shares in Samsung Electronics (005930) and SK hynix (000660). This article reports exchange data and filings about the market as a whole; it is not a recommendation to buy or sell any stock. Where a number is our estimate rather than a disclosed figure, the sentence containing it says so.

Flows: exchange-published daily net quantities by investor category for 2,541 KOSPI and KOSDAQ listings (ETFs and preferred lines excluded), valued at each session’s settled close and summed across 12–16 October 2026, at a single rate of ₩1,340.95/$1 (15 October 2026, FinanceDataReader). Buyback progress: same investor-category data against disclosed authorisation amounts. Index levels: exchange-published daily closes.

Share this articleXLinkedInRedditFacebook
Scroll to Top