Топ Куант Ц ++ библиотека за квантитативне финансије

Essential Scale-Out Computing by James Cuff (Јули 2019).

Anonim

Од алгоритамске трговине до проблема са финансијским инжењерингом, Ц ++ библиотеке играју кључну улогу у компјутерско интензивним деловима које у суштини захтијевају високо квалификоване стручњаке из области финансија, математике и статистике. Једна од примарних предности Ц ++ библиотека је што су изузетно брзе и робусне и најчешће се користе у рачунарским апликацијама високих перформанси. Већина фирми за високу фреквенцију и чак професионалне (не-ХФТ) алгоритамске трговачке фирме користе Ц ++ / Ц за стратегију за тестирање и креирање стратегије.

Погледајмо неке од најпопуларнијих Куант Ц ++ библиотека.

КуантЛиб - је библиотека Ц ++ за финансијске квантитативне аналитичаре и програмере. Пројекат отвореног кода КуантЛиб-а је започео 2000. године у италијанској бизнис менаџменту за управљање ризиком РискМап (сада позван СтатПро Италиа). Први КуантЛиб пакет је објављен у децембру 2000. године под либералном БСД лиценцом. Ово је омогућило банкама и софтверским компанијама да прошире и модификују код без потребе да га поново пусте. Пројекат данас има више од 150 сарадника, а неки од њих значајно доприносе. КуантЛиб захтијева Боост Ц ++ библиотеке као предуслов и мора бити засебно инсталиран како за Убунту, тако и за Виндовс

Огромне варијанте модула подржава Куантлиб. Неки од главних модула су нумерички типови, макрои Куантлиб, услужни програми, валуте и фиксне стопе, шаблони дизајна, калкулације датума и времена, математичке алатке (генератори псеудо насумичног броја, алгоритми за проналажење корена и методе оптимизације), оквири Коначне разлике, решетка Методе, Монте-Царло оквир, готовински токови, терминске структуре, индекси, цитати, цене за моторе, финансијски инструменти, власнички модели, тржишни модели, краткорочни оквир за моделирање, модели волатилности, стохастички процеси.

Куантлиб долази и као Куантлиб Екцел Аддин и извози функционалност библиотеке аналитике КуантЛиб Ц ++ у Мицрософт Екцел. КуантЛиб је доступан као Ц #, Гуиле, Јава, МзСцхеме, Перл, Питхон и Руби модул помоћу СВИГ-а. Такође су на располагању експериментална везивања за ГНУ Р и Објецтиве Цамл.

Армадилло - Армадилло је библиотека високог квалитета линеарне алгебре (матрична математика) за језик Ц ++, која има за циљ добру равнотежу између брзине и једноставности коришћења. Његова синтакса је сасвим слична Матлаб / Оцтаве. Може се користити за директне апликације у машинском учењу, препознавању узорака, рачунарском виду, обради сигнала, биоинформатици, статистици, финансијама итд. Обезбеђује разне матричне декомпозиције и ефикасне класе за векторе, матрице, коцкице, цијели број, плутајућу тачку и сложене бројеве операције.

Армадилло ће радити с компајлерима који подржавају старије стандарде Ц ++ 98 и Ц ++ 03, као и нове стандарде Ц ++ 11 и Ц ++ 14. Армадилло такође пружа везу / интерфејс за питхон (арманпи) и Р (РцппАрмадилло продужетак).

Еиген -Еиген је библиотека шаблона за Ц ++ за линеарну алгебру: матрице, вектори, нумерички солвери и сродни алгоритми. Такође се сматра алтернативом библиотеки Армадилло. Еиген подржава све матричне величине, од малих фиксних матрица до произвољно великих густих матрица, па чак и ретких матрица. Подржава разне матричне декомпозиције, геометријске функције, стандардне нумеричке типове, укључујући сложене, интегерс и лако се може проширити до прилагођених нумеричких типова. Еиген нема никаквих зависности, осим стандардне библиотеке Ц ++. Еиген је стандардни Ц ++ 98 и би требало теоретски бити компатибилан са било којим компатибилним компајлером.

Боост - велика колекција рецензираних кодова који покривају широк спектар домена. То је скуп библиотека за програмски језик Ц ++ који пружа подршку задацима и структурама као што су линеарна алгебра, генерисање псеудо-случајног броја, мултитхреадинг, обрада слике, регуларне изразе и јединично тестирање. Садржи преко осамдесет појединачних библиотека. Библиотека Боост има огромне апликације у рачунарском финансирању

