This project was bootstrapped with Create React App.
Online example: https://codesandbox.io/s/muddy-meadow-wqhj6?file=/src/index.tsx
yarn install
yarn start
Во время выполнения задачи я не смог найти пример формата данных для облигаций я воспользовался дампом исторических данных для акций Apple на американской биржи. В связи с этим вместо параметра yeild на графике реализован параметр volume, который отображает колличество совершенных сделок в торговый день.
Так же вместо redux, который был бы явно избыточен в этой задаче, я воспользовался хуком useReducer, который реализует тот же подход к работе со стейтом, но лучше вписывается в концепт небольшого приложения без сложной логики.
- React
- TypeScript
- date-dns
- rechart
Не написал тесты для редьюсера, не сделал селекторы и кеширование данных, не исправил повторный рендер компонента App при смене параметров графика, не тестировал на большом объеме данных (за 2-5-10 лет), не учел отсутствие данных