Alipay Fund Screener
Objective
From publicly available mutual fund data or user-provided Alipay candidate codes, generate a verifiable ranked list of candidates. All numerical values are computed by scripts; do not supplement data from language model memory.
Default Behavior
When the user does not specify parameters, use the defaults without asking:
- Strategy:
best— recommend across all categories: A-share broad market, thematic/index strategies, QDII (overseas), bonds, active equity. Pick the best within each category (max 4 QDII funds), scores are only comparable within the same category. Exclude QDII funds that are suspended for subscription; keep those with large purchase limits/caps and label them. - Risk:
medium; Holding period: 3 years. - For each fund, provide "historical holding experience" (probability of positive return when buying and holding for 1/3/5 years at any point in time, longest recovery period) and "suggested holding ≥ N years" reference (shortest window with historical success rate ≥80%; must state that historical performance does not guarantee future results).
- Exclude: closed-end, open-end with fixed term, lock-up period products (various holding/lock-up), pensions, FOFs, secondary bond funds/convertible bonds, single-theme sector bets.
- Under single-category strategies (e.g.,
core-index), QDII and dividend/low-volatility/HK-stock strategy indices are excluded; underbest/all, they are included. - Exclude funds with share size less than 0.5 billion units (delisting risk); at most 1 fund per index (adjustable via
--max-per-index). - Returns, drawdowns, volatility, etc., are calculated on a dividend-reinvested basis. In auto mode, only funds with full historical data covering the evaluation window are retained.
- Do not log in to Alipay, do not read accounts, do not place orders.
Clearly state in the response which parameters used default values, and paraphrase each category's top pick along with its suggested holding period.
Parameter constraints: --risk low currently only retains bond funds; it cannot be combined with --strategy core-index or --strategy active (the script will directly throw an error). For low-risk requests, use --strategy bond (or balanced/all).
Execution Steps
- Locate the directory containing this
SKILL.mdfile, denote it asSKILL_DIR. - Verify that
SKILL_DIR/.venv/bin/pythonexists; if not, prompt the user to run./setup.shin that directory — do not fabricate results. - Map the user's intent to parameters:
- "Recommend the best", "no restrictions", "let's see":
--strategy best(default) - Long-term DCA, core positions for regular investors, broad indices:
--strategy core-index - Stable, low volatility, bond funds:
--strategy bond --risk low - Active stock/hybrid funds:
--strategy active, and remind that manager change corrections are limited - Multiple category comparison:
--strategy balanced - When the user provides explicit fund codes, use
--codes; when the user provides a CSV/text candidate pool, use--watchlist
- "Recommend the best", "no restrictions", "let's see":
- Run the script from
SKILL_DIR. Example:
cd "$SKILL_DIR"
.venv/bin/python scripts/fund_picker.py \
--strategy core-index \
--risk medium \
--holding-years 5 \
--top 5 \
--output /tmp/alipay_fund_report.md \
--json-output /tmp/alipay_fund_report.json
Compare specific fund codes:
cd "$SKILL_DIR"
.venv/bin/python scripts/fund_picker.py \
--codes "000051,110020,161017" \
--risk medium \
--holding-years 3 \
--top 3
Alipay candidate pool strict mode:
cd "$SKILL_DIR"
.venv/bin/python scripts/fund_picker.py \
--watchlist /path/to/alipay_watchlist.csv \
--risk medium \
--holding-years 3 \
--top 5
- Read the generated Markdown and JSON; the response must include:
- Data cutoff date ("Net value data as of" from the report header)
- Top pick and fund code (best mode: top pick per category)
- At least two alternatives
- Annualized return, maximum drawdown, annualized volatility, Sharpe ratio or percentage of months with positive returns
- Main risks for each fund, along with suggested holding period and historical holding experience (positive return window percentage/worst window/recovery duration)
- If the report contains "correlation hints" or "A/C share fee comparison", these must be paraphrased
- When citing "index valuation reference", the qualifier "Data reference, not investment advice" must be kept
- Final verification items within Alipay
- If data sources fail, fund codes do not exist, or historical data is insufficient, state this as-is. Do not guess or fabricate values. Fund codes explicitly given by the user will not be silently filtered: QDII, lock-up, suspended subscription funds will be retained and risk-marked; codes that fail evaluation appear in the report's "Data failure and exclusion records" section — these must be relayed to the user item by item in the response. If both A and C shares are provided, they will be kept side by side for fee comparison.
Alipay Watchlist Maintenance (Screenshot Import)
Alipay does not have a watchlist export feature. When the user provides screenshots of Alipay fund pages (watchlist, search results, fund details), follow this process to merge candidates into the watchlist:
- Extract only the fund code and fund abbreviation from the screenshot; ignore all holdings amounts, returns numbers, account nicknames, avatars — do not extract, paraphrase, or write into any file.
- If a screenshot has only a name but no code, do not fill in the code from memory. First match the name against public data (e.g., ranking table cache) for a unique code; items that cannot be uniquely matched or fail matching should be listed separately and ask the user to confirm the code in Alipay before adding to the pool.
- Merge with
SKILL_DIR/watchlist.csv(or user-specified CSV): retain existing entries, deduplicate by 6-digit code, and write back. If the file does not exist, create it following the format inexamples/alipay_watchlist.example.csv. The user's watchlist is personal data; always write to the gitignoredwatchlist.csv, never into template files under examples/ (to avoid leaking holdings with the repository). - After merging, re-screening with
--watchlistand remind the user: screenshot recognition may be inaccurate; always verify fund codes in Alipay before purchasing.
Risk Boundaries
- Outputs are research candidates, not guaranteed profitable buy orders.
- Do not use rankings like "past 1 week" or "past 1 month" as core criteria.
- The subscription fee in reports is a third-party discounted price shown by East Money; Alipay discounts may differ. For ongoing holding costs, refer to "ongoing fee/year" (management fee + custodial fee), and verify class C sales service fees within Alipay.
- Do not directly claim that a bond fund is "better than" a stock fund across different risk categories.
- Do not read or store sensitive account information such as Alipay username, password, verification code, or holdings screenshots.
- Do not automatically execute subscription, redemption, swap, or DCA settings.
- Auto mode cannot confirm whether the user's personal Alipay account actually lists that fund; it must be verified in Alipay using the fund code.
- For active funds, if the current manager's tenure performance cannot be cleanly isolated, lower the confidence in the conclusion and explicitly state this.