погуглите «логарифм/корень/экспонента/функция положительно определенной симметричной матрицы» — так вы сможете естественным образом обобщить свою одномерную модель
самое сложное это понять, что по пути не потерялась положительная определенность, а корреляции будут гулять из-за динамики лямбд, даже если вы фиксируете базис
почему не сделать просто матрицу совместной ковариации и дать ей жить стохастически?
чтобы она «правильно» жила — её надо отправить в собственный базис и «дать жить» двум собственным значениям и углу поворота
вообще любая положительно-определённая симметричная матрица приводима к С = P^T L P — где P — ортогональная и задаётся углами поворотов в плоскостях, а L — матрица собственных значений
короче, то что вы делали для логарифма сигмы^2 в одномерном случае (там ничто никуда поворачивать не надо) — для двумерного это логарифмы lambda_1 и lambda_2, правда появляется еще угол \phi, на который тоже нужно придумать динамику
с ходу не помню как там точно выразятся [ко]вариации через лямбды и фи, но в итоге у вас получится, что корреляция точно «случайно» не вылезет из [-1;+1]
пока вы пишите динамику для логарифмов лямбд — положительную определенность вы точно не потеряете
про динамику углов — проще всего конечно на неё забить — зафитить и сказать, что хз откуда, но вот так.
стоит понимать, что корреляция зависит не только от углов, но и от того, что у вас есть динамика лямбд — корреляция тоже будет меняться
посложнее — это отпустить углы в брауновское движение, не важно, что они перейдут через 2пи или минус, тут важнее отпустить их в довольно лёгкое движение, не для описани динамики, а просто, чтоб создать фреймворк для учета этого риска
минреверс для углов тоже наверное можно придумать, но как бы это перебор
вообще в n-мерных моделях n дополнительных динамик — это n^2 непонятных коэффициентов в подарок ))))
Alex Craft, не… ну какое-то же распределение вы все равно можете сгенерировать на месяц вперед? вот относительно этого сгенерированного распределения разве не получится посчитать правдоподобие реализаций? или это тяжеловесно по вычислениям?
Alex Craft, яуже уточнял, но как-то ответ вылетел из головы:
если вы зафитили процесс:
А) на дневных данных и построите распределение на месяц вперед (20-22 шага)
Б) на месячных данных и построите распределение на месяц вперед (1 шаг)
вот правдоподобнее окажется А или Б? у меня обычно Б получалось
Alex Craft, варсвоп — это кроме прочего — constant gamma портфель, если у вас процесс не нормальный — ну прикиньте гамму в вашем сетапе и сделайте её констант, получится «немного другой» варсвоп, и его вероятно надо будет подравнивать если отъехало, но это мелочи, реальная проблема это то, что коварсвоп из ванилы не собирается :( есть конечно максималистический подход «но у нас же есть индекс, вот в нём коварианс таки вылезет» но это вообще не про портфель из 2х акций и туда порог высоковат
в итоге — хуже ли фитить правдоподобие чем финрез? — в теории правдоподобие лучше, потому, что кумулятивное правдоподобие очень физично — оно отражает накопленную информацию за период, и [ко]варсвоп это natural strategy, а во финрез — это всё-таки эффект управления ))))
на практике — фитить «вообще всё» под финрез — сложно и методологически не правильно, оптимизатор очень полюбит точки, где «пришло много и быстро» и загонит параметры так, чтобы было 2-3 удачных трейда, а остальное время ничего не делалось
опять же — а как именно оптимизатор недооценивает «то, что вам нужно»:
— смещенно? — это проблема модели и стоит что-то сделать с моделью
— не смещенно, но все равно не нравится как получилось? — дело в стратегии, там где «всё не так» — ваша позиция оказывается ковариирована с dPrice не так, как вам подсказывает ваше чувство прекрасного (personal utility function)
разумеется, вам бы хотелось, чтобы размер позиции устойчиво и положительно ковариировал с (будущим) dPrice, правильно?
к чему весь этот спич:
— чем меньше оптимизатор (который фитит ценовой процесс) знает о вас тем лучше, он занимается информацией, а не вашим чувством прекрасного ))))
— результат модели надо в том числе проверять на несмещеность не только в среднем, но и сделать несколько бакетов по какому-нибудь из параметров — и посмотреть, а как оно в частности в режимах А и Б, может получится, что модель смещенная в частностях, но в среднем всё как бы ок — это проблема
— стратегия — это уже следующий уровень. воспринимайте ваш финрез как процесс:
или же
dResult_next = Position_current(info_current) * dModelPrice_next + Position_current(info_current) * error
в таком случае — ваш суммарный рез это вобщем-то коварианс Position (стратегии) и dModelPrice_next (модели) + коварианс Position и error
коварианс стратегии с моделью это \mu вашего портфеля, а с ошибкой — \sigma вашего портфеля, и вот тут становится понятно, что error лучше иметь не смещеный (и вообще не зависимый от dModelPrice_next и Position_current) иначе у вас и результат будет каким-то сложным гарч-процессом — а зачем?
объяснил как смог )))) вообще всё написанное пришло из хфт/маркетмейкинга/варсвопов, как это применять в вашем случае — ну если вы планируете нажимать кнопку раз в месяц — то по хорошему и модель надо брать с таймфреймом нажимания кнопки — месяц и относительно этой модели выстраивать оптимальную стратегию (правила нажимания кнопки раз в месяц), этакий slow-hft-style )))
сейчас будет сложно: придумайте стратегию, где правдоподобие и финрез это одно и то же, подсказка — это про [ко]вариационные свопы, можно ли это собрать из того что торгуется (ванила) — статично — только варсвоп
Alex Craft, честно говоря не смогу коротко описать всю драму, которая получается из того, что ставки не совпадают… с точки зрения леммы Ито там конечно же пофиг какая «физическая» мю у процесса, но Ито это недостижимая идеализация, мгновенного точного рехеджа не получится
так же, у вас процесс еще и для сигмы, который тоже в дифференциале Ито должен быть и у захеджированного по дельте опциона всё равно остаётся риск по сигме сигмы, и получается, что должен бы соблюдаться некоторый паритет с риск-премией самого актива
еще есть разница о чем говорить — о dП/П, или о dlnП (П — опционный портфель), но это больше про аккуратность, а то часто появляется иллюзия бесплатной сигма^2/2
в общем [иметь риск премии] — становится как-то слишком уж муторно, потому, что у активов практически никогда нет паритета в цене риска (т.к. от модели никак этого и не требовали при обучении)
и… цена риска — это многофакторная история, акцент на многофакторная, потому, что какой-то фактор может стоить так, а какой-то по-другому
Alex Craft, келли это всё очень хорошо, но почти наверное получится, что ожидаемая доходность не равна безрисковой ставке ...
и если по модельному распределению проэкспектэйтить опционы, то путы (на рынке) получаться прям жуть какими дорогими и в голову придёт «светлая» мысль «а не продать их?» )))
ну если ты нигде не ошибся и раз уж у тебя в итоге получилось то, что может сгенерить распределение, то естественный наипервейший вопрос — какое мю у получившегося распределения? если там больше 10% годовых то это вряд ли проходит реалити-чек, второе, но это сложнее — оценить какую-нибудь опционную серию [до которой не будет дивов по пути] сопоставить с тем что есть. вообще я бы смотрел что оно выдаст на SPY, там и опционы расторгованы и дивы более менее предсказуемо-постоянны
и да — обычно столь монструозные ресёрчи тупо заканчиваются «светлой» идеей продавать путы… со всеми вытекающими ))))
ну как сказать… на топ 10% вы увидите эффект прям сильно, на топ 33% увидите, на топ 50% да тоже наверное увидите только слабее
по сути разговор о том, что autocorrel(lag=1) = f(sigma), про «топ NN%» это я для простоты написал, а так — совсем по умному — правильнее взять сколько-нибудь бинов по сигме и в них смотреть распределение реализовавшихся автокорреляций
Stanis, по-моему это чей-то «беспокойный» мозг заставляет носиться с этой чудо-картинкой без малого 20 лет по форумам, думаю на деле там всё так же только ниже нуля
Alex Craft, т.е. увидеть это — довольно просто, а вот понять какой стохдифур смог бы так — уже не очень просто, это должно быть в \mu какое-то слагаемое типа \sigma^2(n-1) * r(n-1) ...
вобщем это еще один повод фиттить «на батчах» модели для \mu \sigma как функции ограниченной глубины только от r(n-i), но чтоб поймать такой эффект это мю должна быть аж полиномом третей степени, а это уже просто не прилично
еще — есть эффект, про который не принято писать — на участках с высокой волатильностью — автокорреляция заметно отрицательна, хотя я и сам не особо понимаю как это можно попроще воспроизвести…