Программа для считывания и отправки JSON запросов и получения и записи ответов в текстовый файл

MQL5 脚本 积分 C++ C# Java JavaScript

指定

Создать программу, которая подключившись к серверу binary.com (авторизация с использованием ключа API, при потере соединения - автоматическое переподключение) будет "слушать" директорию "Files" (путь к директории указывается в настройках программы config) и при создании программой МТ5 (это я сделаю сам) в ней нового текстового файла "send.txt" с запросом на JSON, эта программа будет забирать из данного файла и транслировать этот запрос на binary.com, после чего удалит файл с запросом. Далее, полученный ответ от сервера перезаписывать (прежний ответ надо стереть) в другой текстовый файл "receive.txt" в этой же директории и снова "слушать" директорию на появление нового файла с запросом. Подобный функционал имеется в программе (во вложении), но она ограничена запросами. Также, у binary.com уже есть открытый сервис API playground (https://developers.binary.com/api/), где, после авторизации, можно свободно формировать данные запросы на JSON и получать необходимые данные, но только в браузере.

Вот пример запроса в текстовом файле "send.txt" в директории "Files": 

{

  "portfolio": 1

}


Вот пример полученного ответа, который надо перезаписать (прежний ответ стереть) в другой файл "receive.txt в этой же директории:

{

  "echo_req": {

    "portfolio": 1

  },

  "msg_type": "portfolio",

  "portfolio": {

    "contracts": [

      {

        "app_id": 1169,

        "buy_price": 1,

        "contract_id": 40201691528,

        "contract_type": "EXPIRYRANGE",

        "currency": "USD",

        "date_start": 1549676987,

        "expiry_time": 1549691387,

        "longcode": "Win payout if Volatility 10 Index ends strictly between entry spot minus 12.259 to entry spot plus 12.259 at 4 hours after contract start time.",

        "payout": 1.89,

        "purchase_time": 1549676987,

        "shortcode": "EXPIRYRANGE_R_10_1.89_1549676987_1549691387_S12259P_S-12259P",

        "symbol": "R_10",

        "transaction_id": 80340663108

      }

    ]

  }

}

附加的文件:

反馈

1
开发者 1
等级
(49)
项目
134
27%
仲裁
62
13% / 53%
逾期
58
43%
空闲
发布者: 265 文章, 1 代码
2
开发者 2
等级
(337)
项目
624
38%
仲裁
40
23% / 65%
逾期
93
15%
空闲
发布者: 4 文章, 19 代码
3
开发者 3
等级
(20)
项目
19
11%
仲裁
22
5% / 82%
逾期
3
16%
工作中
发布者: 7 代码
4
开发者 4
等级
(76)
项目
136
45%
仲裁
11
27% / 64%
逾期
26
19%
空闲
发布者: 5 代码
5
开发者 5
等级
(144)
项目
285
42%
仲裁
19
63% / 5%
逾期
29
10%
空闲
发布者: 2 代码
6
开发者 6
等级
(84)
项目
93
23%
仲裁
0
逾期
0
工作中

项目信息

预算
45+ USD