Избранное трейдера ValentinK
В данной статье поговорим о том, каким образом AServer вызывает методы IServerRealization.
Сегодня поговорим про ещё один повод торговать через АЛОР. Про их web-терминал ASTRAS.
На первой картинке Вы видите скальперскую раскладку. Web-терминал с TradingView чартом. Аскетичный ТОП трейдерской мысли, через который, так или иначе, торгует половина всех трейдеров планеты. Откройте картинку:
Но начинать будем с не очень хорошего…
ALOR этот терминал не от хорошей жизни делать начал, как я понимаю. И в целом ASTRAS родился в попытках помочь пользователям торговать через понятный и привычный софт с уже давно опробованным интерфейсом, к которому миллионы людей привыкли, торгуя на международных площадках. Но дело не только в интерфейсе. ASTRAS создан уже на принципиально новой технологии, а значит более быстрый и надежный и ко всему прочему с открытым кодом.
Мне не охота накидывать на товарищей из ARQA (разработчики Квик) с лопаты, ибо они мои земляки. И OsEngine стартовал в своей разработке в нескольких километрах от их офиса. И я их очень уважаю и люблю. Однако, придётся пару слов таки сказать.
Есть в OsEngine функционал, который по одной кнопке останавливает торги по определённой бумаге и закрывает позицию. Штука появилась недавно, не уверен, что ей кто-то пользуется кроме нашего управляющего, однако функционал важен и нужен.
Выглядит это так:
Тест, проверяющий бумаги на площадке. Во время подключения к любой бирже, одно из первых, что происходит – запрос бумаг, торгующихся на ней. Этот класс называется Security.
Так вот, у этого класса есть очень много различных полей. Как обязательных, так и нет. Данный тест направлен на валидацию этих данных.
Февраль неумолимо приближается. Инструкции по тому, как делать коннекторы скоро будут дописаны.
При этом нам необходимо знать, кто из сообщества какой коннектор делает, чтобы не возникало путаницы, и чтобы у нас одно подключение двое не собирали.
В общем. Пора перегруппироваться.
Напоминаю, что первый коннектор в любом случае — крипта. Да, я знаю, что бюджеты на проф-коннекторы к MOEX есть и Вам хочется начать с них. НО! Это будет противоестественно с точки зрения увеличения сложности задачи.
Подробная статья на тему: https://smart-lab.ru/company/os_engine/blog/964640.php
Если вдруг, Вам не из чего выбирать и своих предпочтений нет, то не беда. Есть замечательный сервис по просмотру объёмов на биржах, который называется CoinMarketCup. Идём по ссылке.
Выбираем любую из ТОП 50.
Вчера мы с Вами начали знакомиться со слоем для тестирования коннекторов в OsEngine. А сегодня будем смотреть, как они реализованы технически.
К слову сказать, созданы тесты на базе обычного робота для OsEngine. А это статья — обзор этого робота.
Каждый торговый сервер в OsEngine имеет внутри себя объект CandleManager, который следит за тем, чтобы серии свечек собирали свечи и отправляли их вверх. Их нужно активировать. За это одновременно отвечает класс IServerPermission и CandleManager, о которых будем сегодня говорить.
Находится Candle Manager вот здесь:
Cлой автотестов для коннекторов переживает в OsEngine уже ВТОРОЕ пришествие. Увеличившись с первой версии в 10 раз. Про что и будет данная мини-серия статей внутри серии «Коннекторы к OsEngine». АЖ НА 20 Постов. Так надо…
А данный пост о том, зачем такой большой слой тестирования и введение в тему.
Так вышло, что ядро OsEngine тестируется почти без остановки с разных сторон одновременно. И тестером, и оптимизатором и роботами в реальных боях. В какой-то момент дошло до того, что команда в офисе узнаёт о багах, если таковые есть, после их пуша в ядро через 10 – 20 минут.
Выглядит это так:
Рис. 1. Модули, тестирующие слои, поддерживающие работу роботов.
Поэтому само ядро OsEngine стабильно.
Проблемы в другом месте… В коннекторах. Чем мы с Вами и будем весь 2024 год заниматься.
Это самая важная часть создания коннекторов. «Наговнить немного кода, чтобы как-то что-то заработало» — дело нехитрое. Однако при таком подходе пользователи будут не довольны, т.к. коннектор будет работать плохо. Поэтому надо делать хорошо, чтобы коннектор начал проходить автоматические тесты. И для этого придётся попотеть.
Вероятно, для каких-то молодых камрадов это будет откровением, ибо каждая книжка по Шарпам уже с первых глав нас знакомит с тем, что в C# за сборкой мусора следить не надо. Однако это маркетинговая выдумка. В высоко нагруженных проектах вроде OsEngine, как только ты не проследил за удалением объектов и выкинул это из головы, началась утечка памяти.
Я и сам, как программист-самоучка, очень много лет проживал в этой парадигме, от чего было много проблем как у меня, так и у пользователей OsEngine.
И в этом посте поговорим о том, какие штуки надо обязательно подчищать за собой при удалении коннектора. А вернее при вызове его обязательного к перегрузке метода DISPOSE();
Очень часто коннектор нуждается в перезапуске. Это обусловлено свойствами работы сети интернет. В этот момент у ServerRealization вызывается метод Dispose. Все манипуляции по очищению памяти и переменных нужно делать из этого метода. И ни из какого другого…
Сегодня мы рассмотрим индикатор VWMA. Узнаем историю создания индикатора и то, как он рассчитывается.
Также к данной статье будут прикреплены готовые скрипты роботов на этом индикаторе с возможностью торговать на нашей платформе OsEngine.
1. История создания индикатора.
2. Как проводятся расчеты индикатора VWMA.
3. Какие сигналы может подавать индикатор.
4. Роботы для OsEngine на индикаторе VWMA.
4.1. Стратегия основанная на пересечении индикатора VWMA с ценой.
4.2. Стратегия основанная на пересечении двух индикаторов VWMA.
4.3. Стратегия основанная на трех индикаторах VWMA.
4.4. Стратегия на пересечение индикатора VWMA и VWMA со сдвигом.
4.5. Стратегия с двумя индикаторами Ema и двумя VWMA.
5. Итоговая таблица результатов. 18
Индикатор Volume Weighted Moving Average (VWMA) был разработан в 90-х годах. Этот индикатор используется для определения трендов на финансовых рынках, учитывая объем торгов при расчете скользящей средней.