Работа завершена
Техническое задание
Ниже краткое ТЗ, детальное ТЗ будет предоставлено разработчикам на этапе обсуждения и его согласования.
1. Цель
Разработка RESTful API Server (RS) взаимодействующего c помощью Windows Communication Foundation Services (WCF) с Metatrader (MT)
1.1. Краткое описание модели взаимодействия
RS шлет команды в сторону МТ, на стороне МТ (советник\скрипт) выполняет команду и по результату выполнения возвращает в сторону RS нотификацию и\или запрошенные в данные. Список команд описывается в разделе реализации REST API
по событиям в МТ, МТ (советник\скрипт) шлет в сторону RS нотификацию. Список событий описывается в разделе реализации советника/скрипта МТ
2. Языки реализации
MQL5
C# 5.0 и выше, Visual Studio 2015 и выше
2.1. Компоненты реализации
советник/скрипт МТ - MQL5
интерфейс взаимодействия между МТ и RS в виде WCF-сервиса - Visual studio 2015 и выше, C# 5.0 и выше, .Net 4.5 и выше
RESTful API Server - Visual studio 2015 и выше, C# 5.0 и выше, .Net Core 4.5 и выше
документация - формат pdf/docx
3. Реализации компонент
3.1. Советник/скрипт МТ
3.2. Интерфейс взаимодействия между МТ и RS - WCF-сервис
3.3. RESTful API Server
3.3.1. Язык, фреймворки и библиотеки для реализации
· C# 5.0 и выше
· Visual studio 2015 и выше,
· Net Core 4.5 и выше
Использование дополнительных библиотек и фреймворков согласовываются с заказчиком.
3.3.2. Форматы данных: запросы RS
Ордер: открыть
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Ордер: закрыть
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Ордер: запросить список открытых ордеров
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Ордер: запросить информацию ордеру
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Инструменты: запрос списка доступных в МТ инструментов
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Инструменты: запрос списка доступных в МТ таймфреймов
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Инструменты: запрос истории по определенному инструменту за определенный период
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Tick: открытие тикового канала для определенный валюты
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Tick: закрытие тикового канала
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
Tick: список тиковых каналов
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
События: список событий за последний час
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
События: список событий за последние 24 часа
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
События: развернутая информация по определенному событию в интервале последних 24-х часов
описание:
формат входных данных:
формат выходных данных - ошибка:
HTTP-метод:
Коды ответов:
URI:
3.3.3. Безопасность
4. Модель взаимодействия Metatrader и RestAPI Server
5. Тестовый RestAPI Client