Python для трейдера

Python – кросс-платформенный язык, который обладает очень простым и читаемым синтаксисом. Спасибо druidkgm и Doctor Leo за то, что они обратили мое внимание на этот язык. Раньше я использовал C# для своих прикладных задач, это тоже отличный язык, но в некоторых случаях нужно написать в 3-5 раз больше кода чем на Python или Matlab, чтобы добиться решения одной и той же задачи.

Конечно же я полностью не отказался от C# и Matlab, каждый язык нужен для своих задач. Python я использую в тех случаях когда мне нужно, сделать небольшую утилитку “на коленке” и быстро получить результат.

Этот пост, будет вводным. Дам несколько ссылок на интересные ресурсы.

Python wikipedia – общее представление о языке

Python (x,y) – среда разработки Python,а по совместительству целая платформа по численному анализу, чем-то напоминает Матлаб.

Модуль для Visual Studio – вся мощь Python доступна теперь и в Visual Studio. Интеграция с Iron Pyhon а значит и c C#. Т.е. мы можем легко писать сборки на питоне и потом их легко использовать в любых C# приложениях. Обзор возможностей на русском

Также нужно отметить, что есть вариант языка с синтаксисом Python, но с возможностью доступа ко всем классам .net. IronPython Однако, нужно отметить, что эта реализация языка лишает возможности обращаться к стандартным библиотекам и модулям Python. Более того она реализована через механизм DLR (wiki) и программа “hello world!” компилируется в такую кашу кода, что хватаешься за голову. Понятно что IronPython работает медленнее, чем C# .net код, и даже медленнее чем оригинальный Python. Однако, в интернете, есть примеры приложений на C#, в которые можно встроить динамический скриптовый движок на IronPython.

Вообще Python язык сверхвысокого уровня, он может все, что может C++ или C#. На нем написаны множество приложений. У него есть даже специальные компиляторы, которые помогают ускорить работу там, где это необходимо.

Есть 2 модуля, которые нужны для работы с числами, хотя я близко с ними не сталкивался. NumPy – векторные вычисления как в Matlab. Matplotlib – библиотека вывода графиков. Оба пакета есть в Python (x,y),ссылку на этот софт я давал выше.

В следующих постах, я опубликую несколько Python скриптов, которые решают некоторые трейдерские задачи.

Leave a comment