Блог им. _sg_
Есть в интернете великолепный ресурс по опционным Greeks «en.wikipedia.org/wiki/Greeks_(finance)» — почему то всю строку не захватывает. Применяйте Copy/Paste
И каждый раз когда я захожу на этот сайт, как всегда медленно и печально, меня посещает одна и та же мысль, что чего-то на нем не хватает.
Но недавно я понял что именно. В таблице Греков есть дыры и из них тянет сквозняком.
А в конце абзаца под таблицей есть фраза:
Three places in the table are not occupied, because the respective quantities have not yet been defined in the financial literature.
Не все ячейки матрицы заняты, потому что не определены в финансовой литературе.
Ё К Л М Н. Столько лет торгуем опционы и не все ячейки заполнены.
V — Fair Value опциона.
Как видно в столбце Theta нет сразу двух Греков.
Давайте их придумаем и воспроизведем сами. А что, а вдруг.
1. dTheta/dT == d2V/dT2 — аналог Gamma = dDelta/dS == d2V/dS2
2. d2Theta/dT2 == d3V/dT3 — аналог Speed = dGamma/dS == d3V/dS3
Дадим им названия, которые как то должны ассоциироваться со временем Time. Theta связана со временем.
Поэтому 1-ю назовем (предварительно) Tamma — по аналогии с Gammой. Tamma = d2V/dT2, Gamma = d2V/dS2 — похоже.
Вторую назовем Timma по аналогии с Греком 3-го порядка Ultima = d3V/dSigma3. Timma = d3V/dT3 — тоже похоже
Ну и все. 90% работы уже сделано. Ведь главное назвать правильно, потому что как назовешь лодку так она и поплывет.
Остальное дело техники.
1. Tamma = dTheta/dT.
Надо дифференцировать dTheta/dT. Но что-то формула Theta уж больно забористая.
Выразим Theta через Gamma. Theta = -0.5 * S^2 * sigma^2 * Gamma.
dTheta/dT = -0.5 * S^2 * sigma^2 * dGamma/dT.
dGamma/dT = Color =>
Tamma = dTheta/dT = -0.5*S^2*sigma^2*Color.
Готово.
Код на С#
public static double ThetaGammaFactor(double S, double sigma)
{
return -0.5 * sigma * sigma * S * S;
}
public static double Tamma(double S, double K, double T, double sigma, double r, double q)
{
var ta = ThetaGammaFactor(S, sigma) * Color(S, K, T, sigma, r, q);
return ta / 365.0d;
}
2. Timma = d2Theta/dT2 = d3V/dT3 = dTamma/dT (которую мы уже имеем)
Поэтому Timma = dTamma/dT = -0.5 * S^2 * sigma^2 * dColor/dT. Производную dColor/dT не сложно вычислить.
Сразу приведу код С#, чтобы Вас не мучить.
public static double Timma(double S, double K, double T, double sigma, double r, double q)
{
var logSK = Math.Log(S / K);
var logSK2 = logSK * logSK;
var logSK4 = logSK2 * logSK2;
var sigma2 = sigma * sigma;
var sigma4 = sigma2 * sigma2;
var sigma5 = sigma4 * sigma;
var sigma6 = sigma4 * sigma2;
var sigma8 = sigma4 * sigma4;
var Sqrt2pi = Math.Sqrt(2.0 * Math.PI);
var T9 = T * T * T * T * T * T * T * T * T;
var t1 = 1.0 / (Sqrt2pi * S * T9 * sigma5);
var t2 = Math.Exp(-(0.5 * (logSK + 0.5 * T * sigma2) * (logSK + 0.5 * T * sigma2)) / (T * sigma2));
var t3 = 0.25 * logSK4 * Math.Pow(T, 4.5) +
logSK2*(-0.125 * Math.Pow(T, 6.5) * sigma4 — 1.5 * Math.Pow(T, 5.5) * sigma2) +
0.015625 * Math.Pow(T, 8.5) * sigma8 + 0.125 * Math.Pow(T, 7.5) * sigma6 +
0.75 * Math.Pow(T, 6.5) * sigma4;
var clr = t1 * t2 * t3 * ThetaGammaFactor(S, sigma) / 365.0d;
return clr;
}
Готово.
Как проверить, что все правильно ?
Tammа проверяем через интегрирование. Интеграл [t1,t2] Tamma dT = Theta
Timma проверяем через интегрирование. Интеграл [t1,t2] Timma dT = Tamma.
Пару тестов написал. У меня все сошлось.
ПС. Вселенная всесильна, безразмерна и бесконечна. Прекрасна со всех сторон.
Но иногда приходится латать в ней некоторые проплешины.
Всего хорошего. До новых встреч в эфире.
Вот такие сырники получились,… с изюмом.
ПС. Возможны ошибки, очепятки в тексте — исправим. НО КОД РАБОТАЕТ.
Также принимаю заявки на изменение названий новым Грекам.
— А теперь, уважаемые пассажиры, мы попробуем со всей этой.уйнёй взлететь заработать в опционах прибыль.
О'Грин, так в этом и суть опционной торговли.
Все тащатся, что они такие умные. И деньги им не нуДны.
Только я по жизни продвинутый прикладник, а они мощнее оперируют очень отвлечёнными образами.
А вот что для низменного вынимания прибыли из рынка эффективнее — компьтерный подбор комбинации шифра замка или примитивная кувалда — это уж только эквити каждого на дистанции показывает…
О'Грин, плавали, знаем.
я тоже прикладник, поэтому хорошо понимаю о чем Вы говорите.
Одни новые тенденции в науке изучают, покуривая сигары.
А другие с высунутым языком по заказчикам и поставщикам носятся как угорелые.
А потом у тебя еще и спросят. А ты что до сих пор теорию Струн не знаешь ?
Я вот в теории струн в своё время покопался как следует ( в сути, без формул) — в принципе — интересно, имеет право на жизнь как вариант устройства Мироздания.
Но вот только ни я, ни кто-нибудь другой не сможет даже с виртуозным владением этой теорией заработать деньги хоть на бирже, хоть в реальной жизни прикладником.
Роман Бесходарный,
люблю наступать на разные места.
Молодею от этого.
Энергия от Наступаемых переходит к Наступающим.
ЗОЖ.