ГСЛ - ГНУ научна библиотека (ГСЛ) је нумеричка библиотека за програмере Ц и Ц ++. То је бесплатан софтвер под ГНУ Генерал Публиц Лиценсе. Библиотека нуди широк спектар математичких рутина као што су Генератор случајних бројева, Линеарна алгебра, Диференцијалне једначине, Монте-Царло интеграција, комплексни бројеви, еиген функције, корени полинома, вектори и матрице, БЛАС подршка и још много тога. ГСЛ је развијен на ГНУ / Линук са гцц-ом, ипак подржава главне платформе укључујући и Мицрософт Виндовс.

Пакет ГЛПК - (ГНУ Линеар Программинг Кит) намијењен је за рјешавање великих линијских програмирања (ЛП), мјешовитог интегралног програмирања (МИП) и других сродних проблема. То је скуп рутина написаних у АНСИ Ц и организован у облику позивне библиотеке.

БЛАС - Подпрограми БЛАС (Басиц Линеар Алгебра) су рутине који пружају стандардне грађевинске блокове за обављање основних операција вектора и матрице. Ниво 1 БЛАС врши скаларне, векторске и векторске векторске операције, ниво 2 БЛАС извршава операције матричног вектора, а ниво 3 БЛАС извршава матричне матричне операције. Будући да су БЛАС ефикасни, преносиви и широко доступни, они се најчешће користе у развоју висококвалитетног софтвера за линеарну алгебру

ЛАПАЦК ++ - Ектенсион Линеар Алгебра ПАЦКаге (ЛАПАЦК) за лажне алгебре израчуна високих перформанси. Ова верзија укључује подршку за решавање линеарних система помоћу ЛУ, Цхолески и КР матричних факторизација.

Интел МКЛ - Интелова библиотека математичких језгара (у Ц ++), библиотека оптимизованих математичких рутина за науку, инжењеринг и финансијске апликације. Интел Матх Кернел Либрари (Интел® МКЛ) убрзава процесирање математике и неуронске мреже које повећавају перформансе апликација и смањују развојно вријеме. Укључује високо векторизоване и линеарне алгебре, брзу Фоуриерову трансформацију (ФФТ), функције неуронске мреже, векторска математика и статистике.

Блитз ++ - Блитз ++ је библиотека Ц ++ класа за научно рачунарство која пружа перформансе на нивоу са Фортран 77/90. Користи технике шаблона за постизање високих перформанси. Блитз ++ пружа густе низове и векторе, генераторе случајних бројева и мале векторе (корисне за приказ мултикомпонентних или векторских поља).

Длиб -Длиб је модеран Ц ++ алат који садржи машине за алгоритме за учење и алате за креирање сложеног софтвера у Ц ++ решавању проблема у реалном свету. Користи се иу индустрији и на универзитетима у широком спектру домена, укључујући роботику, уграђене уређаје, мобилне телефоне и велика рачунарска окружења високих перформанси.

Схарк - Схарк је брза, модуларна, обиљежена библиотека за учење рачунара са отвореним изворима Ц ++. Обезбеђује методе за линеарну и нелинеарну оптимизацију, алгоритме учења базираних на језгру, неуронске мреже и различите друге технике учења машинерије. Схарк зависи од Боост и ЦМаке. Компатибилан је са Виндовс, Соларис, МацОС Кс и Линук

Млпацк је библиотека за учење рачунара Ц ++ са нагласком на скалабилност, брзину и једноставност коришћења. МЛПацк пружа функционалности као што су колаборативно филтрирање, стабло процјене густине, кластерирање к-Меанс, анализа главних компоненти, модели Гауссове смеше, скривени Марков модели, перцептрони, линеарна регресија и многи други алгоритми учења алатки.

АЛГЛИБ - је цросс-платформна нумеричка анализа и библиотека за обраду података. Подржава неколико програмских језика (Ц ++, Ц #, Пасцал, ВБА) и неколико оперативних система (Виндовс, Линук, Соларис). АЛГЛИБ функције укључују:

Анализа података (класификација / регресија, укључујући неуронске мреже)
Оптимизација и нелинеарни солвери
Интерполација и линеарна / нелинеарна монтажа најмањих квадрата
Линеарна алгебра (директни алгоритми, ЕВД / СВД), директни и итеративни линеарни солвери, Брза Фоуриерова трансформација и многи други алгоритми (нумеричка интеграција, ОДЕ, статистика, специјалне функције)

Алглиб долази под слободним и комерцијалним издањима.

ТА-Либ - ТА-Либ се широко користи од стране трговинских произвођача софтвера који захтијевају техничку анализу података о финансијском тржишту. Укључује 200 индикатора као што су АДКС, МАЦД, РСИ, Стоцхастиц, Боллингер Бандс итд. Свјетлосни знак препознавања. Долази као опен-соурце АПИ за Ц / Ц ++, Јава, Перл, Питхон и 100% Манагед .НЕТ, па чак и Екцел Адд-ини су доступни

У случају да сам пропустио било коју популарну квантну библиотеку ц ++, овде коментаришите како би нам нешто боље обавестили.