Tokyo-Fix Gotobi Long — 5m
Status: Paper‑trade candidate · Library entry #7 · Validated 2026‑10‑09 Instruments: USD/JPY, EUR/JPY · Timeframe: 5m · Direction: long only Frequency: ~60 trades/yr per pair · Needs the fill at the minute — an order working at 03:00 and 09:55 Tokyo, not an alert acted on later
Why this one is different
Every other sub‑daily idea the library tested read the market's own state — price shape, volume, sessions, funding, open interest — and the best of them, entry #5, clears the bar in one window and not the next. This one reads none of that. It reads who must buy dollars, and when:
- Japanese companies settle invoices on gotobi days — the 5th, 10th, 15th, 20th, 25th and 30th of the month, moved back to the previous business day over weekends and holidays.
- Importers buy the dollars they owe at the rate their bank fixes at 09:55 Tokyo time, and the banks buy those dollars in the market ahead of the fix. Ito & Yamada (Journal of International Economics, 2017) document that the client flow at the Tokyo fix is one‑sided and predictable.
- So on gotobi mornings USD/JPY tends to rise into 09:55. The trade is simply to be long for it.
The flow exists because of a business custom, not a market regime — which is the claim the research tested, and the reason it is the first sub‑daily strategy to clear all six checks in both windows. It is also small, and it has weakened since it was published. Both are below.
The setup (compilable spec)
Market: forex, USD/JPY or EUR/JPY, 5‑minute bars. Longs only. Entry: the bar that closes at 03:00 Tokyo (18:00 UTC the evening before) on a gotobi day, Tuesday to Friday Tokyo — a Monday 03:00 entry falls before the FX week opens. Exit: the bar that closes at 09:55 Tokyo (00:55 UTC) — the fix. No stop, no target. Costs: 0.006%/side (about half a pip to a pip on USD/JPY), stressed at 0.012%/side.
In the app's strategy language: gotobi_day == 1 AND hour_utc ≥ 17.91 AND hour_utc < 18
AND day_of_week ≤ 4; exit hour_utc ≥ 0.83 AND hour_utc < 1. Tokyo keeps no daylight
saving, so the UTC times never move. The gotobi_day calendar is built in, with Japan's
national holidays (Cabinet Office list) through 2027.
These are the published paper's times (Bessho, Sugimoto & Suzuki, arXiv 2301.13204, 2023), frozen before the run. Nothing was tuned.
Validation evidence — two windows, three pairs
Data note. 5‑minute bid candles: Dukascopy for 2010–11, FXCM's public M1 archive from 2012 (on USD/JPY the two agree to a median 0.1 pip where both exist). FXCM's archive skips some weeks — fourteen in mid‑2026 among them — so 27 of the 1,028 gotobi days have no data and are left out; the research log lists them. Returns are sums of per‑trade returns, unlevered. Rollover is not modelled: a long USD/JPY held through the 17:00 New York roll earned carry through most of 2018–26, so leaving it out is conservative.
| Window | Trades | Win % | PF | Return | Net pips / trade | Strip‑best | Max DD | Beats random days? |
|---|---|---|---|---|---|---|---|---|
| USD/JPY 2010–17 | 490 | 65.1 | 2.74 | +41.7% | 8.1 | ✅ +38.8% | 1.1 | 100th pct ✅ |
| USD/JPY 2018 → Sep 2026 | 511 | 61.3 | 1.36 | +11.1% | 2.5 | ✅ +10.1% | 3.6 | 100th pct ✅ |
| EUR/JPY 2012–17 | 367 | 62.1 | 1.97 | +19.7% | 6.6 | ✅ +18.7% | 1.2 | 100th pct ✅ |
| EUR/JPY 2018 → Sep 2026 | 511 | 61.6 | 1.61 | +16.3% | 4.4 | ✅ +14.8% | 1.7 | 100th pct ✅ |
| AUD/JPY 2010–17 / 2018→ (not shipped) | 490 / 511 | 55.3 / 54.0 | 1.50 / 1.15 | +25.0% / +7.3% | 4.3 / 1.3 | ✅ / ✅ | 3.3 / 3.9 | 100th / 98th |
- Two windows, three pairs: ✅ every cell positive, strip‑best‑positive, drawdowns of a few points. AUD/JPY passes too but fails strip‑best at the stressed cost in 2018–26, and the pre‑registered rule only lets a cross count if it survives that — so it is not on the list.
- Cost stress (0.012%/side): USD/JPY +35.8% / +5.0%, EUR/JPY +15.3% / +10.2% — both pass.
- Engine check: recomputed straight from the bars with no backtest engine, USD/JPY gives 488 trades / +41.5% and 507 / +10.3% — the difference is six trades held past 09:55 because their exit bar is missing from the data.
The null test — the day is what pays
The vetting bar's sixth check, built for a calendar strategy: keep the pair, the clock times, the exit and the costs, and replace the gotobi days with the same number of random Tuesday–Friday business days, 400 times. If gotobi days were nothing special, the real result would land mid‑distribution.
| Real | Random days, median | Random days, 95th pct | Percentile | |
|---|---|---|---|---|
| USD/JPY 2010–17 | +41.7% | +14.2% | +21.7% | 100th |
| USD/JPY 2018–26 | +11.1% | −1.0% | +5.0% | 100th |
| EUR/JPY 2012–17 | +19.7% | +7.8% | +13.7% | 100th |
| EUR/JPY 2018–26 | +16.3% | +3.8% | +9.9% | 100th |
The same window on every eligible day tells the rest: in 2010–17 the Tokyo morning itself drifted the yen weaker (+46.3% over 1,593 days on USD/JPY, 2.6 pips a day) and gotobi days carried three times the move (8.1 pips). From 2018 that all‑days drift is gone (−4.4%, gotobi days included) and the gotobi days alone still pay.
Execution is the whole game
| USD/JPY | On time | Both fills 5 minutes late |
|---|---|---|
| 2010–17 | +41.7% (PF 2.74) | +33.1% (PF 2.25) |
| 2018–26 | +11.1% (PF 1.36), 2.5 pips/trade | +2.7% (PF 1.08), 0.25 pips/trade |
It survives late fills, so it passed — but in the recent window, five minutes late leaves a quarter of a pip a trade. Use a broker order that works at the time — a scheduled or resting order placed in advance — or skip the trade. An alert you see after the fact is not this strategy. Neighbouring entry times (01:00 and 05:00 Tokyo) also pass, so the entry minute is not a knife‑edge — but the late‑fill test moved both ends at once, so treat both as time‑critical.
The recent record — read this before trading
Sum of trade returns by calendar year, at the registered spec:
| 2018 | 2019 | 2020 | 2021 | 2022 | 2023 | 2024 | 2025 | 2026* | |
|---|---|---|---|---|---|---|---|---|---|
| USD/JPY | +3.5% | +1.6% | +2.1% | +2.3% | +3.0% | −1.1% | −0.7% | −0.4% | +0.9% |
| EUR/JPY | +2.8% | +2.7% | +2.9% | +2.0% | +2.7% | −0.2% | −0.3% | +2.5% | +1.2% |
*To September, with a May–August data gap. Last twelve months (Oct 2025 → Sep 2026, 46 trades each): USD/JPY +1.8% (PF 1.85), EUR/JPY +2.2% (PF 3.18).
USD/JPY made money in every year from 2010 to 2022, then lost a little in each of 2023–25 — the three years after the gotobi paper was published. That is what a publicised calendar trade being front‑run looks like, and it is the main risk here. It has not collapsed: the losses were 0.4–1.1% a year, EUR/JPY held up better, and both have been positive over the last twelve months. Paper‑trade it first, and treat another losing year on USD/JPY as the signal it is.
Guardrails (read before trading)
- USD/JPY and EUR/JPY only. AUD/JPY fails at the stressed cost; other pairs were not tested.
- Fills at the minute, or no trade. See above — late fills take the recent edge to almost nothing. The entry is at 03:00 Tokyo, 18:00 UTC: that is the middle of the night somewhere.
- Costs ≤ ~1 pip a side. The edge is a few pips a trade; check your spread at 03:00 Tokyo, when it can be wider than in London or New York hours.
- Small and unlevered. About 2.5 net pips a trade on USD/JPY over 2018–26, 1.5 since 2021. The returns above are per‑trade sums with no leverage — size for a small, steady edge, not a big one.
- No stop. The trade lasts seven hours; the worst single trades lost about 1% (USD/JPY's worst: −1.04%, entered 1 May 2024). A surprise in the Tokyo morning — a Japanese intervention, say — would hit it in full. Size for that.
- Watch the decay. Three losing years on USD/JPY after publication. If it keeps losing, believe it.
- Holidays. The built‑in Japanese calendar runs through 2027 and needs the Cabinet Office's next list each year; past it, holidays are not known and a settlement day can be a day late.
How it was found
Sweep #13 — pre‑registered on 2026‑10‑08 and committed before the run —
tested the paper's two legs at five minutes: G1, long into the fix (this entry), and G2,
short the give‑back after it. G1 cleared every gate on all three pairs; G2 made money on USD/JPY
but not distinguishably more than on random days (79th percentile in 2010–17), and died at the
null. The ship condition was that
the strategy language could express it exactly: the gotobi_day atom was built for it, and a
backtest of this entry's config reproduces the research harness trade for trade on every
pair and window (scripts/research/sweep13-parity.ts).
