Алексей Ван <o-s-a.net>

Читают

User-icon
989

Записи

498

Стандарты кода #9. Правильные HTTP запросы и библиотеки. Коннекторы для OsEngine #31.

Http (в контексте написания коннектора для OsEngine) – важнейший способ получения данных через АПИ соответствующих бирж/брокеров. На ровне с WebSocket, Http, как протокол связи, используется в нашем фреймворке в подавляющем кол-ве коннекторов.

Естественно, с годами у нас накопился определённый опыт по тому, как надо и как не надо его использовать. Поговорим об этом…

Стандарты кода #9.  Правильные HTTP запросы и библиотеки. Коннекторы для OsEngine #31.

Http протокол в API.

Во всех API крипто-бирж данный протокол в том или ином виде присутствует. Он позволяет отправлять различные запросы на сервер биржи и получать в ответ какие-то данные.

Обычно это:

  1. Бумаги доступные для торговли.
  2. Доступ к портфелю пользователя.
  3. Исторические свечи и трейды.
  4. Выставление торговых ордеров.

Делать эти запросы можно совершенно по-разному. За десятилетия жизни протокола появились сотни библиотек для этого. Однако, я рекомендую использовать следующие.

 

HttpClient.

Клиент для отправки Http запросов может и должен быть использован в запросах, в которых нет динамически меняющихся заголовков. Т.е. для public запросов.



( Читать дальше )

Программа лояльности для сообщества OsEngine, торгующего в ALOR Broker.

Это полный перечень пунктов программы лояльности для тех, кто зарегистрировался в ALOR как участник нашего сообщества и торгует через ALOR.

Камрады. Это то, что у меня получилось для Вас сделать в рамках нашего сотрудничества с АЛОР. Что-то далось легко, а что-то очень нелегко. Старался, как мог. Надеюсь Вы довольны. Я ДОВОЛЕН:

Программа лояльности для сообщества OsEngine, торгующего в ALOR Broker.

1. Уникальный прямой чат поддержки.

Мы открыли для Вас чат поддержки с прямым выходом на ТОП менеджеров АЛОР брокера.



( Читать дальше )

ConnectorCandles #3. Метод подписки на реализацию сервера. Коннекторы к OsEngine #30

В данной статье построчно разберём метод, который занимается подпиской на конкретную реализацию сервера. Что там происходит и зачем это нужно?

ConnectorCandles #3. Метод подписки на реализацию сервера. Коннекторы к OsEngine #30

Идём и открываем CandleConnector. Сам класс находится в проекте вот здесь:



( Читать дальше )

Иосиф Дзеранов со Stepik дал нашему сообществу скидки на обучения программированию в 10 %.

Поздравляю, товарищи обнаглевшие трейдеры. Не знаю, кто из Вас ему написал с требованием выдать нам скидку. Но человек оказался с чувством юмора и, почитав наш бложик на СмартЛабе, и вправду дал нам скидку.

Т.ч. СПАСИБО! И Иосифу, и камраду, который ему написал.

Иосиф Дзеранов со Stepik дал нашему сообществу скидки на обучения программированию в 10 %.

Напомню, в рамках становления программистом СиШарп, я в своей серии постов «Коннекторы к OsEngine» рекомендую ТРИ курса от Иосифа, которые проходят мои сотрудники.

Это:

1.  Основы программирования: https://stepik.org/course/5482/promo

2.  Алгоритмы поиска и сортировки: https://stepik.org/course/23981/promo  

3.  C# для продвинутых: https://stepik.org/course/84983/promo

 

Зачем это начинающим программистам?

  1. В конце курсов выписываются сертификаты, которые можно и нужно потом прикладывать к резюме. Это, совместно с Вашим кодом на ГитХаб в репозитории OsEngine и моими рекомендациями, даст Вам базу для резюме Junior C# программиста.
  2. На сайте Stepik очень много практики. Там есть такая фича, что исходный код прямо в сайт можно вводить, и сайт проверяет, правильно ли ты выполнил задание или нет. Короче, интерактив прекраснейший с мгновенной проверкой домашних заданий.


( Читать дальше )

Стандарты кода #8. JSON объекты и конвертация данных из них. Коннекторы для OsEngine #29.

В большинстве коннекторов OsEngine используется конвертация потоковых данных из JSON объектов. Поговорим о том, как правильно и не правильно поступать при их использовании.

Стандарты кода #8.  JSON объекты и конвертация данных из них. Коннекторы для OsEngine #29.

Библиотека для JSON.

Newtonsoft.Json

Именно эту библиотеку желательно использовать. Никакого смысла плодить в проекте множество преобразователей сообщений в JSON классы нет.

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

 

JSON объекты по коннектору должны лежать в папке Entity (Json) этого коннектора.



( Читать дальше )

ALOR Open API. + 174 бесплатных робота к нему с открытым кодом. Тренд, Арбитраж, Пары, Треугольники, Скринеры, Горизонтальные объёмы.

Камрады! Коннектор к ALOR OPEN API добавлен к OsEngine около трёх недель назад. Бета тесты завершены. Пора торговать!

ALOR Open API. + 174 бесплатных робота к нему с открытым кодом. Тренд, Арбитраж, Пары, Треугольники, Скринеры, Горизонтальные объёмы.


