How it works · the agentic workflow
A fully autonomous AI agent that runs every weekday at 8 AM. It pulls live market data, reprices the Japanese convertible bond universe, validates against real ratings + credit + yields, and surfaces the day's mispricings — without human intervention.
New here? Start with the Glossary for plain-English definitions of every term, then come back to read how the daily loop works.
The daily agent loop
What runs every weekday at 08:041 · Wake up
Scheduled Claude agent fires on a cron trigger. Checks if Refinitiv Workspace is reachable. If not, attempts to launch it via macOS computer-use; falls back to free sources (Yahoo Finance Japan, MoF JGB CSV) if Workspace can't be brought up.
2 · Pull universe
Refinitiv Search API enumerates currently-active JPY convertibles where IsConvertible=true and DocumentTitle matches "Convertible" (excludes structured products and Euro-yen notes). Result: ~70-90 real Japanese CBs.
3 · Pull bond terms
For each RIC: Mid/Bid/Ask, coupon, frequency, maturity, conversion price, call dates, issue size. Bid/Ask used as fallback when Mid is missing — recovers ~14 illiquid bonds per day.
4 · Pull underlyings
For each issuer, search-resolves the TSE ordinary-share RIC (e.g. 4385.T for Mercari), then pulls spot, 60-day realised vol, dividend yield, market cap, issuer credit rating.
5 · Pull JGB curve
Real yields via TR.MidYield on benchmark bonds (JP2YT=RR through JP30YT=RR). Used as the risk-free curve for discounting.
6 · Map ratings to spreads
Each issuer's rating (long-term, with short-term ratings normalised) maps to a JPY senior unsecured corporate spread table calibrated to current market levels. AAA → 25bp, BBB → 190bp, NR/WR → 430bp.
7 · Price each bond
Tsiveriotis-Fernandes binomial tree with 250+ steps for plain-vanilla bonds. The CB value splits into an equity component (discounted at risk-free) and a bond component (discounted at risk-free + credit spread). American conversion, soft calls with trigger %, puts, and discrete coupons all handled.
8 · MC for reset bonds
Bonds flagged as likely-reset (small-cap unrated zero-coupon) get re-priced with a Monte Carlo pricer (8000 paths, antithetic variates) that simulates the path-dependent downward conversion-price reset. Adds ~¥10 of value per ¥100 face for typical reset structures.
9 · Detect anomalies
Flag bonds where premium > 200% with bond price > 130 — almost certainly stale conversion price after a stock split or other corporate action. Backtest confirmed: 25%+ "cheap" signals had 0% hit rate. Now auto-suppressed from alerts.
10 · Save snapshot + alert
Day's pricing saved to snapshots/screen_YYYYMMDD_HHMM.csv. The agent diffs against yesterday's snapshot to detect new issuance and dropped illiquid bonds. Top high-confidence signals are flagged as BUY; reset-flagged are WATCH; deep-rich are AVOID.
The pricing model in one paragraph
A convertible bond is a bond plus an embedded equity option. We model the underlying stock with geometric Brownian motion, build a CRR binomial tree, and at each node decide: hold the bond, convert to equity, or exercise put. The issuer can call if conditions are met. Tsiveriotis-Fernandes (1998) splits the value into two components — equity-driven cashflows discounted at the risk-free rate, and debt-driven cashflows discounted at risk-free + credit spread — which correctly handles the asymmetric default risk between the two streams. For Japanese bonds with downward conversion-price reset clauses (path-dependent), we switch to Monte Carlo with explicit reset modelling (trigger 80% × current conversion price, floor 70% × original). Greeks come from finite differences; implied vol from bisection on the model price.
Backtest results
7,987 bond-day evaluations · Apr 2025 → Apr 2026What the backtest shows
- The signal works in the 5-15% cheap range over 60 days — 71-78% hit rate, mid-single-digit average bond returns.
- Short-term (5-day) signals are noisy — JP CBs reprice over weeks, not days. Don't day-trade this.
- Bonds flagged as 25%+ cheap are almost always data anomalies (stale conversion prices) — system now auto-detects and suppresses these.
- Backtest is pure bond P&L without delta-hedge. Real strategy P&L will differ; the hedged-backtest module (in progress) will model the equity short.
Honest limitations
Things to know before trading anything from this- Credit spread is rating-based, not issuer-specific CDS. Real spreads vary 30bp (A+) to 500bp+ (BB). The CDS module is in progress; for now BBB-rated names trade with a single 190bp default.
- Reset detection is heuristic (zero-coupon + small issue + sub-IG rating), not based on parsed prospectuses. Some flagged bonds may not have resets; some unflagged bonds do.
- JGB curve is end-of-day, not intraday. Small effect at low rate levels.
- Transaction costs and financing are not modeled. The hedged-backtest will layer in 25bp on the bond and 5bp on the stock, plus financing carry.
- Many JP CBs are illiquid. Dealer mids can sit unchanged for weeks. The system uses bid/ask fallback to recover bonds with no mid, but the underlying liquidity problem remains.
- This is a screening tool, not a trading system. Always Δ-hedge with the underlying short, watch for issuer-level news that invalidates the model, and size positions for the optionality decay (theta).