Нужно поправить форму регистрации, не работает в моб версии. сайт на джумле Сайт https://clck.ru/Gzfbb подробно скину в лс
Разработка моделей процентов выплат нескольких брокеров.
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.
Задача:
Используя предоставленные данные о брокерах (intrade.bar, binary.com, OlympTrade) разработать для каждого брокера модель процентов выплат и оформить ее в виде класса header-onlyбиблиотеки.
Класс каждой модели должен иметь метод, который возвращает процент выплаты в случае удачного завершения опциона в зависимости от выбранной экспирации опциона, текущего времени GMT, валютной пары, размера ставки и текущей цены (у каждого брокера есть свой набор данных).
Исходные данные:
intrade.bar
Самая проста модель процентов выплат у брокера intrade.bar, так как данный брокер имеет фиксированный процент выплат. Однако он имеет свои особенности:
С 0:00 до 3:00 по МСК данный брокер не принимает ставки. При разработке модели данное время перевести в GMT (С 21:00 до 0:00)
Начиная с 17 часов по МСК до 23 часов брокер запрещает торговать в начале часа, середине, и 1 минуту после часа. Например, во время 16:59, 17:00 и 17:01 нельзя открыть ставку, пока не наступит 17:02. Иными словами, как только наступает 16:59:00 целых три минуты идет блокировка ставки. Блокировка снимается ровно в 17:02. Такая история дальше повторяется с каждым часом (18, 19, до 23).
Начиная с 09-01-2019 было повышение процентов выплат. Эту настройку надо добавить в модель. При длине экспирации опциона 3 минуты размер выплаты был 80%, стал 82%. При длине экспирации от 4 минут до 500 минут размер выплаты был 77%, стал 79%. Также размер выплаты зависит от размера ставки. Если ставка меньше 5000 RUB или 80 USD, то выплата равна указанной ранее, если от 5000 RUB или 80 USD, то выплаты стала 85%(была 84%) вне зависимости от времени экспирации.
В выходные дни торговля не ведется
OlympTrade
Для данного брокера была собрана статистика процентов выплат, которую можно скачать здесь: https://github.com/NewYaroslav/olymptrade_historical_data
Брокер утверждает, что процент выплат зависят от волатильности рынка и количества игроков на площадке. Если волатильность померить можно, то второй показатель не был записан.
Предлагаю сделать следующее, составить графики зависимости процента выплат от часа\минуты\секунды дня. Данную зависимость нужно рассмотреть для всех валютных пар в отдельности. Для начала стоит изучить одну конкретную валютную пару, пусть это будет, например, AUDCAD.
На что будет похоже распределение процентов выплат? Например, в 5 часов утра на данной валютной паре в 60% случаев бывает 80% выплата, в 20% случаев бывает 78% выплата, в 10% случаев бывает 75%, и еще в 10% бывает 30% выплата. Если на этом все заканчивается, тогда просто собираем вероятности состояний процент выплат в конкретный момент времени дня для всех валютных пар и собираем все воедино в одну модель.
Однако, может быть так, что от размера процента выплат в 5 часов утра может зависеть процент выплаты в следующие часы. Или распределение процентов выплат разное в разные дни недели. Это стоит выяснить, можно проверить корреляцию. Обязательно обосновать выбор той или иной модели и подкрепить это цифрами и разъяснениями.
Корреляцию, и некоторые другие полезные инструменты для С++ можно найти в этом репозитории: https://github.com/NewYaroslav/binary-cpp-api/blob/master/include/CorrelationEasy.hpp
Некоторые особенности брокера:
- С 0:00 до 3:00 по МСК данный брокер не принимает ставки. При разработке модели данное время перевести в GMT (С 21:00 до 0:00)
- В выходные дни торговля не ведется для форекс валютных пар, для криптовалют торговля продолжается и в выходные дни
- Процент выплат не зависит от ставки и длины экспирации
- Процент выплат зависит от наличия ВИП аккаунта, если аккаунт не ВИП, то процент выплат ограничивается верхней планкой в 80%. Это можно прописать как условие в алгоритме.
Данный брокер имеет плавающий процент выплат, который меняется каждую секунду, и в отличии от брокера OlympTrade, зависит также от цены, а не только от количества игроков и волатильности. Для сделок buy и sell процент выплат отличается. Инструкции аналогичны брокеру OlympTrade, но со следующими особенностями:
Проверить корреляцию процента выплат для BUY и SELL с инструментами: индикатор RSI с разными периодами, начиная от 3 заканчивая 180. Возможно, что процент выплат можно получить, умножив значение индикатора RSI на некий коэффициент. Это конечно не отменяет также зависимости от времени торговли и дня недели, возможно что просто данный коэффициент может зависеть от времени торговли, и тогда уже стоит рассматривать распределение этого коэффициента от времени дня и дня недели.
Индикатор RSI можно найти тут: https://github.com/NewYaroslav/binary-cpp-api/blob/master/include/IndicatorsEasy.hpp
Исторические данные котировок можно взять здесь: https://github.com/NewYaroslav/binary_historical_data
Для чтения этих данных можно использовать класс:
MultipleCurrencyHistory
https://github.com/NewYaroslav/binary-cpp-api/blob/master/include/HistoricalDataEasy.hpp
Также просто проверить корреляцию с инструментом SMA с периодами от 3 до 180
Имеются только данные для экспирации опциона 3 минуты, поэтому рассматриваем только эту экспирацию
Общие требования:
Несмотря на различие между брокерами входящих данных для получения процентов выплат каждая модель должна иметь метод с одинаковым числом параметров, просто ненужные параметры не использовать внутри метода.
Метод должен возвращать процент выплат в виде дробного числа, т.е. например не 82%, а 0.82, использовать тип double
Для таких переменных, как размер ставки или значение цены использовать тип double
Если модель не содержит данных для требуемой валютной пары, или если торговля в указанное время не ведется, возвращать процент выплат равный 0.
Модели, использующие вероятность для расчета процента выплат, должны иметь возможность настроить зерно генератора псевдослучайных чисел, чтобы результат можно было воспроизвести.
Для ускорения вычислений вместо имен валютных пар нужно использовать уникальный номер валютной пары. Каждая модель может использовать свой собственный набор валютных пар. Чтобы воспользоваться именем валютной пары, необходима функция, которая может трансформировать имя валютной пары в номер для конкретной модели процентов выплат.
Требования к коду:
Код должен быть протестирован, для этого стоит написать тестовую программу
Код должен быть написан на С++ 11
Программа на С++ должна работать с компилятором mingw 7.3.0
Требования к оформлению кода:
Писать комментарии к коду на русском языке
Комментариями сопровождать все не понятные (сложные) места кода, а также сопровождать абсолютно все методы класса, функции, объекты класса.
Использовать в качестве отступа табуляцию длиной 4 символа
Делать комментарии к функциям, методам, объектам класса и пр. с использованием правил оформления кода для Doxygen
Статья про Doxygen: https://habr.com/ru/post/252101/
Использовать стиль CamelCase для имен классов, переменные и методы называть в стиле snake_case
Пример:
https://github.com/NewYaroslav/binary-cpp-api/blob/master/include/BinaryApi.hpp
https://github.com/NewYaroslav/olymptrade-cpp-api/blob/master/include/OlympTradeAPI.hpp
Реализовать код на С++ в виде header-only библиотеки, при этом для каждого брокера отдельный "репозиторий".
Попытаться реализовать весь С++ код header-only библиотеки в одном файле, т.е. не выделять под второстепенные классы по новому файлу
В остальном придерживаться правил оформления кода:
https://habr.com/ru/post/172091/
http://cpp-cpp.blogspot.com/2014/09/c.html
Цена - 7000 - 9000 рублей
Заявки фрилансеров
Похожие заказы
- Веб-программирование14 заявокЗакрыт6 лет назад
Добрый день, нужно создать YML файл (возможно и другой формат) для яндекс.маркета и яндекс.директ, ну и гугл рекламы. Не знаю разные ли они должны быть, прошу проконсультировать. Спасибо. Наш сайт вроде на ...
Веб-программирование1 заявкаЗакрыт6 лет назадhttps://docs.google.com/document/d/1ZKHTRKjvmVjDA91pjJVlAsK2tJowk_6VkBNr8FXKIkU/edit?usp=sharing
Веб-программирование9 заявокЗакрыт6 лет назадДобрый день. Необходим парсер, который будет собирать цены с сайтов, найденных через поисковые системы (Яндекс, Гугл), на товары, введённые через поле инпут. Работать должно, думаю, так: 1. в поле ввожу название товара ...
Веб-программирование2 заявкиЗакрыт6 лет назад- $15
1. Посетитель заполняет форму (личные данные). 2. Нажимает кнопку подтверждения - данные отправляются на почту админа 3. Посетителю показываются новые два поля с информацией. плагин Calculated Fields Form ...
Веб-программирование1 исполнительЗавершен6 лет назад Добрый день Есть сайт, сделан на ocStore 2.3.0.2.3, нужно его доделать, подробное тз скину в лс
Веб-программирование5 заявокЗакрыт6 лет назадЗдравствуйте, сайт: uborka-club.ru, скачать файлы к тз и само тз можно здесь: https://dropmefiles.com/DlySY, интересует стоимость и срок разработки. Ниже кратко расписали что нужно сделать: Задача: Кастомизировать личный кабинет для клиента и сделать ...
Веб-программирование4 заявкиЗакрыт6 лет назад- $1
Есть форма, с выбором услуг. Необходимо реализовать на ява скрипе следующее. Сначала клиент выбирает что-то из первого списка, например "услуга 3". После этого, становится активной кнопка "Добавить к списку", при нажатии на которую появляется дополнительная ...
Веб-программирование3 заявкиЗакрыт6 лет назад необходимо доработать функционал Joomshopping (последней версии) и соответственно дизайн шаблона. Был сайт на joomla 1.5 + joomsopping 2. Сейчас сайт частично перенесли на joomla 3.9 + joomshopping 4. (перенесли товары, материалы, модули , ...
Веб-программирование1 заявкаЗакрыт6 лет назад- $5
На сайте Joomla + Virtuemart уже стоит плагин ReCaptcha, но форма регистрации пользователя в VM дорабатывалась, поэтому туда нужно вставить нужный код, чтобы плагин заработал.
Веб-программированиенет заявокЗакрыт6 лет назад