{
  "tool_id": "execution-simulator",
  "slug": "execution-simulator",
  "path": "/execution-simulator/",
  "mode": "client_side",
  "usage": "Client-side execution simulator. Open https://aifinhub.io/execution-simulator/ and configure order size, ADV, spread, volatility, participation rate, and latency. Square-root permanent impact + linear temporary impact + latency drift are computed in-browser.",
  "methodology": "https://aifinhub.io/methodology/execution-simulator/",
  "sample_input": {
    "tool": "execution-simulator",
    "side": "buy",
    "order_size": 50000,
    "adv": 5000000,
    "spread_bps": 8,
    "daily_vol_pct": 2,
    "participation_pct": 10,
    "latency_ms": 150,
    "latency_jitter_ms": 40,
    "ref_price": 100
  },
  "input_schema": {
    "type": "object",
    "properties": {
      "tool": {
        "type": "string"
      },
      "side": {
        "type": "string"
      },
      "order_size": {
        "type": "number"
      },
      "adv": {
        "type": "number"
      },
      "spread_bps": {
        "type": "number"
      },
      "daily_vol_pct": {
        "type": "number"
      },
      "participation_pct": {
        "type": "number"
      },
      "latency_ms": {
        "type": "number"
      },
      "latency_jitter_ms": {
        "type": "number"
      },
      "ref_price": {
        "type": "number"
      }
    },
    "required": [
      "tool",
      "side",
      "order_size",
      "adv",
      "spread_bps",
      "daily_vol_pct",
      "participation_pct",
      "latency_ms",
      "latency_jitter_ms",
      "ref_price"
    ]
  },
  "output_schema": {
    "type": "object",
    "properties": {
      "side": {
        "type": "string",
        "enum": [
          "buy",
          "sell"
        ]
      },
      "permanentBps": {
        "type": "number"
      },
      "temporaryBps": {
        "type": "number"
      },
      "halfSpreadBps": {
        "type": "number"
      },
      "totalBps": {
        "type": "number"
      },
      "totalDollars": {
        "type": "number"
      },
      "notionalUsd": {
        "type": "number"
      },
      "durationMinutes": {
        "type": "number"
      },
      "latencyDriftBps": {
        "type": "number"
      },
      "latencyDriftWorstBps": {
        "type": "number"
      }
    }
  }
}
