Задание состоит из следующих этапов:
Реализация сервиса по генерации realtime данных. Сервис должен возвращать раз в секунду цены для 100 искусственных торговых инструментов: ticker_00, ticker_01, …, ticker_99. В качестве функции изменения цены для каждого инструмента предлагается использовать следующий код:
from random import random
def generate_movement(): movement = -1 if random() < 0.5 else 1 return movement
Код выше моделирует изменение цены за один шаг времени. Цена каждого инструмента будет складываться кумулятивно из всех изменений. Цену в начальный момент времени принимаем равной нулю.
Реализация веб-сервиса по визуализации цены в режиме реального времени. Необходимо вывести: Селектор инструмента в виде выпадающего списка График цены по выбранному инструменту от начального момента с добавлением данных по мере поступления.
Решение сделано с применением контейнеризации. Для запуска в системе должен быть установлен docker-compose
-
Собираем контейнеры командой docker-compose build
-
Запускаем контейнеры командой docker-compose up -d
-
Для проверки работы в браузере заходим по адресу http://0.0.0.0:8000