How does this square with "past market returns are do not (entirely) determine future market returns"? Surely the same applies to the historical stddev?
The variance component, implied volatility, is more often than not treated as the _output_ of the equation. By looking at the prices of options you can determine what the market currently, implicitly, estimates the future variance of underlying to be. Lots of options trading involves taking a position on whether you think that implicit estimate is too high or too low. Generally, a long options position encodes belief…
Black-Scholes/Merton makes a lot more sense once you work it all out yourself in code.
I'd actually suggest doing this through modeling the underlying geometric Brownian motion and ensuring that your simulated results match up to the analytic formula.