I hesitated to post this because ultimately ChatGPT is an AI-powered language model, capable of generating human-like text based on context and past conversations. I do not expect an english major to answer this question either. On the other hand, the AI pretends to know the answer (although it does not actually compute the price unless you specify that you want the USD value).
As found on ChatGPT Experts
Question for ChatGPT 3.5:
An investor wants to buy a call option with a strike of 110 for a
stock trading for USD 100 per share that expires in 6 months. the risk
free rate is 5% and the stock's volatility is 30%. What is the exact
USD price of the option using Black Scholes.
Answer:
To calculate the exact price of the call option in USD using the
Black-Scholes model, we'll use the formula:
$C = S_0N(d_1) - Xe^{-rt}N(d_2)$
Where:
- C = Price of the call option in USD
- $S_0$ = Current stock price = \$100 per share
- X = Strike price of the option = \$110 per share
- r = Risk-free interest rate = 5% or 0.05
- t = Time to expiration = 6 months = 0.5 years
- $\sigma$ = Volatility of the stock = 30% or 0.30
First, we need to calculate $(d_1)$ and $(d_2)$ using the
Black-Scholes formulas:
$ d_1 = \frac{\ln(S_0/X) + (r + (\sigma^2)/2)t}{\sigma\sqrt(t)}$
$d_2 = d_1 - \sigma\sqrt{t}$
Now, let's calculate $(d_1)$:
$d_1 = \frac{\ln(100/110) + (0.05 + (0.30^2)/2) * 0.5}{0.30 * \sqrt(0.5)}$
First, calculate the values inside the parentheses:
$\ln(100/110) = \ln(0.9091) \approx -0.0953$
$(0.05 + (0.30^2)/2) * 0.5 = (0.05 + 0.045) * 0.5 = 0.0475$
Now, calculate $(d_1)$:
$d_1 = \frac{-0.0953 + 0.0475}{0.30 * \sqrt{0.5}}$
$ d_1 =
\frac{-0.0478}{0.2121} \approx -0.2253$
Next, calculate $(d_2)$:
$d_2 = -0.2253 - 0.30 * \sqrt{0.5} \approx -0.5706$
Now, use a standard normal distribution table or calculator to find
$N(d_1)$ and $N(d_2)$.
- $N(d_1) \approx 0.4107$
- $N(d_2) \approx 0.2857$
Finally, plug the values into the Black-Scholes formula to calculate
the exact price of the call option in USD:
$C = 100 * 0.4107 - 110 * e^{-0.05 * 0.5} * 0.2857$
Now, calculate the values inside the formula:
$C = 41.07 - 110 * 0.9751 * 0.2857$
$C = 41.07 - 31.60$
Now, calculate the final price of the call option in USD:
$C \approx 9.47$
So, the exact price of the call option using the Black-Scholes model
is approximately $9.47 in USD per share.
Correct answer
The generated answer is actually quite impressive. Yet, if you compute the values, you realize d2 is wrong, and the actual option value is 5.58, not 9.47.
In Julia:
# generic put call pricer
function BSM(S,K,t,rf,σ)
d1 = ( log(S/K) + (rf + 1/2*σ^2)*t ) / (σ*sqrt(t))
d2 = d1 - σ*sqrt(t)
c = exp(-d*t)S*N(d1) - exp(-rf*t)*K*N(d2)
return c, d1, d2, N(d1), N(d2)
end
s,k,r,t,σ = 100, 110, 0.05, 0.5, 0.3
call = BSM(s,k,t,r,σ)
DataFrame("option value" => call[1], "d1" => call[2] , "d2" => call[3] , "N(d1)" => call[4] , "N(d2)" => call[5] )
Result

Interestingly, asking ChatGPT what the result of $d_2 = -0.2253 - 0.30 * \sqrt{0.5}$ is provides the correct answer.
To calculate the expression:
-0.2253 - 0.30 * sqrt(0.5)
First, calculate the square root of 0.5:
sqrt(0.5) ≈ 0.7071 (rounded to four decimal places)
Now, substitute this value back into the original expression:
-0.2253 - 0.30 * 0.7071
Next, multiply 0.30 by 0.7071:
0.30 * 0.7071 ≈ 0.21213 (rounded to five decimal places)
Now, subtract 0.21213 from -0.2253:
-0.2253 - 0.21213 ≈ -0.43743
So, the result is approximately -0.43743.
Google bard claims its 8.49 and shows as the final step:
0.6827 * 100 - 0.6179 * 110 * exp(-0.05 * 0.5)
= 68.27 - 67.99
= 8.49
It does seem to learn on the go though, because after asking what 68.27 - 67.99 is, bard responses that
68.27 - 67.99 = 0.28.
I apologize for my previous mistake. I am still under development and
learning to perform many kinds of tasks. I will try my best to avoid
making similar mistakes in the future.