{
  "sources": [
    {
      "url": "https://raw.githubusercontent.com/jiayaoqijia/amm-challenge-yq/3e9dc7d5a6192c88b562a0f8d9c172ca566ec94d/contracts/src/Strategy.sol",
      "quote": "uint256 constant STALE_DIR_COEF = 6850 * BPS;"
    },
    {
      "url": "https://raw.githubusercontent.com/jiayaoqijia/amm-challenge-yq/3e9dc7d5a6192c88b562a0f8d9c172ca566ec94d/README.md",
      "quote": "**Asymmetric Stale Direction Discount** — The attract side gets more stale discount than the protect side, improving retail flow capture."
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_competition/competition/match.py",
      "quote": "rng = np.random.default_rng(seed=i)"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_competition/competition/config.py",
      "quote": "n_simulations=1000,\n    n_steps=10000,\n    initial_price=100.0,\n    initial_x=100.0,\n    initial_y=10000.0,"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/simulation/engine.rs",
      "quote": "let mut retail_trader = RetailTrader::new(\n            self.config.retail_arrival_rate,\n            self.config.retail_mean_size,\n            self.config.retail_size_sigma,\n            self.config.retail_buy_prob,\n            Some(seed + 1),\n        );"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_sim_rs/src/evm/strategy.rs",
      "quote": "const GAS_LIMIT_INIT: u64 = 250_000;\nconst GAS_LIMIT_TRADE: u64 = 250_000;"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/contracts/src/VanillaStrategy.sol",
      "quote": "uint256 public constant FEE = 30 * BPS;"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/amm_competition/evm/compiler.py",
      "quote": "\"viaIR\": True,\n                    \"evmVersion\": \"paris\","
    },
    {
      "url": "https://medium.com/@crypto_algebra/amm-fee-challenge-notes-from-our-run-on-optimization-arena-4e980dbbd699",
      "quote": "Another useful property of the simulator was block ordering. Arbitrage could only be the first trade in a block."
    },
    {
      "url": "https://raw.githubusercontent.com/dipankar/amm-challenge/c588ae6c47fc9af2063c9bb1f2efbeb0dd276dab/ANALYSIS.md",
      "quote": "The key insight: **fair price is hidden but estimable.** Every trade gives you an implied price."
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/contracts/src/AMMStrategyBase.sol",
      "quote": "uint256[32] public slots;"
    },
    {
      "url": "https://raw.githubusercontent.com/benedictbrady/amm-challenge/6b6921f8d463314aa7c96234e1be25a25245f704/contracts/src/StarterStrategy.sol",
      "quote": "uint256 public constant FEE = 50 * BPS;"
    }
  ]
}
