Блог им. DenisVo

Как ускорить python в 2000 раз, или как расчитывать максимальный дродаун со скоростью света :) (python, c++, cuda)

Смотрю некоторые люди интересуются темой как же скрестить питон и с++.

Так получилось что у меня есть ответ на этот вопрос. Не так давно я тут даже видео по этому поводу замутил, для примера был взят практический пример расчета ожидаемой максимальной просадки при условии что рынок будет обладать похожими характеристиками.



Видео на так себе английском, но в основном должно быть понятно большинству, можно включить автоматические русские субтитры. 

Код на гитхабе на посмотреть: github.com/CloseToAlgoTrading/CodeFromVideo/tree/master/Episode_MonteCarlo_MDD

Для завтравки картиночка по временими выполнения, можно видеть, что если обернуть с++ код и выполнить его на gpu, все это из питона, то получим увеличение производительности почти в 2000 раз %)

Как ускорить python в 2000 раз, или как расчитывать максимальный дродаун со скоростью света :) (python, c++, cuda)

Но конечно никто не будет в лоб реализовывать алгоритмы на питоне, есть же векторные операции и все такое, однако даже при этом получаем вот такую картину.
Как ускорить python в 2000 раз, или как расчитывать максимальный дродаун со скоростью света :) (python, c++, cuda)

Все эти красивые цифры можно получить без каких либо сложных операций. В общем кому интересно смотрите видео или код на гитхабе. 

зы. Ну и еще, всем у кого есть гпу, и кто хочет быстро обрабатывать данные пользуя почти весь функционал панды обратите внимание на RAPIDS и их cudf, а так же dask. Ну и про cupy не забудьте.

★17
9 комментариев
позитивчик)
торговать будем там где пустят.
алго рулит!
avatar
:X, У nvidia же спикрали код, всё на торрентах лежит)) А если они до пятницы не договорятся с хэкерами — те грозились и дизайны gpu слить. Так что, возможно, Китай со временем «импортозаместит» нам потерю.
avatar
Пень Пнём, апдейтить линукс тоже будем магнет линками.
как в фидо раньше)
вспомним девяностые.

avatar
:X, опен сорс не?
Это вопрос я думаю задают себе сейчас постоянно всё Опенсорсеры мира так они или за свободу для всех или за свободну для избранных?
avatar
В данном случае Монте-карло не только слишком требовательный к выч. мощностям, но и не слишком адекватный инструмент. Как не тасуй карты, но если в колоде нет джокера, он и не появится. А недавно, прямо на наших глазах, в реальности выпал тот самый джокер. 
avatar
SergeyJu, про информацию это всегда верно. 
Я кстати как раз таки пример спецом взял, монтекарло, на гпу он считает очень даже не плохо. 
avatar
А зачем нужно супербыстро считать эквити? Чтобы что?
Алексей Никитин, а причем тут эквити? дродаун метрика риска, вот ее и считаем )
Но суть в том, что можно считать, что угодано и очень быстро без особых трудозатра непосредственно в питоне.
avatar

теги блога CloseToAlgoTrading

....все тэги



UPDONW
Новый дизайн