Для того, чтобы в коннекторе параметры подписывались на русском и английском языках, необходимо задавать названия параметров через слой локализации. Коротко поговорим про то, что это такое и как им воспользоваться.
Тест, направленный на создание нагрузки на методы для скачивания свечных данных. Также проверяется наличие правильных дат старта и завершения серий данных по свечкам, когда запрашиваются длинные промежутки свечей.
Переходим к большой (около 10 статей) минисерии про AServer. Сердце любой реализации коннектора. Абстрактный класс, реализующий в себе от 50 до 80 % логики любого коннектора. Много статей будет, т.к. придётся подробно поговорить про его внутренности, которых около 2.5 тысяч строк. Чтобы делать коннекторы, нужно знать, что у AServer внутри.
В данной статье поговорим о том, каким образом AServer вызывает методы IServerRealization.
Тесты ленты сделок. Тест, проверяющий поведение сервера, когда ему шлют странные запросы на выгрузку данных, а также проверяющий качество трейдов.
<code class="language-javascript">// Второй закон Ньютона: F = m * a // Strategy основана на движении цены // Если цена растет, покупаем, если цена падает, продаем function calculateForce(prices) { // Подсчитываем разницу между текущей и предыдущей ценами const priceDifference = prices[prices.length - 1] - prices[prices.length - 2]; // Подсчитываем силу const mass = 1; // Масса (может быть настраиваемой величиной) const acceleration = priceDifference; // Ускорение равно разнице в цене return mass * acceleration; } function executeTrade(force) { if (force > 0) { // Если сила положительная, покупаем console.log("Покупаем"); // Дополнительные действия по покупке акций, например: // placeOrder("buy", "AAPL", 100); } else if (force < 0) { // Если сила отрицательная, продаем console.log("Продаем"); // Дополнительные действия по продаже акций, например: // placeOrder("sell", "AAPL", 100); } else { // Если сила равна нулю, ничего не делаем console.log("Ждем"); } } // Пример использования const priceData = [100, 105, 110, 108, 115, 120]; const force = calculateForce(priceData); executeTrade(force); </code>
Сегодня поговорим про ещё один повод торговать через АЛОР. Про их web-терминал ASTRAS.
На первой картинке Вы видите скальперскую раскладку. Web-терминал с TradingView чартом. Аскетичный ТОП трейдерской мысли, через который, так или иначе, торгует половина всех трейдеров планеты. Откройте картинку:
Но начинать будем с не очень хорошего…
ALOR этот терминал не от хорошей жизни делать начал, как я понимаю. И в целом ASTRAS родился в попытках помочь пользователям торговать через понятный и привычный софт с уже давно опробованным интерфейсом, к которому миллионы людей привыкли, торгуя на международных площадках. Но дело не только в интерфейсе. ASTRAS создан уже на принципиально новой технологии, а значит более быстрый и надежный и ко всему прочему с открытым кодом.
Мне не охота накидывать на товарищей из ARQA (разработчики Квик) с лопаты, ибо они мои земляки. И OsEngine стартовал в своей разработке в нескольких километрах от их офиса. И я их очень уважаю и люблю. Однако, придётся пару слов таки сказать.
Тест, проверяющий поведение сервера, когда ему шлют странные запросы на выгрузку данных, также проверяющий качество свечей.
Сегодня будем говорить про IServerRealization. Интерфейс, в котором надо будет писать конечную логику коннектора: