name: jp-stock-move-reason description: Use when analyzing why a Japanese stock moved sharply using Codex, without Gemini, from Yahoo Finance quote data, Yahoo 掲示板 comments, Yahoo/Kabutan/Traders news, and basic stock metrics such as current change, market cap, PER/PBR, dividend yield, and margin ratio. metadata: short-description: Analyze Japanese stock move reasons from Yahoo掲示板, news, and metrics
JP Stock Move Reason
Use this skill from the DTM repo root when the user asks why a specific Japanese stock is rising, falling, 急騰, 急落, 異動, or otherwise moving, and wants Codex to analyze it instead of Gemini.
The bundled script is safe to keep in a public repository: it uses only public web pages/APIs, does not read credentials, and does not call any LLM service. Never commit personal information, API keys, account data, private RAG files, or private research materials to GitHub.
Workflow
Public And Private Versions
If both public and private versions of this skill exist, prefer the private version for local analysis when the user permits it. The private version may use local RAG indexes and user-specific study material.
When updating the skill, keep public and private versions in sync: write public-safe, generalized lessons to the public version; keep private labels, private paths, raw notes, screenshots, account data, and personal trade context only in the private version or private RAG index.
When preparing a GitHub upload or public release, use the public version only and run the repo-level release/privacy check from the repository root at shared/references/release-and-privacy.md. Never upload private RAG folders, .ftindex files, credentials, .env, personal data, screenshots, raw PDFs/PPTs, or private strategy labels.
Read
references/experience.mdbefore analysis, but only theActive PlaybookandCompression Protocolsections unless the user explicitly asks for historical lessons. Apply those lessons when setting expectations, especially around earnings, guidance, valuation, 掲示板 sentiment, theme leadership, peer follow-through, and whether the stock is a leader, follower, defensive alternative, old-leader rebound, or noise. When the request needs a deeper or reusable sentiment framework, also usestock-sentiment-analysisand itsreferences/sentiment-framework.md.Cross-skill calls are operational. When this workflow says to use another market skill, actually load that skill's
SKILL.mdand required references if the skill is installed or available as a sibling in this repository. Do not merely mention the other skill by name in the answer.Required coordination: for Japanese stock analysis, use this skill as the evidence-gathering entry point, and add supporting skills based on clues found during analysis, not only on the user's wording. Yahoo 掲示板 itself is an evidence source, not an automatic trigger for sentiment analysis. If 掲示板/news reveals a concrete clue about theme leadership, peer follow-through, crowding, leader/follower position, defensive alternative, old-leader rebound, or risk-on/risk-off acceptance, load
stock-sentiment-analysisto test that clue. If 掲示板/news discusses Nikkei/TOPIX, JPX sectors, Nikkei futures, JGB yields, USD/JPY, BOJ/MOF policy, US/China spillover, commodities, or geopolitics, loadmacro-news-checkto verify the tape instead of accepting forum claims. If 掲示板/news or the price move points to support/resistance, failed breakout, trend damage, or catalyst acceptance/rejection, loadstock-technical-analysisto verify the chart. When the original question is directly about an index/broad tape such as Nikkei 225, TOPIX, JPX sectors, Nikkei futures, or 日经大盘, loadmacro-news-checkby default.Mandatory execution gate:
- If the answer uses 宏观 or 快讯 to explain the stock, sector, Nikkei/TOPIX, JGB yields, USD/JPY, BOJ/MOF policy, US/China spillover, commodities, or geopolitics, load
macro-news-check. Do not replace this layer with ad hoc web search. - If the answer uses 技术面 such as support/resistance, trend confirmation, failed breakout, volume-price behavior, intraday timing, or "能不能上/下", load
stock-technical-analysis. - If the answer uses 情绪面 such as theme leadership, crowding, leader/follower, defensive alternative, old-leader rebound, risk-on/risk-off, expectation gap, or 掲示板 psychology, load
stock-sentiment-analysis. - Final answers should include a compact
融合口径line when any supporting skill is used, e.g.Yahoo/Kabutan/Traders 证据 + macro-news-check tape + stock-technical-analysis 结构 + stock-sentiment-analysis 情绪/期待差.
- If the answer uses 宏观 or 快讯 to explain the stock, sector, Nikkei/TOPIX, JGB yields, USD/JPY, BOJ/MOF policy, US/China spillover, commodities, or geopolitics, load
Run the collector script from the repo root. In this local Codex desktop environment, network DNS frequently fails inside the default sandbox. For this skill, skip the first sandboxed collector attempt and run the collector directly with
sandbox_permissions: "require_escalated"when the current task needs live Yahoo/Kabutan/Traders/Yahoo 掲示板 data. Use the same command and include a concise approval question such as需要联网抓取 CODE 的最新行情、 新闻和 Yahoo 掲示板;是否允许本次联网采集?. Do not tell the user "sandbox DNS failed" before making this escalated collector call. If escalation is rejected, then state that live collection was blocked and fall back to cached or non-live evidence.
python3 skills/jp-stock-move-reason/scripts/stock_move_sources.py 7203 --format markdown
Useful options:
--hours 24: evidence window. Use72when same-day materials are thin.--comments 30: maximum Yahoo 掲示板 comments to include.--news-limit 15: maximum news items to include.--sources yahoo,kabutan,traders: default news sources.--market-hint 東証G: improves Traders Web metric/news URL choice when known.
If a sandboxed collector call was already attempted by mistake and network access fails in Codex, rerun the same command with sandbox escalation according to the normal approval policy. In this local environment, the collector often fails inside the sandbox with DNS-style errors such as
nodename nor servname provided, or not known,urlopen error, or repeated empty Yahoo/Kabutan/Traders results. Treat those as sandbox/network failures, not as evidence that there is no news or no Yahoo 掲示板 activity. Escalate and rerun before concluding that sources are empty.Analyze the script output directly. Do not call Gemini. Treat sources with this priority:
- Current quote and basic metrics: establish whether there is a real price move and the stock's size/liquidity context.
- PTS handling: during the regular Tokyo trading session, especially the opening and active intraday period, do not use PTS as an analysis layer; prioritize the live exchange quote, intraday price action, volume, news, and 掲示板 instead. For questions asked after the Tokyo close, check the Kabutan individual stock page (
https://kabutan.jp/stock/?code=CODE) when available. Use the page'sPTSblock sourced from JapanNext via Kabutan for PTS current price, timestamp, open/high/low, volume, trading value, and VWAP, but remember Kabutan's PTS figures are delayed by about 15 minutes. Treat PTS as delayed early after-hours sentiment and liquidity evidence, not as a confirmed next-session price or real-time tape. Do not use MONEY BOX PTS as a source because its PTS figures have proven unreliable; non-PTS MONEY BOX pages such as disclosure summaries may be used only as supplementary references and should be verified against primary disclosures/news. - Company disclosure and explanation materials: for earnings, guidance revisions, medium-term plans, business updates, buybacks, major orders, capital policy, or new businesses, look beyond headline numbers and 掲示板. Search TDnet/Kabutan PDFs, the company's IR site, 決算説明資料, 補足説明資料, 事業計画及び成長可能性に関する事項, 中期経営計画, 決算説明会資料/Q&A, press releases, product/project pages, and business-update materials. Use these to explain what changed in the business story, pipeline, certainty, timing, customer/project progress, capital needs, and dilution risk.
- News: primary evidence for concrete catalysts.
- Yahoo 掲示板: use only as a low-weight retail emotion/overheating check. Its buy/sell sentiment is delayed, reflects only past retail verbal mood, and should not be used as evidence for a price move, catalyst, conviction, or directional thesis. Never cite 掲示板 buy/sell ratios as support for an analysis. Use comments only to detect what retail is talking about, whether attention is crowded, or whether rumor risk needs verification against news/disclosures.
- Peer and theme reactions: use them to judge whether the move is theme-wide leadership, same-theme follow-through, or only stock-specific sentiment.
- Macro tape and Japan market breadth: call
macro-news-checkonly when the move may be affected by Nikkei/TOPIX futures, JGB yields, USD/JPY, BOJ/MOF policy, global rates, China/US macro, commodities, geopolitical risk, or broad risk-on/risk-off headlines. For Japanese broad-market weakness/strength or a single-stock move under strong market pressure, use the JPX real-time index page/data (https://www.jpx.co.jp/markets/indices/realvalues/index.html,indices_stock_price3.txt, andindices_stock_price3.time.txt) as an auxiliary confirmation layer for TOPIX 33 sectors, TOPIX-17, size indexes, and market-type indexes. Use it as market context, not as a substitute for stock-specific evidence.
For earnings-related questions, do a disclosure-material pass even when the user did not explicitly ask for it. The core question is not only
数字好不好, but为什么这些数字或指引可信,哪些说明资料证明业务进入兑现阶段,哪些项目仍只是 pipeline, and现金流/融资/稀释/客户集中是否会削弱估值. If no explanation material exists, say so and rely on the filing, company releases, and news.Prefer this skill as the first pass for Japanese stocks. When using
stock-sentiment-analysis,macro-news-check, orstock-technical-analysis, first finish the news/disclosure/theme read and use 掲示板 only as a retail heat check, then use the supporting skill to verify sentiment structure, broad-market pressure/support, or price confirmation. Do not replace company disclosures or concrete news with macro, sentiment, chart evidence, or 掲示板 chatter.In multi-turn discussions about the same stock, treat user follow-ups as possible new evidence or feedback. If the user adds information, challenges the reasoning, asks for reconsideration, or the conversation reveals that the prior answer missed/misweighted something, re-evaluate the stock with the new context before defending the earlier answer.
If the analysis or multi-turn correction produces a durable reusable lesson, update experience after answering. First decide scope: if the lesson applies to both Japanese stocks and A-shares, update both stock-skill
references/experience.mdfiles and considerstock-sentiment-analysis/references/experience.md; if it is specific to Japanese stocks, update only this skill. Follow theConversation Learning ProtocolandCompression Protocol: generalize the lesson, merge repeated lessons into the active summary, keep the active section short, and move only distinct older details into the archive.
Output Style
Reply in Chinese unless the user asks otherwise. The answer can be detailed because this is a local script workflow: start from at least 3-4 lines, and when evidence is rich, write up to the length of a short market news note. Stay evidence-based.
For every stock analyzed, always use these five numbered sections in this exact order:
最有力理由: the most likely catalyst, with source names and timing.补助理由: secondary drivers such as theme buying, short-term speculation, or market-cap/liquidity context.掲示板温度: summarize heat level, recent post volume, high-like comments, expectation gap, and crowding risk.确定度: high / medium / low, with one sentence explaining why.注意点: what remains unconfirmed or what could invalidate the read.
When the user gives multiple stocks, write the five numbered sections separately for each stock first. After all individual stock sections, add a final comparison section such as 两只对比 or 多只对比, covering common drivers, differences in catalyst quality, sentiment heat, and relative risk. You may add extra sections when useful, but the five required sections and the final comparison for multi-stock requests must remain present.
If the evidence is weak, say so plainly and use wording like 思惑, 期待, 传闻, or 确认待ち. Do not invent catalysts absent from the collected news/comments.
When explaining a catalyst, always check the expectation gap: 市场原来预期什么 -> 实际消息落地什么 -> 超预期 / 符合预期或只是落地 / 不及预期. This applies to numeric news such as guidance, earnings, orders, dividends, and buybacks, and to qualitative news such as wording strength, timing, certainty, management confidence, regulatory tone, and whether the news solves the market's real concern.
Valuation Requests
When the user asks for 合理估值, 目标价, 估值, 贵不贵, 空间, fair value, or similar:
- Still collect current quote/news materials first, then add financial guidance, EPS/share-count, capital policy, and peer/sector context when available.
- Use the
Reasonable Valuation Frameworkfromreferences/experience.md. - Provide scenario ranges rather than one exact target: conservative / base / bull.
- State the anchors used, such as forward EPS/PER, operating or recurring profit, ROE/PBR, EV/EBITDA, orders/backlog, buyback/CB dilution, and peer multiples.
- When using EPS/PER, explicitly decompose price into
EPS x PER: judge whether the setup is a Davis double play (EPS upgrades + PER expansionfrom better growth/certainty/theme premium) or Davis double kill (EPS downgrades + PER contractionfrom weaker guidance/cycle reversal/expectation miss). Do not call a stock cheap from PER alone if EPS or the deserved multiple is falling. - Explicitly say what the current price already prices in, what must happen to justify upside, and what would invalidate the valuation.