Блог им. elektroyar |Библиотека для работы с временем и датой ztime

 С++ библиотека для работы с датой и временем Z-time

Библиотека для работы с временем и датой ztime

Всем привет! Ранее я уже писал про библиотеку для работы с датой и временем. С тех пор я добавил в нее новый функционал и адаптировал под использование в VS (оказалось, что в VS имя xtime уже занято). Эта библиотека очередной велосипед, но что поделать, люблю делать велосипеды
boost::posix_time, std, boost ::chrono… надо учиться эффективно использовать чужие велосипеды, иначе легко завязнуть в своих...

В трейдинге данная библиотека может быть полезна, если нужно измерять точное время в программе при помощи NTP без корректировки времени самого сервера/ПК, для проверки взаимосвязи настроения рынка с фазами Луны, для различных преобразований времени в разные форматы.


Описание


Данная библиотека представляет собой сборник алгоритмов, классов, функций и констант для удобной работы с временем:

  • Измерение точного времени при помощи NTP
  • Получение реального времени компьютера с точностью до микросекунд
  • Преобразование даты в метку времени и обратно
  • Парсинг строк или формирование строки из даты
  • Расчет фаз Луны, поиск следующего новолуния
  • Преобразование UINX времени в OLE Automation Date и обратно
  • Получение секунды, минуты, часа дня из метки времени, получение последней метки времени месяца и т.п.
  • И многие другие возможности...


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

Блог им. elektroyar |Библиотека OpenBoApi для работы с лохотронами

Кто-то этого давно ждал, кто-то не ждал, кому-то вообще параллельно. Тем не менее, встречайте: библиотека для работы с брокерами бинарных опционов OpenBoApi. Не благодарите.

Библиотека OpenBoApi для работы с лохотронами

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

Лирическое отступление


Обычно у библиотек и языков программирования есть какой нибудь талисман, ну там хомяк, лисичка, еще что нибудь безобидное. И тут я вспомнил, что был один в истории человек, который прям как в бинарках обещал 100% в месяц. Многие его называли мошенником, однако он всю жизнь проходил в трениках, был далеко не дурак, хотя, судя по всему, верил в свои пирамиды. И вообще о народе думал. В общем, нестандартная личность. 

Ближе к телу


OpenBoApi - это C++ header-only библиотека для работы с API брокеров бинарных опционов. С помощью этой библиотеки выполняется правило трех сигм, тфу, то есть, трех 



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

Блог им. elektroyar |Как дела обстоят в "лохотронах" во время начинающегося кризиса

В свое время я для себя выбрал немного странный вариант алготрейдинга — решил прогнозировать движение цены на 3 минуты и использовать прогнозы для ставок, благо псевдоброкеров достаточно много и условия у них позволяют использовать винрейт даже в районе 56%.

Как не странно, прогнозы имеют куда больший потенциал для дохода, чем любой другой вариант инвестирования здорового человека. Ну, а так как религия мне не запрещает зарабатывать на «лохотронах», то почему бы и нет.

Систему все еще тестирую, большие деньги не тороплюсь вкладывать. Решил использовать двух брокеров с выбором наилучшего условия. Писать названия брокеров не буду, чтоб не рекламировать. Для первого сделки на тесте и реале совпадают почти идеально, для второго брокера пока не проверял, но думаю, что задержка открытия сделки на 2-3 секунды погоду в целом не поменяет.

С начала 2020 года по 12.03.2020 имеем такой график эквити
Как дела обстоят в "лохотронах" во время начинающегося кризиса

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

Блог им. elektroyar |"Мост" между MetaTrader и программой через socket

В жизни бывают такие моменты, когда очень хочется торговать из программы на С++, но по каким-то причинам у брокера нет API, зато есть MetaTrader. Конечно, можно просто писать код на MQL4/MQL5, на этом урезанном варианте-мутанте Си и С++, но мне как-то не в кайф это делать. Поэтому я решил сделать «мост» между MetaTrader и программой через socket. Встречайте — MT-Bridge
"Мост" между MetaTrader и программой через socket

На данный момент MT-Bridge позволяет только передавать поток котировок в программу с заданной частотой + добавлена инициализация исторических данных. Пока мне этого достаточно, но возможно в будущем функционал MT-Bridge будет расширен. Поэтому извиняйте, если здесь вы не нашли полноценного функционала, что есть то есть пока. Библиотека для подключения к советнику написана на С++11 и зависит от boost.asio, но нужны только файлы-заголовки. Вот github репозиторий с советником и библиотекой. Передача данных реализована через сокеты, советник является клинетом, а программа на С++ — сервером. Данные передаются через сокет в бинарном виде. 

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

Блог им. elektroyar |Работа с датой и временем в С++

В свое время для алготрейдерских задач мне нужно было много оперировать датой и временем. Конечно, в С++ и Си есть библиотеки для работы с датой и временем. Но мне захотелось сделать свой велосипед, который бы мог легко и удобно превращать строковое представление времени в метку времени, менять часовой пояс, получать время UTC компьютера, преобразовывать метку времени в стандартный формат даты и времени и обратно и т.д. и т.п. Одним словом, целый спектр задач.

В итоге я сделал библиотеку xtime (ну, громко сказано «библиотека», это всего лишь два файла .cpp и .hpp). Для хранения и преобразования меток времени используется тип данных uint64 либо double, поэтому у данной библиотеки нет проблемы 2038 года.

Используемые типы данных:
  • timestamp_t — тип длиной 64 бита для хранения метки времени.
  • ftimestamp_t - тип с плавающей точкой длиной 64 бита для хранения метки времени с дробной частью секунд.
  • oadate_t - тип с плавающей точкой длиной 64 бита для хранения даты автоматизации (OADate)


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

....все тэги
UPDONW
Новый дизайн