[ANN] Hedgehog.jl - Derivatives Pricing in Julia

I’m excited to share that Hedgehog.jl is now available from Julia Registry.

What is it?

Hedgehog.jl is a modular, composable library for derivatives pricing in Julia. It’s built to help you price options, compute sensitivities, and calibrate models with clean, extensible building blocks.

Features

  • Price European and American options under various models
  • Compute Greeks via finite differences, AD (ForwardDiff.jl), or closed-form
  • Calibrate models to market quotes
  • Work with volatility surfaces and rate curves

Design

Hedgehog’s interface follows the SciML-style solve(problem, method) pattern, with clear separation between payoffs, market data, and pricing engines. It’s designed to be extensible — new models and methods can plug in easily.

Quick Example

using Hedgehog, Dates

strike = 100.0
reference_date = Date(2023, 1, 1)
expiry = reference_date + Year(1)
payoff = VanillaOption(strike, expiry, European(), Call(), Spot())
market = BlackScholesInputs(reference_date, 0.05, 100.0, 0.20)

problem = PricingProblem(payoff, market)
solution = solve(problem, BlackScholesAnalytic())
price = solution.price

Under the Hood

  • Pricing methods: analytical, binomial trees, Monte Carlo (leveraging DifferentialEquations.jl), Fourier
  • Greeks via ForwardDiff.jl or FD
  • Vol surfaces and calibration tools
  • MIT licensed and fully documented

Roadmap

Next steps include support for exotic payoffs (barriers, Asians), PDE pricing methods, and expanded interest rate modeling.

:backhand_index_pointing_right: GitHub: GitHub - aleCombi/Hedgehog.jl: A derivatives pricing library with AD sensitivities and calibration

4 Likes