프로젝트 소개
finra-py는 FINRA API Platform을 래핑하는 비공식 오픈소스 Python 클라이언트 라이브러리다. 의도적으로 얇은 레이어로 동작해 FINRA API에 대한 요청을 매핑하고 raw httpx.Response 객체를 호출자에게 반환하므로 독점적인 응답이나 데이터 모델을 강제하지 않는다. 전용 FINRA 클라이언트의 편의성과 직접 HTTP 요청의 통제를 모두 제공하는 것이 목표다.
인증은 이 라이브러리가 사용자 대신 처리하는 주요 기능이다. FINRA API는 OAuth 2.0을 사용하며 finra-py는 토큰 획득과 수명 주기를 관리한다. 또한 자체 시스템에 자격 증명을 보관하는 응용프로그램을 위한 맞춤형 토큰 저장소도 지원한다.
README에는 세 가지 API 영역에 대한 지원이 명시되어 있다:
- 주식, 채권, FINRA, 회사, 등록, TRACE 보고서 카드 등을 포함한 Query API 데이터셋
- FINRA 알림 이벤트에 대한 Notification API 데이터셋
- Form U4, Form U5, Form BR, 개별 생성, 비등록 지문 및 기타 지원 워크플로우에 대한 규제 신고 등 Submission API 워크플로우
추가 문서화된 기능으로는 모든 자격 증명 유형 지원, Mock 데이터셋, QA 테스트 환경 API, 서버 측 비동기 요청, 클라이언트 측 asyncio 지원이 포함된다.
설치는 Python 3.11 이상이 필요하며 `python -m pip install finra-py`로 진행한다. 패키지는 `import finra`로 임포트한다. 전체 문서는 README에서 Getting Started 가이드, ADR 노트, 변경 로그 링크를 통해 별도로 호스팅된다.
제한사항도 명확히 명시되어 있다. 라이브러리는 문서화된 데이터셋의 완전한 Coverage를 목표로 하지만 일부 FINRA 데이터셋과 서비스는 API를 통해 완전히 노출되지 않을 수 있으며 fileX API는 현재 지원하지 않는다.
개발은 GitHub 이슈를 통해 이루어지며 버그 보고서와 기능 요청은 환영하지만 풀 리퀘스트는 현재 접수하지 않는다. 저자는 FINRA API 통합, Web EFT 마이그레이션, 컴플라이언스 관련 워크플로우, 시장 데이터 시스템에 대한 컨설팅 서비스도 안내한다. 프로젝트는 CI와 Coverage 배지를 탑재하고 Windows, macOS, Linux 전 플랫폼에서 테스트 Coverage를 설명한다.
README에는 이 라이브러리가 FINRA의 공식 인準, 제휴, 후원을 받지 않는다는 면책조항이 있으며 금융 조언이나 거래 전략을 제공하지 않고 사용자는 underlying API의 서비스 약관 준수에 대한 책임이 있다고 명시된다. 무보증 조건 하에 LICENSE 파일에 따라 배포된다.
목록 목적상 backend/API client 라이브러리로 developer-tools 아래에 배치하는 것이 적합하며 규제 및 시장 데이터셋을 다른 시스템으로 수집하는 실용적 용도로 data-integration이 Secondary fit이다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.