Нет, это потребовало бы, чтобы каждая цена соответствовала только одному уровню сигмы, например, чтобы ваша функция была монотонной. Вы не можете гарантировать это.
Что вы можете сделать, это сделать так, чтобы Джулия итеративно оптимизировала вашу функцию, чтобы вы нашли те значения сигмы, которые приводят к наименьшей разнице между выходом функции и вашей ценой. У Джулии есть несколько пакетов для такого рода вещей, взгляните на Optim.jl. Например, эта страница: https://julianlsolvers.github.io/Optim.jl/stable/#user/minimization/#minimizing-a-univariate-function-on-a-bounded-interval
Ваша функция не одномерна, но это легко сделать, присвоив значения переменным, которые вы не оцениваете:
f(σ) = OptionBlackSFs(2,3,4,5,σ,6) - input_price
и затем передайтев Optim, который будет решать для входов, которые делают вывод f
как можно ближе к 0. Более приятный, но немного более сложный синтаксис может быть
let S = 2, K = 3, m = 4, y = 5, δ = 6, input_price = 100
global f(σ) = OptionBlackSFs(S,K,m,y,σ,δ) - input_price
end