{
  "id": "trading-fee-vip-calculator",
  "version": "1.2.0",
  "versionPublishedAt": "2026-10-31",
  "evidenceReviewedAt": "2026-10-12",
  "canonicalPath": "/tools/trading-fee-vip-calculator",
  "assetType": "documentation_based_decision_tool",
  "evidenceType": "documentation_and_user_input_calculation",
  "liveExecutionTested": false,
  "measurementDataset": false,
  "methodologyLocation": "Visible formulas, sources and limitations on the canonical tool page",
  "sourceSnapshots": [
    {
      "path": "config/tradingFees.js",
      "sha256": "f005d418f0494fd23989eb7596e9a124ef3991ac6e41d73fbdb8edbb33569972"
    },
    {
      "path": "utils/tradingFees.js",
      "sha256": "4fc2a0da9c680f2c315a5f788cb0432f435022dcc460a7794719c077f091e0f4"
    },
    {
      "path": "utils/feeSensitivity.js",
      "sha256": "96d25db566cff22e7d51547587ffeedbadeedc9be76bb436cf4ac5f217f599c6"
    }
  ],
  "limitations": [
    "Constant fee rates and maker mix; not a live quote or tier progression simulation.",
    "VIP calculation checks only a supplied volume criterion, not eligibility.",
    "Documentation examples can differ by account, region or product.",
    "Inputs and estimated funding, slippage and costs are not observed measurements."
  ],
  "changelog": [
    {
      "version": "1.0.0",
      "date": "2026-10-12",
      "change": "Initial fee comparison, cost crossover and separate VIP volume criterion model."
    },
    {
      "version": "1.1.0",
      "date": "2026-10-17",
      "change": "Added bounded comparison continuation and action-only usage observations. Calculation formulas and the 12 October fee-source snapshots are unchanged; this is not a new fee verification."
    },
    {
      "version": "1.2.0",
      "date": "2026-10-31",
      "change": "Added independent volume, maker-share and execution-cost sensitivity checks. Existing fee formulas, preset review dates and analytics are unchanged; this is not a new provider-fee verification."
    }
  ],
  "usageMeasurement": {
    "events": [
      "dn_fee_engage",
      "dn_fee_result_view",
      "dn_fee_research_click",
      "dn_fee_platform_click"
    ],
    "financialInputsTransmitted": false,
    "limitations": "Action-only observations under existing production analytics; explicit DNT/GPC signals suppress DN events. Default results are not engagement. Result visibility follows a cost edit or successful source-example load and a visible valid result summary. Internal and platform clicks are not registrations, eligibility, paid referrals or commissions. Sponsored platform clicks may also emit the existing dn_partner_click; never add those event families as distinct people."
  },
  "usageUpdatedAt": "2026-10-17",
  "methodologySourceVersion": "1.2.0",
  "previousVersion": {
    "version": "1.1.0",
    "manifestPath": "/research/trading-fee-vip-calculator/v1.1.0.json",
    "manifestSha256": "4106bd7bcc543def431e6a0de1706b323186367df5b59c1ad94417c2a4ac6c9a",
    "matchingSourceCommit": "420e926d0945247aa8b6b40ba1714922918cea23"
  },
  "sensitivity": {
    "cases": [
      "half executed volume",
      "double executed volume",
      "all taker",
      "all maker",
      "additional 1 bp execution cost on the originally cheaper plan",
      "additional 5 bps execution cost on the originally cheaper plan"
    ],
    "holdsConstant": "Every case starts from the original scenario. Fixed costs and net funding stay unchanged. Only the named assumption changes.",
    "costAdvantageThresholdBps": "absolute(original Plan A total - original Plan B total) / executed volume * 10000",
    "boundary": "No per-volume threshold at zero volume. Differences below half a cent are display ties. No execution-cost cases for an original display tie. Out-of-limit cases are unavailable, never clipped.",
    "evidence": "Illustrative user-input counterfactuals, not probabilities, venue measurements, forecasts or eligibility decisions."
  }
}
