Кстати. Мы тут в очередной раз взялись переписывать туториалы для программистов начинающих. Возможно кто-то заметил, возможно нет. Если Вы давно хотели научиться делать роботов – велком!
Выкладываем это всё в нашем мегагайде на СмартЛабе: https://smart-lab.ru/company/os_engine/blog/1024149.php
Листайте вниз вот до этой части, это прям для самых маленьких, кто хочет научиться править скрипты, а потом уже и роботов самому делать. Знание языка СиШарп нужно минимальное:
И вместе с новыми туториалами учитесь уже работать с программой. Статьи будут выходить по 1 — 2 в течении пары месяцев в этот раздел. Постараемся старт для Вас заложить хороший. Дать базу.
Обсудить и попросить что-то добавить в гайд, о чем вам непонятно, прям мимо кассы, можно в группе поддержки: https://t.me/osengine_official_support
Вся наша команда и я там сутками. Можно позадавать вопросы и пообщаться.
Комментарии открыты для друзей.
Удачных алгоритмов!
Всё, что Вы видите у себя в вёб-терминале биржи или в QUIK, является базовым типом данных для роботов. И роботы должны их уметь анализировать. А до этого в них должен разобраться программист, который хочет этого робота создать. Этот минисборник про примитивы Вам с этим поможет.
В OsEngine существуют классы, моделирующие эти сущности, которые необходимы для работы программы. К основным типам относятся: Trade, Candle, MarketDepth, MyTrade, Order, Portfolio, PositionOnBoard, Position. Для эффективной работы вам необходимо полное понимание устройства этих объектов, поэтому далее мы подробно рассмотрим предназначение каждого из них.
Часть из вышеописанных примитивов хранятся в каталоге OsEngine\project\OsEngine\Entity. Для наглядности можно посмотреть на снимок обозревателя решений, на котором описываемые типы подчеркнуты красными линиями:
Первое, что Вы увидите, открыв OsEngine, обозреватель решения с папками справа. Главное в этот момент не испугаться.
В этих папках хранится весь проект, но для создания роботов Вам нужно примерно знать всего несколько. Ну а сами папки, по сути, можно называть «Пространства имён», которые Вы должны научиться использовать. Про это сегодня и поговорим.
Пространства имен — это способ группировки кода, который позволяет организовать логическую и удобную структуру проекта. Как правило, типы, связанные общей идеей и схожей функциональностью, содержатся в общем пространстве.
Во время разработки торговых роботов в OsEngine нужно примерно представлять откуда и что берётся. Где хранятся те или иные сущности в проекте. Рассмотрим базовые пространства, которые Вам точно пригодятся.
Начнём с того, что посмотрим, что такое пространство имён в исходном коде на примере почти любого робота, доступного в платформе. В файле с кодом пространство задается при помощи ключевого слова namespace:
Усэйн Болт является самым быстрым человеком на планете, но даже он не сравнится в скорости с HFT-алгоритмами. В данной статье мы обсудим, что такое HFT или как зарабатывать на скорости?
HFT (high-frequency trading) — это вид алгоритмической торговли, характеризующийся высокой скоростью, высокими объёмами торговых операций и очень коротким временем удержания позиций. HFT использует сложные алгоритмы для анализа множества рынков и выполнения большого количества ордеров в миллисекунды.
Целью высокочастотной торговли зачастую является извлечение прибыли из очень маленьких различий в ценах, а также предоставление ликвидности рынку за счёт быстрого выполнения ордеров.
Основываясь на передовых технологиях и инфраструктуре, такой как высокоскоростные соединения и передовое вычислительное оборудование, участники HFT способны анализировать большие объёмы данных и запускать ботов с автоматическим исполнением согласно предустановленным параметрам за доли секунды. Высокочастотная торговля широко используется на финансовых рынках для различных стратегий, включая маркет-мейкинг, арбитраж и статистическую арбитражную торговлю.
Сегодня скачаем OsEngine как программист, а не пользователь. До этого у Вас уже должна быть установлена Visual Studio, что мы обсуждали в прошлой статье на тему. И Вы должны быть полны решимости научиться писать торговых роботов самому!
Ну а в этой статье скачаем свежий билд OsEngine с ГитХаб, откроем проект, как программисты это делают. А также обновим некоторые библиотеки, которые нужно подтянуть через Nuget, чтобы всё заработало.
ВАЖНО! Не забывайте про наш ГАЙД по алготрейдингу, там вы найдёте все нужные Вам инструкции и туториалы по проекту в одном месте: smart-lab.ru/company/os_engine/blog/1024149.php
Чтобы скачать OsEngine, нужно перейти по ссылке на ГитХаб. Это международное хранилище для ПО с открытым кодом.
Нажмите на зеленую кнопку Code:
Для программирования (не для запуска, а именно для разработки) торговых роботов в OsEngine вам понадобится среда разработки. Иначе они называются IDE. Это нужно для того, чтобы не писать исходный код в текстовых файлах, а делать это с комфортом и быстро.
Существует несколько программ, подходящих для этих целей. К таковым относятся Visual Studio, Rider, Visual Studio Code и другие, менее известные варианты.
Каждый выбирает то, что ему больше нравится, но, если вы затрудняетесь в выборе, мы настоятельно рекомендуем остановиться на Visual Studio Community. И в этом посте мы поговорим о том, как её установить. Программа полностью бесплатная, как и наш OsEngine.
Выбор Visual Studio будет идеальным вариантом, который закроет все ваши потребности.
Visual Studio имеет в своем арсенале как стандартные инструменты (редактор, отладчик), так и массу приятных дополнительных функций (компиляторы, оптимизаторы кода, графические конструкторы и др.), которые делают процесс разработки более продуктивным, интересным и качественным.
Переходим к вопросам программирования на OsEngine. И эта история более ресурсоёмкая, чем просто торговля. В этом процессе Вам понадобиться установить несколько очень прожорливых программ, таких как Visual Studio. Поэтому, в отличие от торговли, здесь Вам понадобиться железо посерьёзнее.
В основном, чтобы не ослепнуть. Ибо на маленьких мониторах Вы рискуете потерять зрение, занимаясь программированием.
Но, кроме этого, «стандартный» ноутбук использует обрезанный процессор, и Вы лишите себя возможности не только программировать, но и вести оптимизацию.
Если вдруг Вы будете подбирать ПК именно для разработки торговых роботов, то про видеокарту забудьте. Она нам не нужна совсем.
Вот сборка, на которой в нашем офисе ведутся разработки и оптимизации:
В этой публикации мы исследуем, как устроена механика работы отложенных приказов в OsEngine. Мы рассмотрим способы установки стопов и профитов для уже открытых позиций. Сначала мы рассмотрим, как это можно сделать через визуальный интерфейс, а затем рассмотрим, как это реализуется в исходном коде.
Есть позиция Long, купили BtcUsdt по 52 тысячи долларов.
Привет, друзья!
Сегодня я и ваш OS Engines поделится своим забавным опытом, как я с помощью ChatGPT разобрал алгоритм торговли на бирже. Всё началось с простой идеи: а можно ли скоммуниздить торговую стратегию, имея под рукой только данные о сделках, немного скотча, пару плевков и ИИ?
Залез я на сайт инвестор МОEX и нашел там данные по сделкам одного трейдера. Оказывается, вся магия была прямо перед носом! Копирую данные и отправляю их в ChatGPT с просьбой нарисовать мне пару графиков и объяснить, что к чему.