Commerzbank -파생 시장 데이터 계산을 위한 생산 소프트웨어 시스템 개발 사례

“우리의 솔루션은 Windows 클라이언트와 Linux 서버 소프트웨어가 필요했습니다. 우리는 MATLAB을 사용해서 분산 연산, 사내 금융 데이터에 액세스할 MEX 파일 인터페이스, 그리고 최적화와 회귀 등에 대한 빠른 내장 함수를 활용하여 두 가지 모두를 신속히 개발했습니다.”

과제

원시 시장 데이터로부터 파생된 다양한 시장 데이터 계산

솔루션

MATLAB을 사용하여 Windows 및 Linux 아키텍처에서 데이터 관리 시스템의 데이터 읽기, 분석 및 최적화 수행, 결과 시각화, 업무에 필수적인 계산 결과 배포

결과

  • 기존 시스템과의 통합 간소화
  • 구현 시간 수개월 단축
  • 수주가 아닌 수일 내 업데이트 완료
프랑크푸르트의 Commerzbank 본사.

원시 금융 데이터로부터 합성되는 파생 데이터는 규제 기관, 고객, 주주, 경영진이 요구하는 은행 규제 자료 제출과 시장 가치평가에 필수불가결합니다. Commerzbank에서는 이처럼 임무 필수 보고서에 최대예상손실액과 손익분배 등의 규제 자본 계산 결과와 핵심 리스크 측정 결과가 포함됩니다.

Commerzbank의 그룹 시장 리스크 관리 팀은 중간, 전방, 후방 사무실의 분석가들에게 신뢰할 수 있는 파생 데이터를 제공하는 계산을 개발하고 검증해야 합니다. 파생 데이터에는 신용 스프레드와 CDS 스프레드 등의 곡선, 내재 인플레이션과 금리, 전이 행렬, 내재 변동성 표면, 다양한 상관관계와 변동성이 포함되며, 이러한 데이터는 자산군, 시장, 시간 전반에 걸쳐 일관성을 보장하는 고급 금융 알고리즘에 의존합니다.

이 요건을 지원하기 위해 Commerzbank는 MDDS(시장 데이터 배포 서비스)를 구축했습니다. MDDS는 파생된 시장 데이터의 MATLAB® 기반 계산 결과 등 리스크 관리를 위한 고품질의 검증된 참조 데이터 및 과거 데이터를 확보하는 데 Commerzbank에서 주로 쓰이는 시스템입니다.

Commerzbank의 정량 분석가인 Julian Zenglein은 “MATLAB 덕분에 부서 내부의 지식과 전문성을 활용해서 MDDS의 계산 기능을 빠르게 구축하고 정교하게 조정할 수 있었습니다”라고 말합니다.

과제

Commerzbank는 내부 데이터와 Bloomberg, Thomson Reuters 같은 금융 데이터 공급업체가 제공하는 시장 데이터 모두가 저장된 Asset Control 데이터 관리 시스템의 데이터에 액세스해야 했습니다. 데이터는 Linux® 서버를 통해 액세스하지만 사용은 Microsoft® Windows® 기반 클라이언트에서 할 것이었습니다.

은행의 분석가들은 회귀 시작점 설정, 결과의 표본 플롯 보기, 완전하고 일관된 시장 데이터셋 생성 등 파생 데이터 계산의 구성과 관리에 유용할 그래픽 응용 프로그램을 원했습니다. 또한 이들은 사내 데이터베이스의 여러 지점으로부터 금융 데이터를 불러오고 집계해서 최적화와 분석을 수행해야 했는데, 예를 들면 회귀를 적용하고 제약 조건이 있는 선형 및 비선형 최소화 문제를 풀어야 했습니다.

분석가들은 IT 개발 리소스와 릴리스 주기에 전적으로 의존하기보다는 시스템을 자체적으로 구축하여 MDDS 개발에 속도를 더하고 시스템의 지원 및 유지보수 편의성을 확보하길 원했습니다. 그와 동시에 MDDS는 강인성과 모듈성, 투명성을 갖추고 Commerzbank의 엄격한 IT 관련 표준을 준수해야 했습니다.

솔루션

Commerzbank는 MATLAB을 사용하여 MDDS 알고리즘을 구축하고 Windows 클라이언트, Linux 서버, Commerzbank 데이터베이스 서버를 포함한 이종 IT 환경 내에 통합했습니다.

Commerzbank의 비즈니스 분석가들은 MathWorks 컨설턴트와 협력하여 MDDS의 크로스 플랫폼 아키텍처 개념 증명 구현을 개발했습니다.

이들은 Asset Control에 연결할 MATLAB 실행 파일(MEX 파일) 래퍼를 만들어서 팀원들이 Linux 서버에서 MATLAB 코드를 실행하고 Asset Control 서버로부터 원시 시장 데이터를 읽어 들이고 계산 결과를 해당 서버에 작성할 수 있도록 했습니다.

Financial Toolbox™로는 고정 수익 증권의 현금 흐름을 생성하고 Black-Scholes 모델을 사용해서 유럽식 풋 및 콜 옵션 가격을 계산했습니다.

Parallel Computing Toolbox™와 MATLAB Parallel Server™로는 사내 데이터베이스 내부로부터 여러 금융 데이터 세그먼트를 동시에 불러오는 작업을 가속화하고 여러 통화로 일괄 계산을 수행했습니다.

팀원들은 MATLAB Compiler™를 사용하여 사용료 없이 여러 컴퓨터에서 실행 가능한 Windows 버전의 독립형 MATLAB 클라이언트를 만들었습니다.

MDDS는 현재 생산 단계에 있으며, 팀원들은 은행의 사업적 필요가 변화할 때마다 새로운 기능을 계속 더하고 있습니다. 이 시스템은 은행의 소프트웨어 테스트 절차에 통합되어 중요한 IT 관련 표준이 계속 지켜질 수 있도록 지원합니다.

 

결과

  • 기존 시스템과의 통합 간소화. Zenglein은 “Asset Control 시스템으로의 액세스 신뢰성 확보가 MDDS의 주요 요구사항이었습니다.”라고 말합니다. “우리는 사내에서 개발한 MEX 파일 인터페이스 덕분에 원시 금융 데이터를 시스템의 C API를 통해 효율적으로 불러오고 MATLAB이 생성한 파생 데이터를 저장할 수 있었습니다.”

  • 구현 시간 수개월 단축. Zenglein은 “사내 분석가들이 금융 전문 지식을 MATLAB에서 곧바로 적용할 수 있었기 때문에 개발의 반복 작업 속도가 빨라 MDDS에서 새 알고리즘을 구현하는 데 3주밖에 걸리지 않았습니다.”라고 말합니다.

  • 수주가 아닌 수일 내 업데이트 완료. Zenglein은 “MATLAB으로는 급한 변경 요청도 자체적으로 해결할 수 있는데, 대개는 당일에 마치곤 합니다.”라고 설명합니다. “Parallel Computing Toolbox를 사용해서 데이터를 예전보다 8배나 빨리 불러올 수 있어 테스트 시간도 단축되었습니다.”