Избранное трейдера Kot_Begemot
На этой неделе появилась новость о том, что инвесторы, потерявшие деньги по итогам экспирации WTI 21 апреля, готовят коллективный иск с помощью юридической компании Milton Legal .
У меня нет текста иска с правовой позицией юристов, поэтому анализ я делаю на основании их публичных заявлений о ситуации по сообщению (ссылка). Также добавил различные аргументы, которые высказывались на смартлабе.
В данном случае я провожу анализ исключительно с правовой точки зрения, т.е. исходя из действующего законодательства, судебной практики и документов биржи.
Итак, заявления юристов Milton Legal такие:
Достаточно важный и интересный кейс с точки зрения понимания надежности российской финансовой инфраструктуры и подсвечивающий запредельный уровень некомпетентности Мосбиржи. Суть в следующем: 20 апреля за день до экспирации основного майского контракта WTI на CME образовался навес в 25-30 тыс контрактов (25-30 млн баррелей) спекулятивных позиций, которые по непонятным причинам не были покрыты ранее. Уход маркетмейкеров и трудности в обеспечении поставок привели к принудительному закрытию спекулятивных позиций, что привело к самому сильному обвалу цен на нефть с переходом в экстремальную отрицательную область вплоть до минус 40.
Одновременно с WTI на CME в России через Московскую биржу торговалась реплика (производная на производную) на WTI (группа CL контрактов), но в отличие от основного контракта, в России с 19.22 (по данным биржи) произошла отвязка реплики от американской WTI. Это произошло на первой планке, но расширения торговых лимитов не было вплоть до окончания торгов. Биржа ссылается на отсутствие протоколов по расширению торговых лимитов на вечерней сессии, тогда как было несколько прецедентов по ликвидным контрактам (Ri, Si, Br), когда ранее на вечерней сессии лимиты расширяли. Само по себе это казус, когда в день или за день до экспирации отсутствуют протоколы контроля за рисками и непрерывного обеспечения торгов, что само по себе уже является прямым нарушением хода торгов. Участники торгов и брокеры (на которых лежит основной риск) лишены возможности управлять и балансировать своими позициями, а следовательно, в этом случае риски по кассовым разрывам должен брать на себя организатор торгов.
Не далее как вчера опубликовал топик "Смена x86 Quik 7.27.2.1 на x64 Quik 8.4.1.6. Пляски вокруг DLL", где кратко рассказывалось как перекомпилировать проект С++ с платформы х86 на х64. Надеюсь, что у вас все уже получилось или получится.
Но я «крутой» программист, и, естественно, у меня вначале вообще ничего и никак не получалось. А так как проект большой, да еще и непонятно в чем дело, а своими экспериментами я могу вообще все испортить, то решил сделать маленькую простенькую DLL LuaProba.dll, на ней отработать переход на х64, и потом перенести это в большой проект.
Привожу код С++ DLL целиком:
// LuaProba.cpp: определяет экспортированные функции для приложения DLL. // #include "stdafx.h" #include <stdio.h> #include <string.h> //=== Необходимые для Lua константы ============================================================================// #define LUA_LIB #define LUA_BUILD_AS_DLL //=== Заголовочные файлы LUA ===================================================================================// extern "C" { #include "Lua\lua.h" #include "Lua/lauxlib.h" } static int forLua_TestFunc(lua_State *L) // Возвращает заданный текст { const char *cc = "Привет из C/C++ и от меня 2 раза"; //str.c_str(); lua_pushstring(L, cc); return(1); } //= == Регистрация реализованных в dll функций, чтобы они стали "видимы" для Lua == == == == == == == == == == == == == == == ==// static struct luaL_reg ls_lib[] = { { "TestFunc", forLua_TestFunc }, { NULL, NULL } }; //=== Регистрация названия библиотеки, видимого в скрипте Lua ==================================================// extern "C" LUALIB_API int luaopen_LuaProba(lua_State *L) { luaL_openlib(L, "LuaProba", ls_lib, 0); return 0; }Весь проект DLL для VS 2015 можно скачать по ссылке -
Признаться уже достал этот 32-битный Quik 7. Работать стало почти невозможно, начал подвисать практически на пустом месте. А если повесить на Quik Lua, а к Lua прицепить DLL, то вообще все эпизодически вставало. DLL-ки, вообще-то, многопоточные и освобождают вызывающие потоки (события) Lua практически за миллисекунды, но если таких событий много Quik встает. Хотя, он и без Lua и DLL тоже регулярно встает.)
Были и другие причины ухода от 32-бит Quik, но это уже связано с брокером и другими факторами.
Итак, новый брокер — новый 64-битный Quik 8.4.1.6. Наконец сбылась мечта идиота!
Что можно сказать, — х64 Quik работает гораздо лучше, все равно временами немного подвисает, но, вроде, некритично. После логин-пароля, прежде чем работать надо подождать, — потоки обезличенных сделок начинают работать только через 3-4 минуты после старта. В общем, с этим все более-менее ОК.
Следующий этап — надо переводить весь подключаемый к Quik софт с х86 на х64, и если есть исходники, то никаких проблем не должно появиться. Если вы не используете в своем софте каких либо дополнительных DLL, то все должно ограничиваться двумя действиями.
1. Меняете в проекте С++ в разделе Файлы ресурсов 32-битную версию файла Lua5.1.lib на 64-битную версию Lua5.1.lib,
2. Выставляете в свой свойствах проекта компиляцию в x64. Можно даже так:
Возможно, не все знают про нелинейные эффекты грека Веги и волшебные свойства грека Воммы. По нынешним волатильным временам, когда вола ходит туда-сюда на десятки процентов — эти эффекты могут значительно повлиять на финрез при торговле волатильностью. Хочу поделиться своим видением — может кому будет интересно. А может кого убережет от опасной позиции с неоправданным риском.
Итак, рассмотрим проданный стрэдл:
Это обычный профиль PnL, который рисуют все опционные программы. Фактически, это зависимость PnL позиции от первого момента (M1) распределения вероятностей, где окажется цена БА на экспирацию (вон оно на заднем фоне профиля). M1 = текущей цене БА. Т.е. мысленно двигаем все распределение влево-вправо (меняем M1) и считаем, как изменится PnL позиции при этом. Но, когда торгуем волатильностью, влияние первого момента ведь стараемся исключать используя дельтахедж (ДХ). И в большей степени нас должен интересовать профиль PnL от второго момента распределения (M2). Именно от него зависит финрез торговли волатильностью. Фактически, M2 почти тоже самое, что IV на центре улыбки (IVC). Смотрел на истории, специальным образом нормированный M2 (на цену БА и время до экспы) коррелирует с IVC почти 100%.
Если у нас есть опционная модель, в которой можно точечно менять второй момент, то легко посмотреть профиль PnL от изменений M2. Я использую замечательную модель Курбаковского, в которой главный параметр mI — как раз и отвечает за второй момент. Поэтому добавил в своей программе отрисовку такого профиля. И вот что рисует для проданного стрэдла: