Как создать Open Source финтех-проект
Роль финансовых технологий в революционных изменениях взаимодействия с финансовыми сервисами огромна, участие в проектах с открытым исходным кодом в этой сфере становится все более ценным. Как сделать, довести до ума финтех-сайт с открытым исходным кодом и поучаствовать в создании финтех-решений? Продемонстрируем на биржевом бэкенд-проекте, где обрабатываются данные фондового рынка.
Проект доступен на GitHub, это отличная отправная точка для погружения в финтех-разработку.
Обзор проекта
Репозиторий биржевого бэкенда — это проект с открытым кодом и построенным на современных технологиях бэкенд-сервисом для обработки данных фондового рынка. Акцент здесь сделан на API, который интегрируется разработчиками в веб-сайты или приложения финтех-направленности. API — мощный инструмент для получения и обработки данных фондового рынка, а также управления ими. Он идеален для сайтов, где биржевые данные показываются в реальном времени или ретроспективе.
Ключевой функционал
- API биржевых данных: его особенностью — возможность в реальном времени получать и предоставлять биржевые данные по отдельным акциям, индексам и другим финансовым инструментам.
- API для финансовой аналитики: в API легко включаются дополнительные финансовые, аналитические показатели или статистика портфеля ценных бумаг.
- Открытый исходный код: в этом Open Source проекте разработчики добавляют фичи, дорабатывают функциональность и адаптируют код под различные финтех-приложения.
Технологии проекта
Биржевой бэкенд построен на таких технологиях:
- Golang (Go): славится эффективностью, конкурентностью и простотой, отличный выбор для создания таких же масштабируемых и производительных API, как этот биржевой бэкенд.
- MongoDB: для хранения данных фондового рынка и пользовательских портфелей ценных бумаг. Этой нереляционной базой данных обеспечиваются гибкость структуры данных и масштабируемость.
Благодаря этим технологиям, в создаваемом биржевом бэкенде учитываются специфические требования финтеха: безопасность, масштабируемость, обновления в реальном времени.
Принцип работы
1. Установка: клонируем репозиторий, устанавливаем зависимости и настраиваем необходимые переменные окружения, например API-ключи для поставщиков биржевых данных.
2. Запуск сервиса: командой npm start
, на конкретном порту им прослушиваются запросы, по маршрутам API обслуживаются данные.
Что дальше?
Хотя биржевой бэкенд-проект функционален, всегда есть что доработать. Обсудим текущие вопросы совершенствования проекта, а также будущее этой финтех-платформы с открытым исходным кодом.
Вопросы проекта
Основные запросы на новый функционал перечислены в GitHub. Вот основные:
1. Рутина: рефакторинг кодовой базы /№ 12/. Имеющийся дизайн не соответствует определенным стандартам, для доработки качества кода и структуры требуется полный рефакторинг.
2. Добавление конвейеров /№ 11/. В этом вопросе запрашивается добавление конвейеров непрерывной интеграции для автоматизации процессов тестирования и развертывания.
3. Добавление модульных тестов /№ 10/. Чтобы обеспечить надежность кода биржевого бэкенда, необходимо расширить охват модульными тестами.
4. Добавление Sentry /№ 8/. Цель этого запроса на новый функционал — доработка отладки и диагностики на продакшене посредством интеграции Sentry для мониторинга и логирования ошибок.
5. Добавление логгера вместо операторов печати /№ 7/. Для более гибкого и настраиваемого логирования в этом вопросе предлагается заменить операторы печати подходящей библиотекой логирования.
6. Добавление метода CAN SLIM для оценки акций /№ 6/. Запрос на новый функционал для реализации методологии CAN SLIM, системы оценки акций на основе факторов вроде роста доходности и лидерства на рынке.
7. Функционал модифицированной оценки Пиотроски для развивающихся рынков /№ 5/ нацелен на оптимальные оценки акций в этих регионах.
8. Добавление загрузки XLSX-формы в бакет Cloudinary /№ 4/. Здесь добавляется поддержка загрузки файлов Excel в бакет Cloudinary, чем упрощаются хранение данных и доступ к ним.
9. Добавление сравнения между Kafka и RabbitMQ /№ 3/. Запрос на новый функционал для интеграции клиентов Kafka и RabbitMQ в проект и сравнения этих двух популярных систем обмена сообщениями.
10. Добавление новых правил оценки акций /№ 2/ на основе доходности и сравнения с аналогами.
11. Функционал оценки Пиотроски в оценке акций /№ 1/ и его добавление в систему оценки акций с комплексным показателем для расчета их эффективности.
Читайте также:
- Нам нужно визуальное программирование. Нет, не то, о котором вы подумали
- Рендеринг больших табличных данных в браузере
- Модульное тестирование для долговечного кода
Читайте нас в Telegram, VK и Дзен
Перевод статьи SHIVAM SOURAV JHA: Showcase: Making an Open Sourced Fintech Project