Phase 1 Objective-Based Fund Selection — Report¶
Snapshot: 2026-09-20
Evidence schema: phase1_25fund_objective_selection_evidence_v1
Methodology: phase1_25fund_objective_selection_v1
Controlled population: 25 funds
Risk-free proxy: 7.07%
Annualisation: 252 periods/year
Interpretation boundary: This is a methodology demonstration on the approved 25-fund test population, not universal investment policy. Displayed weights are the current Phase 1 constructor output; equal-weight is a demonstration baseline, not final product policy. No portfolio-level analytical benchmark is approved for Phase 1. When replay evidence is supplied, this report displays its recorded full-schedule status and interval returns without recomputing them; objective achievement remains a separate evaluation.
Profile summary¶
| Profile | Selection | Selected / target | Construction | Objective evaluation | Historical replay |
|---|---|---|---|---|---|
| Aggressive | COMPLETE | 5 / 5 | CONSTRUCTED | NOT_EVALUATED | COMPLETE (weekly and monthly full schedules) |
| Moderate | COMPLETE | 5 / 5 | CONSTRUCTED | NOT_EVALUATED | COMPLETE (weekly and monthly full schedules) |
| Conservative | CONDITIONAL | 4 / 5 | NOT_RUN | NOT_EVALUATED | NOT_RUN |
Aggressive profile¶
- Selection state: COMPLETE
- Candidates / eligible: 25 / 25
- Target / achieved: 5 / 5
- AMC cap: 65.00%
- Construction state: CONSTRUCTED
- Objective evaluation: NOT_EVALUATED — The approved Phase 1 decision defines the evaluation state aggregation, but no complete portfolio-level metric criterion configuration was supplied for this run. No thresholds or benchmark relationships are inferred.
- Historical replay: COMPLETE (weekly and monthly full schedules) — weekly: 204 periods, COMPLETE (All adjacent intervals passed; full schedule then executed with the existing adapter/engine.); monthly: 52 periods, COMPLETE (All adjacent intervals passed; full schedule then executed with the existing adapter/engine.)
Selected holdings¶
| Fund | Scheme code | Unique code | Category | AMC | Target weight |
|---|---|---|---|---|---|
| ICICI Prudential Commodities Fund Direct - Growth | 147662 | INF109KC1F91 | Equity Mutual Funds | ICICI Prudential Mutual Fund | 20.00% |
| HDFC Dividend Yield Fund | 148609 | INF179KC1AO6 | Equity Mutual Funds | HDFC Mutual Fund | 20.00% |
| ICICI Prudential Technology Fund | 120594 | INF109K01Z48 | Equity Mutual Funds | ICICI Prudential Mutual Fund | 20.00% |
| HDFC Small Cap Fund | 130503 | INF179KA1RW5 | Small Cap | HDFC Mutual Fund | 20.00% |
| ICICI Prudential Quant Fund Direct - Growth | 148600 | INF109KC1O66 | Equity Mutual Funds | ICICI Prudential Mutual Fund | 20.00% |
Construction checks¶
- Explanation: CONSTRUCTED: 5 holding(s) included from 5 candidate(s) (0 excluded). 2/2 rule(s) satisfied.
- Category exposure: {"Equity": 1}
- AMC exposure: {"HDFC Mutual Fund": 0.4, "ICICI Prudential Mutual Fund": 0.6000000000000001}
| Rule | Satisfied | Detail |
|---|---|---|
| base_allocation | True | No category_targets supplied - base allocation delegates to portfolio_construction.construct_portfolio() (equal-weight, 5 holdings). |
| max_amc_weight | True | No AMC exceeds 65.0000%. |
Candidate decisions¶
| Fund | Scheme code | Decision | Explanation |
|---|---|---|---|
| HDFC Low Duration Fund | 118942 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Flexi Cap Fund | 118955 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Floating Rate Debt Fund | 118961 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Infrastructure Fund | 118979 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Corporate Bond Fund | 118987 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Short Term Debt Fund | 119016 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Income Fund | 119069 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Medium Term Debt Fund | 119081 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Gilt Fund | 119116 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Banking and Financial Services Fund | 120244 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Banking and PSU Debt Fund Direct-Growth | 120256 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Bluechip Fund | 120586 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential FMCG Fund | 120587 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Technology Fund | 120594 | SELECTED | Selected by AGGRESSIVE objective ordering and within configured diversification constraints. |
| ICICI Prudential Regular Savings Fund | 120616 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Infrastructure Fund | 120621 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Ultra Short Term Fund | 120676 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Short term Fund | 120754 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Large and Mid Cap Fund | 130498 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Small Cap Fund | 130503 | SELECTED | Selected by AGGRESSIVE objective ordering and within configured diversification constraints. |
| ICICI Prudential Bharat Consumption Fund Direct - Growth | 146951 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Commodities Fund Direct - Growth | 147662 | SELECTED | Selected by AGGRESSIVE objective ordering and within configured diversification constraints. |
| ICICI Prudential Quant Fund Direct - Growth | 148600 | SELECTED | Selected by AGGRESSIVE objective ordering and within configured diversification constraints. |
| HDFC Dividend Yield Fund | 148609 | SELECTED | Selected by AGGRESSIVE objective ordering and within configured diversification constraints. |
| HDFC Banking & Financial Services Fund | 148986 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
Moderate profile¶
- Selection state: COMPLETE
- Candidates / eligible: 25 / 25
- Target / achieved: 5 / 5
- AMC cap: 65.00%
- Construction state: CONSTRUCTED
- Objective evaluation: NOT_EVALUATED — The approved Phase 1 decision defines the evaluation state aggregation, but no complete portfolio-level metric criterion configuration was supplied for this run. No thresholds or benchmark relationships are inferred.
- Historical replay: COMPLETE (weekly and monthly full schedules) — weekly: 204 periods, COMPLETE (All adjacent intervals passed; full schedule then executed with the existing adapter/engine.); monthly: 52 periods, COMPLETE (All adjacent intervals passed; full schedule then executed with the existing adapter/engine.)
Selected holdings¶
| Fund | Scheme code | Unique code | Category | AMC | Target weight |
|---|---|---|---|---|---|
| HDFC Floating Rate Debt Fund | 118961 | INF179K01VQ4 | Debt Mutual Funds | HDFC Mutual Fund | 20.00% |
| ICICI Prudential Commodities Fund Direct - Growth | 147662 | INF109KC1F91 | Equity Mutual Funds | ICICI Prudential Mutual Fund | 20.00% |
| ICICI Prudential Short term Fund | 120754 | INF109K013N3 | Debt Mutual Funds | ICICI Prudential Mutual Fund | 20.00% |
| HDFC Low Duration Fund | 118942 | INF179K01VF7 | Debt Mutual Funds | HDFC Mutual Fund | 20.00% |
| HDFC Dividend Yield Fund | 148609 | INF179KC1AO6 | Equity Mutual Funds | HDFC Mutual Fund | 20.00% |
Construction checks¶
- Explanation: CONSTRUCTED: 5 holding(s) included from 5 candidate(s) (0 excluded). 2/2 rule(s) satisfied.
- Category exposure: {"Debt": 0.6000000000000001, "Equity": 0.4}
- AMC exposure: {"HDFC Mutual Fund": 0.6000000000000001, "ICICI Prudential Mutual Fund": 0.4}
| Rule | Satisfied | Detail |
|---|---|---|
| base_allocation | True | No category_targets supplied - base allocation delegates to portfolio_construction.construct_portfolio() (equal-weight, 5 holdings). |
| max_amc_weight | True | No AMC exceeds 65.0000%. |
Candidate decisions¶
| Fund | Scheme code | Decision | Explanation |
|---|---|---|---|
| HDFC Low Duration Fund | 118942 | SELECTED | Selected by MODERATE objective ordering and within configured diversification constraints. |
| HDFC Flexi Cap Fund | 118955 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Floating Rate Debt Fund | 118961 | SELECTED | Selected by MODERATE objective ordering and within configured diversification constraints. |
| HDFC Infrastructure Fund | 118979 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Corporate Bond Fund | 118987 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Short Term Debt Fund | 119016 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Income Fund | 119069 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Medium Term Debt Fund | 119081 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Gilt Fund | 119116 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Banking and Financial Services Fund | 120244 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Banking and PSU Debt Fund Direct-Growth | 120256 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Bluechip Fund | 120586 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential FMCG Fund | 120587 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Technology Fund | 120594 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Regular Savings Fund | 120616 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| ICICI Prudential Infrastructure Fund | 120621 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Ultra Short Term Fund | 120676 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Short term Fund | 120754 | SELECTED | Selected by MODERATE objective ordering and within configured diversification constraints. |
| HDFC Large and Mid Cap Fund | 130498 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| HDFC Small Cap Fund | 130503 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Bharat Consumption Fund Direct - Growth | 146951 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
| ICICI Prudential Commodities Fund Direct - Growth | 147662 | SELECTED | Selected by MODERATE objective ordering and within configured diversification constraints. |
| ICICI Prudential Quant Fund Direct - Growth | 148600 | NOT_SELECTED | Objective ordering placed this candidate after the requested target of 5. |
| HDFC Dividend Yield Fund | 148609 | SELECTED | Selected by MODERATE objective ordering and within configured diversification constraints. |
| HDFC Banking & Financial Services Fund | 148986 | NOT_SELECTED | Dominated on the approved Moderate Pareto dimensions (CAGR, volatility, maximum drawdown). |
Conservative profile¶
- Selection state: CONDITIONAL
- Candidates / eligible: 25 / 25
- Target / achieved: 5 / 4
- AMC cap: 65.00%
- Construction state: NOT_RUN
- Objective evaluation: NOT_EVALUATED — The approved Phase 1 decision defines the evaluation state aggregation, but no complete portfolio-level metric criterion configuration was supplied for this run. No thresholds or benchmark relationships are inferred.
- Historical replay: NOT_RUN — NOT_RUN: the existing approved-25 replay is a deterministic midpoint switch between prebuilt allocations, not profile-specific point-in-time fund selection. A valid objective replay requires selection/allocation decisions using only evidence available at each historical decision date; full-period metrics cannot be used retrospectively. No point-in-time selection evidence is supplied by this builder.
Selected holdings¶
| Fund | Scheme code | Unique code | Category | AMC | Target weight |
|---|---|---|---|---|---|
| ICICI Prudential Short term Fund | 120754 | INF109K013N3 | Debt Mutual Funds | ICICI Prudential Mutual Fund | Not available |
| ICICI Prudential Banking and PSU Debt Fund Direct-Growth | 120256 | INF109K010A6 | Debt Mutual Funds | ICICI Prudential Mutual Fund | Not available |
| HDFC Medium Term Debt Fund | 119081 | INF179K01WI9 | Debt Mutual Funds | HDFC Mutual Fund | Not available |
| ICICI Prudential Regular Savings Fund | 120616 | INF109K01S39 | Hybrid Mutual Funds | ICICI Prudential Mutual Fund | Not available |
Construction not run: Portfolio construction not attempted because objective selection did not reach the requested target; status=CONDITIONAL.
Candidate decisions¶
| Fund | Scheme code | Decision | Explanation |
|---|---|---|---|
| HDFC Low Duration Fund | 118942 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Flexi Cap Fund | 118955 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Floating Rate Debt Fund | 118961 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Infrastructure Fund | 118979 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Corporate Bond Fund | 118987 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Short Term Debt Fund | 119016 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Income Fund | 119069 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Medium Term Debt Fund | 119081 | SELECTED | Selected by CONSERVATIVE objective ordering and within configured diversification constraints. |
| HDFC Gilt Fund | 119116 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Banking and Financial Services Fund | 120244 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Banking and PSU Debt Fund Direct-Growth | 120256 | SELECTED | Selected by CONSERVATIVE objective ordering and within configured diversification constraints. |
| ICICI Prudential Bluechip Fund | 120586 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential FMCG Fund | 120587 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Technology Fund | 120594 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Regular Savings Fund | 120616 | SELECTED | Selected by CONSERVATIVE objective ordering and within configured diversification constraints. |
| ICICI Prudential Infrastructure Fund | 120621 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Ultra Short Term Fund | 120676 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Short term Fund | 120754 | SELECTED | Selected by CONSERVATIVE objective ordering and within configured diversification constraints. |
| HDFC Large and Mid Cap Fund | 130498 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Small Cap Fund | 130503 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Bharat Consumption Fund Direct - Growth | 146951 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Commodities Fund Direct - Growth | 147662 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| ICICI Prudential Quant Fund Direct - Growth | 148600 | EXCLUDED_BY_DIVERSIFICATION | Selecting this fund would exceed configured AMC cap 0.6500 for target_count=5. |
| HDFC Dividend Yield Fund | 148609 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
| HDFC Banking & Financial Services Fund | 148986 | EXCLUDED_BY_CRITERION | Does not pass approved-25 C2 screen: volatility <= 0.1410, max_drawdown >= -0.20, CAGR >= 0.0797. |
Historical replay evidence¶
- Pinned input SHA-256:
ec31eb77da9f280f92747f97d72ca3a196eab1c6eee79098b29083028148a4a0 - Replay snapshot: 2026-09-20
- Portfolio objective evaluation: NOT_EVALUATED (issue #329 criteria not approved)
- Conservative replay: NOT_RUN (issue #330 C2 point-in-time calibration policy not approved)
| Profile | Frequency | Interval checks | Full-schedule replay | Periods returned |
|---|---|---|---|---|
| Aggressive | Weekly | 204/204 complete; 0 blocked | COMPLETE | 204 |
| Aggressive | Monthly | 52/52 complete; 0 blocked | COMPLETE | 52 |
| Moderate | Weekly | 204/204 complete; 0 blocked | COMPLETE | 204 |
| Moderate | Monthly | 52/52 complete; 0 blocked | COMPLETE | 52 |
Replay return series and selected scheme codes remain available in the committed JSON/CSV source artifacts. COMPLETE means the frozen adapter/engine returned the scheduled periods; it does not mean the portfolio met an approved objective.
Evidence and acceptance boundaries¶
- Accepted analytical dataset manifest: docs/evidence/PHASE1_25FUND_ANALYTICAL_DATASET_MANIFEST_2026-09-20.json
- Benchmark status: no portfolio-level analytical benchmark approved for Phase 1
- Objective evaluation: NOT_EVALUATED until explicit approved metric criteria are supplied
- Historical replay boundary: Full-schedule replay evidence is attached; objective evaluation remains separate.
Limitations¶
- Conservative historical replay remains NOT_RUN until the point-in-time C2 calibration policy is approved (issue #330).
- Portfolio objective evaluation remains NOT_EVALUATED until explicit metric criteria are approved (issue #329).
- The report does not calculate or restate fund metrics; it displays selected identities, construction results and states already present in the source evidence.
- The manifest join supplies display names and reference metadata only; it does not approve category or benchmark relationships.
- Missing or conditional states are preserved. The Conservative profile is not padded to reach five holdings.
- Replay status/period counts are copied from the committed replay summary; the renderer does not recompute returns or independently validate the run environment.
- A completed historical replay is not objective PASS/WATCH/FAIL, benchmark approval, staging integration or downstream UAT.
Generated by scripts/render_phase1_25fund_objective_selection_report.py from committed selection evidence, approved-25 manifest, and optional replay summary.