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

Читают

User-icon
963

Записи

443

Астрологи объявили год развития Open Source на Smart-Lab.

Надеюсь, все отдохнули! С прошедшими! Поговорим о том, что нас ждёт в этом году.


Астрологи объявили год развития Open Source на Smart-Lab.

О чём ещё говорят астрологи…

 

1. Февраль всё ближе! Чаты расцветут!



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

Благодарности алготрейдерам сообществ OsEngine и СмартЛаба

От Динского социально-реабилитационного центра для несовершеннолетних. Сегодня отвёз им стиральную машину и четыре огромных коробки конфет. Спасибо всем, кто помогал!

Благодарности алготрейдерам сообществ OsEngine и СмартЛаба

Напоминаю, 9 декабря 2023 года мы собирались на митап алготрейдеров из сообществ OsEngine и Смартлаб: https://smart-lab.ru/company/os_engine/blog/965467.php

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

Внезапно, нашлись люди (спасибо Вам!), которые идею поддержали. В итоге собрали 36 т.р.

Я ничего выдумывать не стал, позвонил директору заведения и спросил, что им нужно купить.

 

1. Стиральная машина.

У них недавно сломались две стиральные машины из четырёх. И чтобы дети были отстираны, нужна была срочно замена.



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

Стандарты кода #12. На какой версии СиШарп писать коннекторы. Коннекторы для OsEngine # 34.

Во время создания коннектора для OsEngine рекомендуется использовать версию C# не выше шестой. Новый синтаксический сахар ОЧЕНЬ интересен начинающим программистам, а они при этом нихрена в этом не понимают, от чего неизбежно будут проблемы. Поэтому мы просто всё это дело запретим.

Стандарты кода #12.  На какой версии СиШарп писать коннекторы. Коннекторы для OsEngine # 34.

Далее, очень короткое описание истории шарпов по версиям:



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

Стандарты кода #11. Защита коннектора от спама. Коннекторы для OsEngine #33

Многие API не разрешают избыточно частое (по их мнению) обращение к некоторым данным. Почти всегда на разные типы запросов есть те или иные ограничения. И в случае их превышения происходит какой-то вид отключения клиента от API, либо даже денежные штрафы!

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

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

Стандарты кода #11. Защита коннектора от спама. Коннекторы для OsEngine #33

RateGate.

Объект, который отвечает за задержки между запросами, называется RateGate и находится у нас в проекте вот здесь:



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

Стандарты кода #10. WebSocket и потоковые данные. Коннекторы для OsEngine #32.

Большинство коннекторов в OsEngine так или иначе используют данную технологию. Особенно это касается бирж криптовалют. Потоковые данные идут именно через данный протокол.

Библиотек для подключения данного протокола великое множество. В этой статье поговорим о библиотеке, которую надо использовать и на что обратить внимание.

Стандарты кода #10.  WebSocket и потоковые данные. Коннекторы для OsEngine #32.

 

Работающая библиотека.

WebSocket4Net.

Данная библиотека и реализация вёбсокетов хорошо себя показывают в работе. Её и нужно использовать.



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

Стандарты кода #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) этого коннектора.



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

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

....все тэги



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