Best Manager Showdown Skill
Put four fund managers with vastly different styles into the same arena, simultaneously quoting their own words to explain their respective investment methods, and using actual data from all their managed funds for same-basis comparison, holding tracking, and industry perspective. Help users gain a more comprehensive understanding of an industry, a fund, and "which style suits them better."
Four managers and their positioning (see references/arena/managers.json for details):
- Zheng Xi (E Fund) — Sentiment stitching / Cycle positioning / ROE low-level elasticity / Top-down industry chain.
- Zhang Kun (E Fund) — Value investing / Long-term holding of quality enterprises / Extremely low turnover / "Calculating privatization value."
- Wu Yang (E Fund) — Anchoring growth within industry cycles / Forward-looking on growth directions like AI compute / Concentrated positions.
- Jin Zicai (Caitong) — Sentiment investing / Medium-level industry allocation rotation / Industry research driven / High turnover.
Three Pillars (all in references/, all traceable)
- Original Corpus
references/managers/{manager}/corpus/— Public opinions from each manager in their own words: regular report "investment operations/strategy analysis," fund manager notes, media interviews; Jin Zicai additionally has "Tiantian Fund Dynamics" — his high-frequency market commentary published on his Tiantian Fund personal page, more timely than quarterly reports (corpus type天天基金动态, can be searched separately withsearch_corpus.py --type 天天基金动态). Each markdown file has a header with title/date/source/original link, and the body after---. - Investment Method
references/managers/{manager}/method.md— Methodological framework distilled from each manager's corpus, each point paired with their original words. This is the fundamental difference between this skill and "style summary from memory." - Actual Fund Data
references/fund_data/(Zheng Xi) andreferences/fund_data_cache/(other three) — Quarterly top ten holdings, NAV/period returns/max drawdown/size/asset allocation/tenure returns for each fund. - Arena Metadata
references/arena/managers.json— Each manager's managed funds, tenure periods (start/end), style tags;references/arena/scorecard.md— Six-dimension comparison criteria.
How to Run Scripts (Important, otherwise confirmation dialogs will keep popping up)
Scripts use absolute paths to locate data and have built-in output limits. When calling, keep it as one simple command:
- ✅ Correct:
python "<skill directory>/scripts/compare_managers.py" - ❌ Do NOT use
cd … && python …(compound commands withcdforce manual confirmation) - ❌ Do NOT add
2>/dev/null,| head,>or any redirection or pipes - ❌ Do NOT chain multiple commands with
;/&&— run only one script at a time
<skill directory> is the directory where this SKILL.md is located (scripts are in its scripts/ subdirectory).
How to Use the Four Main Features
Feature 1: Manager Showdown Arena (Who Is Stronger)
When users ask "who controls drawdowns better," "who has the highest returns," "who is stronger," "compare Zhang Kun and Jin Zicai":
- First get real metrics:
python scripts/compare_managers.py(representative fund arena for the four). To see all funds add--all; to compare only certain managerspython scripts/compare_managers.py Zhang Kun Jin Zicai; to specify fund pairpython scripts/compare_managers.py --fund 005827 720001. - Then give "scenario-specific conclusions" based on the six dimensions from
references/arena/scorecard.md: long-term returns, drawdown control, risk-adjusted returns, turnover/strategy type, sentiment cycle timing, industry research depth. Do NOT give simple "absolute #1" rankings — instead explain "choose who for long-term compounding with low churn, choose who for riding industry trends with elasticity," and back it up with evidence. - Key reminders: Zhang Kun "controls drawdown not by timing but by stock selection"; with high positions and concentration, bear market book drawdowns can be significant — explain using his logic rather than just numbers; tenure periods vary in length (Zhang Kun has the longest sample, spanning full bull-bear cycles), note this in comparisons.
Feature 2: Industry / Stock Lens (Four Perspectives on One Industry)
When users ask "who is buying optical communication," "how do they view AI compute," "who holds Zhongji Innolight," "who among the four holds Kweichow Moutai":
- First check actual holdings:
python scripts/sector_lens.py 光学(has built-in common theme words, expands to a basket of individual stocks); or directly pass stock namespython scripts/sector_lens.py 中际旭创; custom stock basket--names 中际旭创,新易盛. It outputs for each of the four: which related stocks they hold, first entry time, current proportion vs. peak, whether still in top ten. - Then overlay respective views: Use
python scripts/search_corpus.py 光学(search all four, see who has spoken and what they said) + each manager's method, to give a "four-lens" comprehensive view: who is heavily betting, who is diversifying, who is rotating, who is not touching at all, and their reasons. - This thickens "quickly understanding an industry": both real money position evidence and industry judgment in their own words.
Feature 3: Holdings / Position Tracking
When users ask "what has Jin Zicai recently adjusted," "what has Zhang Kun done in recent years," "who is reducing compute":
python scripts/holdings_diff.py Jin Zicai(quarterly changes for that manager's representative fund: new entries/cleared/additions/reductions); specify fundpython scripts/holdings_diff.py 720001; look further back--quarters 12; specify manager and fundWu Yang --fund 011891.- Interpret in the context of style: Jin Zicai's entire portfolio switch = medium-level rotation; Zhang Kun barely moves = buy-and-hold; cross-reference his quarterly report original words to confirm "why this adjustment."
Feature 4: Multi-Perspective Reference (Calibrate Your Own Judgment, Don't Decide for You)
When users ask "how should I view this fund/industry," "I hold XX, how would these four view it":
- Combine the above three features: first
compare_managersfor the return/drawdown profile of this style, thensector_lensfor the four's actual positions in that direction, then use each manager's method to give "four perspectives" judgment, letting the user see different strategies and trade-offs for the same question. - Focus on calibrating cognition rather than giving instructions: present "how Zhang Kun would think, how Jin Zicai would act" as a contrast, helping the user clarify their own risk preference and time horizon, without making buy/sell decisions for the user.
Advanced Features (Innovative Tools, Call on Demand)
These leverage the dual foundation of "traceable original text + actual holdings" in innovative ways, unique to this skill:
- Style Radar + Persona Card — When users want to "see the style differences among the four at a glance/who is what type," run
python scripts/style_radar.py: outputs relative scores for the four on six dimensions (return elasticity/drawdown control/risk adjustment/rotation turnover/position concentration/longevity) + a one-sentence persona, and generatesreferences/arena/style_radar.svg. You can display this SVG directly to the user; if the environment supports it, also render an interactive radar usingshow_widgetbased on the six-dimensional scores. - This Quarter's Rebalance Brief — "What did all four adjust this quarter/who is going opposite" run
python scripts/rebalance_brief.py(--allfor all funds): summarizes each manager's latest quarterly adds and cuts, and extracts consensus adds/consensus cuts/obvious divergence. Suitable for periodic output via/scheduleafter quarterly report disclosures. - Words-Actions Consistency Check — "X publicly favors Y, did they actually buy it" run
python scripts/consistency_check.py <manager> <theme/stock>: juxtaposes "what they said" (corpus stance, earliest mention) with "what they bought" (top ten actual holdings, entry quarter) for consistency assessment. Emphasis on evidence comparison, not a definitive conclusion. - Opinion Time Machine — "Who saw optical communication first/who was late" run
python scripts/opinion_timeline.py <theme> [--manager X]: arranges each manager's historical quotes on a timeline, marks "earliest mention," showing who deployed earlier and who pivoted mid-way. - Four-Person Consultation — "I'm holding XX industry/stock, how would the four view it" run
python scripts/consult.py <industry/theme/stock>: generates a structured review with four perspectives, each backed by a single evidence sheet combining actual holdings exposure + original words + method positioning (original words faithful to source; for topics not mentioned in corpus, infer using the manager's method and declare it; holdings data marked with quarter). - Custom Arena — When users want to "also include a certain fund/manager in the comparison" run
python scripts/compare_managers.py --add <code or manager name…>: can add any fund code or name an external manager (fromEXTRA_MANAGERStable, e.g., Zhu Shaoxing/Liu Yanchun/Ge Lan…, data auto-fetched online if missing locally). Note: External managers only compete in the arena with numbers, no corpus, so they cannot enter consultation/consistency check/time machine; to include someone at the corpus level, their corpus must be formally collected to build a 5th person.
Traceability / Method / Stylization (Single Manager Capabilities, Reused)
- "What does X think of Y / what is their view" —
search_corpus.py "keyword" --manager Xto find original text, quote with natural source attribution; if there's evolution, string together years. - "What is X's investment method/framework" — Read
references/managers/X/method.md(each point with original quotes). - "Write a passage in X's style" — First read 2-3 of their real quarterly reports/notes to get a feel for their writing style, then write; do not fabricate numbers/holdings; end with a note that it's a stylized simulation.
- "X said they favor Y, did they buy it" (words-actions comparison) — Get stance from corpus + use
holdings_diff/fund data for actual holdings in corresponding quarter, juxtapose the two; must only use quarters within their tenure period (see below).
Citation and Honesty (Do Not Relax This)
- Faithful to original: When quoting a manager's words, they must match their corpus text exactly. Do not rewrite or abbreviate and present as original. Do not attribute A's words to B.
- Clean natural source attribution: Use natural language to cite the source ("Zhang Kun wrote in his 2012 notes," "Jin Zicai said in his 2026 Q1 report").
Do not include internal markers in your response —
[Zhang Kun | regular report | …],method.md, file paths, quarterly tag formats, etc., should not appear in the text shown to users. Do not report collection counts ("how many articles in total"). - Distinguish three types of speech: ① The manager's own words (faithful quotation + natural source) ② Inferences based on their method (clarify it's an inference) ③ Facts requiring verification (specific companies/prices/numbers).
- Quarterly granularity, not per-transaction: Chinese public funds only disclose quarterly (top ten)/semi-annual (all holdings). There are no per-transaction buy/sell timings. Position changes and holdings are quarterly snapshots; cite with quarter and data date. Do not describe "quarter-to-quarter changes" as "bought or sold on a specific day."
- Filter by tenure: Holdings/NAV data may cover the entire fund history (including other managers' tenures).
managers.jsonmarks each manager's start/end for each fund; scripts already clip by interval; when interpreting manually, only count quarters within their tenure; do not attribute others' holdings/performance to them. - Metrics are estimates: Drawdown/volatility are estimated from NAV; turnover is approximated from top ten; some start dates for Jin Zicai's funds are conservative inferences — all limitations must be stated.
- Do not fabricate: Fabricating statements never made, or inventing holdings/performance/target prices is the biggest taboo; if corpus and data do not exist, honestly say so.
How to Handle Out-of-Corpus Topics
If a manager has never publicly discussed a topic: First confirm with search_corpus.py --manager X that there is indeed nothing; bold the first sentence of the response
(e.g., "Zhang Kun has not publicly discussed innovative drugs. The following is an inference based on his consistent methodology and does not represent his personal views."), then infer using their method.md framework;
for specific companies/numbers in the inference, label with "needs verification."
Tool List
scripts/compare_managers.py— Quantitative arena for manager showdown (--allfor all funds /manager name…for selection /--fund code…for pair /--add code or manager name…for custom inclusion).--addcan add fund codes or name external managers (Zhu Shaoxing/Liu Yanchun/Xie Zhiyu/Ge Lan/Xiao Nan/Fu Pengbo/Liu Gesong/Zhou Weiwen/Lao Jienan/Hu Xinwei, seeEXTRA_MANAGERStable in script, including representative funds and sources); but external managers only compete in the arena with numbers, no corpus, cannot enter consistency check/consultation/time machine/radar, and are based on full fund history (not tenure-clipped intervals).scripts/sector_lens.py <industry/stock>— Industry/stock zoom: who among the four holds/adds/reduces/early deploys (--namesfor custom stock basket).scripts/holdings_diff.py <manager or code>— Quarterly rebalancing tracking (--quarters N,--fund code).scripts/search_corpus.py "phrase"— Corpus search across the four (--manager,--typeincluding天天基金动态,--any,--context).scripts/style_radar.py— Style radar + persona card (six-dimension relative scores, generates SVG).scripts/rebalance_brief.py— This quarter's rebalance brief (consensus/divergence,--all).scripts/consistency_check.py <manager> <theme>— Words-actions consistency check (what they said vs. what they bought).scripts/opinion_timeline.py <theme>— Opinion time machine (historical quotes timeline,--manager).scripts/consult.py <industry/theme/stock>— Four-person consultation evidence sheet (holdings + original words + method).references/managers/{manager}/method.md— Each manager's method framework (with original quotes).references/arena/managers.json— Each manager's managed funds, tenure periods, style tags.references/arena/scorecard.md— Six-dimension comparison criteria.scripts/fund_lookup.py keyword/scripts/fetch_any_fund.py <code>— Look up any fund code in the market / fetch data (online, for extended comparison).- Data refresh: E Fund three managers' corpus
python scripts/scrape_manager.py Zhang Kun zhangkun 721(Wu Yang wuyang 717, Zheng Xi zhengxi 462); Jin Zicai quarterly report corpuspython scripts/fetch_caitong_corpus.py, dynamics postspython scripts/fetch_jin_dynamics.py(can add number to fetch only latest N); fund datapython scripts/fetch_any_fund.py <code> --force.
Boundaries
Research and learning assistance only. Not investment advice. Does not predict price movements, does not give buy/sell instructions, does not promise returns. "Best" is scenario-dependent and criterion-dependent; no absolute rankings are given. Corpus and data are sourced from public disclosures of the four managers and their funds.