Необходим скрипт для экспорта истории счета MT4/MT5 и доп инфы в формате JSON

Работа завершена

Время выполнения 18 дней
Отзыв от исполнителя
Отличный клиент. Спасибо за заказ.

Техническое задание

Необходимо 2 советника(одинаковый функционал но для разных платформ - MT4/MT5) основная задача которых будет состоять в передаче данных из торговых терминалов MT4/MT5.

Набор данных для передачи:

– Торговая история (Стейтмент за максимально доступный период). Торговая история должна быть оформленная в едином для всех брокеров формате, то есть чтоб индивидуальные особенности дизайна стейтмента, реализованные у различных брокеров, были нивелированы.
– Тип торгового счета - демо/реал
– Валюта счета - просто буквенное ее обозначение.
– Имя владельца счета
– Название брокера
– Название сервера

Кастомные данные:

– Уникальный идентификатор счета клиента (будем выдавать его клиенту, он должен будет ввести его в диалоговом окне советника)
– подпись: X-Signature: подпись, где подпись = sha256(request body + "secret key") - логика вшита в советник, secret key предоставим

Формат и Передача данных

Технически, передачу предлагается организовать путем отправки HTTP POST запроса на указанный  https урл сервера в формете json.

Тело запроса должно состоять из данных в json формате, если данных в запросе сильно много, то можно разбить на несколько запросов, в каждом запросе повторяются данные перечисленные выше. Номер запроса можно не указывать, нашему серверу будет без разницы, т.к. каждая запись в истории и так идентифицируется номером тикета и датой, поэтому к дублированию не приведет.

Каждый запрос должен быть подписан, например методом добавления заголовка:
X-Signature: подпись,
где подпись = sha256(request body + "secret")
На своей стороне, мы будем вычислять и сверять эту подпись.

Коды ответа сервера:
200 - в случае успешной обработки запроса
403 - в случае если не совпадает подпись
400, 500 или любой другой код трактовать как ошибка обработки запроса
501 - Индентификатор клиента указан не верно

Принцип и алгоритм работы советника:

Советник должен запускаться только с помощью манипуляций со стороны пользователя. Он не должен запускаться автоматически при логине к счету. При каждом запуске должно открываться диалоговое окно с текстом соглашения и двумя внопками Accept / Decline.

– Accept - советник просит уникальный индентификатор, если он уже был введен просит подтвердить его или изменить на новый
– Decline - выводит сообщение, что дальнейшая работа советника не возможна без согласия и выгружается, повторный запуск возможен

После прохождения этапа с введением "уникального кода", бот должен собрать необходимую информацию, передать ее на сервер, получить подтверждение что информация была доставлена на сервер. После получения подтверждения, бот должен дать клиенту обратную связь, что все прошло успешно. Если попытка передачи не удалась, повторить 2 раза, и, в случае не удачи, так же дать клиенту обратную связь. Обратная связь должна представлять собой просто окно с текстом:

– Данные переданы успешно, советник выгружается
– Индентификатор клиента указан не верно, просит ввести новый индетификатор
– Запрещено соединение с сервером, проверьте настройки советника, ссылка на инструкцию, советник выгружается
– Передача данных не удалась. Свяжитесь со службой технической поддержки, ссылка на поддержку, советник выгружается

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


Откликнулись

1
Разработчик 1
Оценка
(355)
Проекты
588
70%
Арбитраж
14
43% / 7%
Просрочено
28
5%
Свободен
2
Разработчик 2
Оценка
(236)
Проекты
440
26%
Арбитраж
125
21% / 56%
Просрочено
96
22%
Работает
3
Разработчик 3
Оценка
(6)
Проекты
11
9%
Арбитраж
3
0% / 100%
Просрочено
1
9%
Свободен
4
Разработчик 4
Оценка
(229)
Проекты
339
49%
Арбитраж
21
5% / 33%
Просрочено
24
7%
Свободен
5
Разработчик 5
Оценка
(204)
Проекты
279
33%
Арбитраж
34
32% / 29%
Просрочено
75
27%
Работает
6
Разработчик 6
Оценка
(15)
Проекты
37
62%
Арбитраж
1
0% / 100%
Просрочено
1
3%
Свободен
7
Разработчик 7
Оценка
(1)
Проекты
1
0%
Арбитраж
1
0% / 100%
Просрочено
0
Свободен

Информация о проекте

Бюджет
100+ USD
Исполнителю
90 USD
Сроки выполнения
от 5 до 10 дн.