Table of Contents

Использование Python

Создание стратегий из кода - для пользователей, предпочитающих работу с Python кодом. Такие стратегии не ограничены в возможностях в отличие от схем, и можно описать любой алгоритм.

Процесс создания стратегии проходит напрямую в Designer или среде разработки на языке Python (наиболее популярной из сред разработок является Visual Studio и JetBrains Rider), используя библиотеку для профессиональной разработки торговых роботов на языке Python и API.

Добавить новую стратегию можно, нажав на кнопку Добавить Designer Panel Circuits 01 во вкладке Общие и выбрать Стратегия. Или, нажав правой кнопкой мыши на папке Стратегии панели Схемы, и нажать на кнопку Добавить Designer Panel Circuits 01 в выпавшем меню:

Designer The creation of a strategy 00

После нажатия кнопки Добавить Designer Panel Circuits 01 появится окно с выбором типа контента, на котором нужно создать стратегию:

Designer_Creation_of_element_containing_source_code_00

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

После нажатия на OK в папке Стратегии панели Схемы появится новая стратегия, аналогично при создании стратегии из схемы. И аналогичны действия по удалению или переименования стратегии.

Но вместо схемы, будет показ Python редактор кода:

Designer_Creation_of_element_containing_source_code_01

Вкладка редактора кода состоит из панелей Исходный код и Список ошибок. Панель Исходный код содержит сам редактор Python кода. Вверху находится тулбар, где включается или выключается подсветка таких вещей как Текущая линия, Номер строки и т.д. Для увеличения шрифта можно использовать комбинацию CTRL+КолесоМыши.

Панель Список ошибок представляет собой таблицу со списком ошибок в коде, при двойном нажатии на строчку курсор в панели Исходный код автоматически перейдет на место ошибки.

При редактировании кода в правом нижнем углу панели Список ошибок появится значок Designer The creation of the cube containing the source code 03, который сигнализирует о том, что началось отслеживание изменений. Компиляция кода происходит в тот момент, когда код перестает изменятся.

Запуск стратегии на бэктест, на live и другие операции - аналогично работе стратегии из схемы.

Ограничения

Warning

В Designer используется IronPython, который имеет следующие ограничения:

  • Совместимость с Python версии 3.4
  • Частичная поддержка numpy через специальную .NET реализацию (пример использования можно посмотреть здесь)
  • Отсутствие поддержки других популярных библиотек, написанных на C (pandas, scipy и т.д.)
  • Ограниченная поддержка асинхронного программирования
  • Невозможность использования некоторых встроенных модулей Python из-за зависимости от специфичных для CPython реализаций
  • Производительность может быть ниже по сравнению с CPython для некоторых операций

Рекомендуется учитывать эти ограничения при разработке торговых стратегий на Python в Designer.