{
  "version": "1.0",
  "main_fixture_and_core_assumptions_fixed_before_calculation": true,
  "subsequent_addition": "A separate two-bot closed-form identity check was added after the main exercise outputs were available; it does not change the constructed returns or main calculations.",
  "purpose": "Constructed educational arithmetic exercise; not a market backtest, trading recommendation, or forecast.",
  "unit": "USDT accounting units; no token, broker, exchange, or custody exposure is modeled.",
  "capital": 100000,
  "initial_weights": [0.4, 0.35, 0.25],
  "equity_accounting": "Allocate capital once to three fully funded sleeves; compound each net sleeve return; make no transfers, no external cash flows, and no additional cost deductions. Portfolio weights drift. No leverage.",
  "return_definition": "Synchronous daily marked-to-market simple net returns on each entire sleeve NAV, including idle cash. Hypothetical trading costs are already reflected in these constructed net returns. No separate costs are estimated or deducted.",
  "fixture": "24 consecutive calendar days, 2026-09-01 through 2026-09-24. Every return is invented and disclosed in full. There is no market-data source or fitted distribution.",
  "explicit_cash_days": {"bot_a": ["2026-09-04", "2026-09-23"], "bot_b": ["2026-09-03", "2026-09-10"], "bot_c": ["2026-09-05", "2026-09-24"]},
  "data_rules": "Dates must be unique, strictly increasing, and consecutive calendar days in this 24/7 illustrative fixture; missing observations, blank values, and nonfinite values are errors. A known zero is valid. A missing return is never imputed as zero. An exchange-calendar application must supply its own expected sessions.",
  "statistics": "Pearson correlations and sample covariance use the same 24 synchronous observations, centered by sample means, with covariance divisor n-1. No annualization or inferential significance claim.",
  "drawdown": "Daily closing equity relative to its previous highest closing equity, including starting capital as the first peak. No intraday path is available.",
  "equal_volatility_example": {"daily_volatility_each": 0.01, "weights": [0.3333333333333333, 0.3333333333333333, 0.3333333333333333], "common_pair_correlations": [0, 0.5, 0.9]},
  "risk_contribution_example": {"daily_volatilities": [0.01, 0.02, 0.03], "weights": [0.4, 0.35, 0.25], "common_pair_correlation": 0.3, "method": "Euler contributions to portfolio standard deviation; not risk parity or optimization"},
  "two_bot_analytical_check": {"daily_volatilities": [0.02, 0.01], "weights": [0.5, 0.5], "common_pair_correlation": 0, "purpose": "Additional closed-form identity check; independent of the constructed 24-day return fixture"},
  "stress_example": {"assumed_sleeve_returns": [-0.08, -0.06, -0.1], "allocations": {"original": [0.4, 0.35, 0.25], "equal": [0.3333333333333333, 0.3333333333333333, 0.3333333333333333], "20_percent_cash": [0.32, 0.28, 0.2]}, "cash_return": 0, "meaning": "Assumed instantaneous one-day losses at stated starting weights; no probability, historical quantile, VaR, liquidation or execution model"},
  "excluded": ["live trading", "market-data fetching", "strategy signals", "execution and rebalance costs", "liquidity and slippage estimation", "leverage and derivatives", "counterparty or stablecoin default", "taxes", "interest", "future probability estimates", "annualized Sharpe ratios", "portfolio optimization"]
}
