Data Analysis for Investment & Control

[PrometheusConsole] Prometheus Console 버전 개발 본문

Investment Assistant Tools/Prometheus

[PrometheusConsole] Prometheus Console 버전 개발

아슈람 2015. 5. 4. 10:28
반응형

 

 

그 동안 Prometheus 개발이 엄청나게 더디게 진행되었다. 이유는 익숙하지 않은 C# 기반의 UI 개발과 Prometheus의 주요 기능에 대한 정의 그리고 원래의 업무로 인한 개발 시간 부족이다.

 

따라서, 생각을 바꿔 UI 개발에 많은 시간을 할애하기 보다는 본연의 기능 개발에 초점을 맞추고자 콘솔(Console) 버전을 개발하는 것이 나을 듯하여(사실, Matlab이나 R과 같은 프로그램도 콘솔 기반에서 돌아가니...) 별도의 UI 없이 대화형 콘솔 기반으로 기능을 구현 중이다.

 

기존의 컴포넌트들은 그대로 사용하고, 명령어 클래스 기반의 구조도 그대로 가져간다. 다만, 콘솔 명령어 기반으로 인터페이스가 바뀌므로 이를 해석하는 부분을 추가 구현했다.

 

 

 

 

되도록 간단하게 구현했다. 프로그램을 시작하면 초기화가 진행되고 명령어를 입력 받을 수 있는 상태가 된다. 

 

 

 

 

'help'를 치면 명령어에 대한 설명이 나타난다. 각 명령어에 대한 옵션이 있는 것들은 그에 대한 설명이 있으며, 명령어 구현이 아직 덜 된 부분도 있다! 'test' 명령어는 구현하고자 하는 기능에 대한 유닛 테스트를 목적으로 만들어진 명령어다. 앞으로 개발하면서 가장 활용도가 높은 명령어가 될 듯...

 

 

 

'show' 명령어는 시스템의 전반적인 상태나 특정 항목에 대한 상태를 나타낸다. 기업 재무, 주가 데이터는 파일 사이즈가 큰 만큼 시스템이 초기화 된 후에 개별적으로 사용자가 시스템에 로드 시키도록 되어 있다. 시스템에 현재 보유 중인 ISIN 데이터베이스에는 1,923개의 상장 주식 정보가 담겨 있다.

 

 

 

ISIN 데이터베이스의 정보를 보고 싶다면, 'show isin'을 치면 된다. 기업 코드 순으로 상장기업명이 정리되어 나타난다.

 

이 밖에도 'load' 명령어를 사용하여 기업의 재무 데이터를 시스템에 로드시킬 수 있으며, 이를 기반으로 퀀트 분석을 진행할 수도 있다.

 

기업의 주가 데이터 업데이트를 위해 그 동안 대신증권의 CybosPlus API를 사용했었는데, 최근 지원이 잘 안되고 있다. 다른 증권사 API를 알아보고 주가 데이터 수집 프로그램을 수정할 필요가 있을 것 같다. 아마도 Prometheus의 추가적인 기능 구현은 그 다음에 진행할 듯 싶다.

 

 

 

 

 

반응형
Comments