Знающий человек пишет о трейдинге в цитадели биржевой торговли: HTTP://WORLDCRISIS.RU/CRISIS/BANKER/AUTHOR_REPLICS_T
«А насколько сложнее создать эффективную сичтему электронной биржевой торговли!
В начале 2000х банк Ваковия попытался построить систему электронной торговли опционами, но пожидился потратиться и сделать все так, как надо. Вместо этого Ваковия украла систему у Ситигруп, переманив оттуда нескольких программистов. Но поскольку руки у этих перебежчиков оказались кривыми, то отладить систему на новом месте они не смогли, и остальные банки использовали Ваковию как дурачка, которому можно дорого продать, и у которого можно дешево купить.
Я, естественно, не знаком вообще со всеми программистами на Уолл Стрите. Поэтому расскажу только про тех, кто имеет отношение к маркет-мейкерам.
Используемые языки, в целом, тривиальны (не в смысле сложности, а в смысле распространенности): C++, C#, Java, Perl, Python, VBA. Только один банк имеет свой собственный язык. Называется этот банк Голдман Сакс (может, слышали про такой?). Кодовое название внутреннего голдмановского языка - SLANG и используется он почти везде, хотя я уверен, что маркет-мейкеры все же используют C++. Голдман, вводя свой собственный язык, преследовал две цели: во-первых, человек, проработавший 10 лет со Сленгом, уже забыл прочие языки, так что ему очень тяжело уйти в другой банк. Во-вторых, гораздо труднее украсть код, написанный на языке, который не используется в других компаниях.
Далее о том, как используют все эти языки.
В чем секрет успешных маркет-мейкеров? Нет, не в инсайдерской торговле (моя группа, например, не видит ничьи позиции и стоп-ордера, кроме своих). Обычные маркет-мейкеры не занимаются манипуляциями, поскольку SEC за этим очень жестко следит. Для манипулирования рынками где-то, наверное, существуют специальные отделы, но они сидят далеко не в каждом большом банке.
Секрет успешных маркет-мейкеров - в очень быстрых программах и каналах связи. Как зарабатывают деньги маркет-мейкеры? Они выставляют два лимит ордера (на покупку и на продажу), пытаясь заработать на спреде. Одна беда - если вдруг выходит важная новость (например, о том, что Китай увеличили свои золотые резервы на 75%), то толпа лемингов начинается ломиться в какую-то одну сторону. Понятно, что если толпа покупает и цена растет, то маркет-мейкеры продают, получая большую короткую позицию, что на таком рынке плохо сказывается на пищеварении. Чтобы этого избежать, у маркет-мейкеров есть только две возможности: 1) нужно постараться контролировать риски и оптимизировать портфель так, чтобы в каждый данный момент он был нейтральным (это проще делать, если инструментов очень много: скажем, в случае акций их тысячи); 2) нужно постараться придумать какой-то краткосрочный сигнал, который будет очень быстро предупреждать систему о том, что сейчас цена ломанется в каком-то направлении, что позволит либо очень быстро раздвинуть спред, либо наоборот схватить чей-то ордер, пока никто не очухался.
Для чего здесь нужны программисты. Понятно, что при обоих подходах можно развить довольно сложную математику. Но можно и не развивать, а обойтись относительно простыми моделями. Однако, есть одно требование, которое остается всегда: все должно работать очень быстро. На каждом рынке сидит добрый десяток крупных банков и хеджфондов, так что если конкурент оказался на 1 микросекунду быстрее тебя, ты проиграл, потому что ты не успел отменить свой ордер. Ну или более расторопный схватит самые вкусные ордера.
Поэтому ищутся люди, которые могут запрограммировать все так, чтобы действия торговой системы были максимально эффективными.
1) Если речь идет об оптимизации большого портфеля, то обычно нужно работать с очень большими матрицами. Если банк будет использовать стандартные пакеты из существующих распространенных библиотек, то никакого преимущества он не получит, так как любая домохозяйка может точно так же взять эти библиотеки и накатать код на C++. Поэтому стараются придумать что-то свое. Например, в последние года 2-3 особенно большим спросом пользуются программисты, умеющие программировать на видео-картах. Оказывается, графика на мониторах использует матричное представление пикселей, так что любая видео-карта представляет собой микропроцессор, специально заточенный для работы с матрицами. Маркет-мейкеры в банках программируют видео-карты, так что оптимизация портфелей производится именно на них. В итоге все просто летает. Программисты, умеющие это делать, в большом дефиците: хотя, в последнее время, положение немного улучшилось, но до насыщения рынка спецами еще очень далеко. Спец может легко зарабатывать полмиллиона - миллион в год.
2) Скорость соединений с биржами еще более важна. Если твой сервер, торгующий на Чикагской товарной бирже (CME), находится в Нью-Йорке, а сервер твоего конкурента - в Чикаго, то его ордер доходит до биржи на 100 миллисекунд быстрее. А это целая вечность. За это время вас обдерут, как липку. Поэтому все уважающие себя маркет-мейкеры держат сервера рядом с биржей, на которой они торгуют. В частности, в Чикаго есть одно здание, в котором аренда одного квадратного фута стоит в 20 раз дороже, чем в любом другом здании в радиусе нескольких миль. На первом этаже этого здания находятся сервера CME. На всех остальных этажах находятся сервера маркет-мейкеров. Программировать сверхскоростные соединения - это особое искусство. На рынке был, есть и, похоже, еще долго будет дефицит нормальных специалистов.
------------------
Еще одно важнейшее программистское направление Уолл Стрита - это управление большими базами данных. Чтобы настраивать свои модели, маркет-мейкерам приходится обрабатывать десятки терабайт исторических данных (в частности, нужно иметь в базе данных состояние стакана ордеров в каждый данный момент времени как мимимум года за 2-3). Например, суточный объем данных, поступающих с опционных бирж = 100 гигабайт в день.
Десятки терабайт в SQL не загонишь, в Excel тоже. Одним процессором не обработаешь. Возникает необходимость в создании суперкомпьютеров или хотя бы специальных кластеров, состоящих из сотен серверов, которые могут работать с такими объемами данных. Необходимы специальные методы хранения данных, а также специальные методы их быстрого считывания с накопителей и такой же быстрой записи. Для всего этого тоже нужны специалисты. И их тоже дефицит.
-------------------
Я не буду здесь рассказывать про стандартные занятия программистов в банках. Понятно, что полно других важных, но и более рутинных задач, которые необходимо делать (типа написания бухгалтерских систем, системное администрирование и прочее).
-------------------
В завершение. Монетаристы и прочие либералы утверждают, что возможности всех участников рынка одинаковы. Я здесь упомянул лишь несколько новейших направлений программистской деятельности, которая развилась на Уолл Стрите в последние годы. Банки тратят десятки и сотни миллионов долларов на развитие этих направлений. Они имеют доступ к огромным потокам информации, которые официально доступны всем, но стоимость которых такова, что мало, кто может за них платить. На банки работают сотни лучших специалистов в мире. Поэтому даже без манипулирования банки имеют громадное преимущество перед всеми остальными. Это преимущество материализуется в миллиарды долларов прибыли (например, швейцарский банк Credit Suisse делает на маркет-мейкинге и прочих статистических моделях 1.5 миллиарда долларов в год).
Напоминаю: биржа – игра с нулевой суммой. Тоесть, выиграть можно только за счёт проигравших. Вы хотите выиграть? Вы хотите потягаться с этой машиной на равных?
Вы пробовали детским совочком подбирать за роторным экскаватором?
Если такие как вы будут выигрывать, то за счёт кого же будут тогда зарабатывать банки?
Это ещё автор не пишет про манипуляторов биржами. Ибо не вхож в их круг и не знает. Там доходы покруче будут. А вот они зарабатывают как раз за счёт банков и госбанков.
К сожалению, в российских банках как-то не очень развито понимание того, что нужно инвестировать в новейшие технологии. Впрочем, в 2007-2008 годах положение начало меняться. Будем надеяться, что кризис не остановит этот процесс.
В России на трейдинге регулярно зарабатывают исключительно инсайдеры типа супруги вице-премьера Шувалова, которая за 2009 год заработала на бирже, как помню, 160 миллионов. И ещё немного брокеры за счёт своих клиентов. Ну, изредка сами клиенты, если урвут или угадают изредка инсайд.
В общем-то из списка языков хоть как-то выделяется Python и то не особо, хотя реально там должны как раз использовать несколько другие средства: языки для анализа данных (data mining) навроде R или Prolog. А SLANG это скорее всего какой-то диалект Lisp'а, что не особо-то критично