Из хорошего.

1) Это очень классный коннектор в плане стека. Как крипта. Rest + web sockets. Это современно, это общепринятые стандарты, которые на сотнях бирж существуют. Короче — огонь.

2) Быстрый. Пока в глюках не замечен, только если палкой не тыкаешь.

3) Единственный пока в своём роде на MOEX. Лучшее, что есть из бесплатного. Им мог стать Тиньков Апи первой версии. Но там камрады стек трейдинговый не знали, кто его делал. А вторая команда разработчиков стек технологический изменила в худшую сторону.

4) Сообщения об ошибках при запросах прекрасны. И цифры, и текст. Очень редко, где такое. Спасибо. Это ускорило разработку. Отдельный привет команде за это. Красавчики.

 

Из не оч. Крутого.

Три различных типа времени приходит из шлюзов. Это супер странно. Вообще нигде такого не видел. Поэтому ставим на ПК МОСКОВСКОЕ ВРЕМЯ, иначе могут быть различные странности.



( Читать дальше )

ConnectorCandles 2. Обзор регионов. Коннекторы к OsEngine #28

Продолжаем разговаривать про класс, предоставляющий данные для источников в OsEngine. А именно про класс ConnectorCandles. И в данной статье поговорим о его коде. Что там есть.
ConnectorCandles 2. Обзор регионов. Коннекторы к OsEngine #28

Сам класс находится в проекте вот здесь:



( Читать дальше )

Стандарты кода #7. Циклы и LINQ. Коннекторы для OsEngine #27.

В данной статье поговорим об использовании циклов. Какие нужны, а какие смогут уронить наш замечательный терминал. Кроме того, поговорим о синтаксическом сахаре из библиотеки LINQ, которая, как не сложно догадаться по динамике этих записей, тоже под запретом. Почему и как?

Стандарты кода #7.  Циклы и LINQ. Коннекторы для OsEngine #27. 

Цикл for – РАЗРЕШЁН.

Один из самых быстрых циклов, которые существуют. Это основная боевая единица, которую нужно использовать.

Данный цикл не создаёт дополнительных методов в памяти и не является потоконебезопасным. Практически любую ситуацию внутри него можно обработать. Также он позволяет ставить внутри себя точки останова.

 

Цикл while – РАЗРЕШЁН.

Бесконечный цикл с условием продолжения.

Также разрешён к использованию. Имеет все плюсы цикла for.

 

Цикл foreach – ЗАПРЕТ.

Этот цикл создаёт метод внутри памяти и не даёт контролировать выбор объекта. В случае, если есть какие-то проблемы с перечислением или листом, выбрасывается неконтролируемое исключение.

Данный цикл нельзя использовать в многопоточном окружении при работе с листами.



( Читать дальше )

ConnectorCandles #1. Назначение, использование в проекте. Коннекторы к OsEngine #26

Продолжаем разбираться со слоями в OsEngine. И впереди у нас три статьи про класс ConnectorCandles.
Смотрим на картинку:

ConnectorCandles #1. Назначение, использование в проекте. Коннекторы к OsEngine #26

 


ConnectorCandles.

Класс, предоставляющий данные для источников в роботе. Хранит в себе информацию по подключению. Содержит внутри процедуры для переподключения к серверам в случае разрыва соединений и изменении настроек со стороны пользователя.

Находится в проекте вот здесь:



( Читать дальше )

Пробила Россия мне два колеса.

Пробила Россия мне два колеса.

На неё обижаться не стану!

Открываю Авито. Звоню, красота!

В выездной шиномонтаж, Богдану.

 

Пуховик до пояса в грязище весь.

Ржу. Дым пускаю в звёздное небо!

Хорошо, что Россия будущего ЗДЕСЬ!

И хорошо, что в либеральной ты не был!


Был в командировке, запускал роботов для заказчика в Москве. Проект сдал, нефтяники довольны. Будем дальше удалённо поддерживать товарищей. Но не об этом сейчас.
Ездил на машине. Так вот


Возвращался из Москвы в Васюринскую. Пробил две покрышки вчера ночью...


Пробила Россия мне два колеса.


Просто кусками разлетелись в разные стороны...


Чуть не запаниковал. ОДНАКО!

1) Через 5ть минут подъехала ДПС. Узнать, что случилось.
2) Через 15 минут выездной шиномонтаж был на месте.
3) Через 30 минут дорожные рабочие латали дырку на дороге.
4) Через полтора часа я ехал дальше с полным осознанием, что живу в прекрасной стране. Чуть не прослезился.



Unreal.

Цените то, что у нас есть. Как я понимаю, у города Шахты сразу после победы демократических сил году в 90 — 99, меня бы сбросили в кювет с ножом под ребром, а на машине уже сегодня ездил какой-нибудь поборник демократии, голосовавший за Ельцина. Ельф, так сказать, наказавший Москаля, ехавшего на юг. Навальнёнок по нашим временам. Хорошо, что это всё в прошлом. А такую Россию надо беречь, которую я видел вчера ночью.



( Читать дальше )

теги блога Алексей Ван <o-s-a.net>

....все тэги



UPDONW
Новый дизайн