BLOG main image
ddd (50)
CUDA programming (0)
알고리즘 트레이딩 (5)
Cherry Picker 개발 (23)
TSimulator 개발(종료) (11)
IT 노트 (1)
잡동사니 (2)
사진 (4)
일기 (4)
이력서 (0)
Visitors up to today!
Today hit, Yesterday hit
daisy rss
tistory 티스토리 가입하기!
'2016/01'에 해당되는 글 4건
2016. 1. 29. 08:34



난 카메라가 취미이다. 카메라의 조작이 궁금한 사람에게 조작방법에 따라 사진이 어떻게 나오는지 설명할 때마다 긴 이야기를 해야했었는데 이 표가 큰 도움이 될것같다.


조리개(F로 표현), 셔터스피드(x분의1초로 표현), ISO(빛에 대한민감도)에 따라 사진 결과물이 어떻게 달라지는지 일목요연하다.

'잡동사니 > 기타' 카테고리의 다른 글

수학에서 자주 쓰이는 영문 용어 정리  (0) 2012.09.26
2016. 1. 28. 07:30


2016년 병신년 첫 날 먹었던 떡국. 오랫만에 가족들과 식탁에 앉았다. 사진첩 뒤적이다가 발견.

'사진 > 스냅' 카테고리의 다른 글

고양이 두 마리.  (0) 2016.01.27
수안보 예식장  (0) 2015.06.14
2016. 1. 27. 09:17


키우고 있는 고양이 두 마리.. 

오른쪽 놈(수컷)은 2014년 8월 여름 회사에서 집에 가는길에 생후 10주정도 된 아이가 울고있는걸 데려왔다. 덩치가 참 커졌다. 왼쪽은 2015년 9월 쯤에 집 근처에서 어미가 새끼 네 마리를 낳았는데 그 중 세 마리가 어디론가 가고 남아있는 아이(암컷)를 데리고 왔다. 처음에는 사이가 안좋더니 지금은 나쁘지 않다. 같이 물을 핥아먹는 중..

'사진 > 스냅' 카테고리의 다른 글

신정 떡국  (0) 2016.01.28
수안보 예식장  (0) 2015.06.14
2016. 1. 26. 22:41

마지막으로 기록된 개발일정을 보니 2014년 1월까지로 되어있다. 이 일정이 마무리 되었을 때 CherryPicker 를 실거래에 적용할 수 있을만한 형태가 되었다. 그리고 때마침 운 좋게 제도권에서 시스템 트레이딩을 할 수 있는 기회가 주어졌다. 기회가 주어지고 한 달간 증권사에 출근하면서 CherryPicker 에 증권 API 대신 거래소에서 직접 날라오는 UDP 패킷을 사용하게끔 개조를 했다. 그렇게 개조가 무사히 끝나고 드디어 2014년 3월부터 CherryPicker 를 이용한 첫 거래를 시작했다. 그 후 조금 더 좋은 조건으로 한 차례의 이직을 하고 2016년 1월 현재까지 CherryPicker 로 거래하고 있다.


다행히도 가장 우려스러운 '주문사고'는 없었지만 프로그램이 뻗은적도 여러번 있었고, 실시간 패킷통신에서 오는 동시성에 관련된 문제점들도 많았다. 하지만 시간이 흐르면서 버그가 발생하는 빈도는 점점 줄었고, 현재는 근 1년 버그없이 잘 운용되고 있다. 사실 버그가 발생하면 기분이 좋다. (물론 주문사고는 한 번이라도 있어서는 안된다.) 왜냐하면 그것은 내가 발견하지 못했던 문제가 발견된 것이기에 고쳐서 더 완벽한 프로그램이 되는 기회이기 때문이다.


제도권 입성이라는 목표를 가지고 업무시간 외 시간을 투자해 만든 시스템 트레이딩툴을 풀타임으로 개발할 수 있다는 사실에 너무 행복했던 지난 2년이었다. 제도권에 입사 후 첫 거래에 성공한 이후 지금까지 많은 기능을 구현했고, 로직 최적화를 통해 속도향상에도 상당한 진전이 있어왔다. 파생상품 운용을 직접 해보면서 생기는 요구사항이 생기는대로 바로바로 반영했다. 처음에는 두서없이 거래만 되게끔 구현하는게 첫 목표였지만 최종적으로 내가 분류한 시스템 트레이딩에 필요한 개발파트는 크게 1. 실운용, 2. 백테스트, 3. GUI, 4. 성과분석 의 카테고리로 나뉜다. 어느것 하나 무시할 수 없는 시스템 트레이딩 전반에 있어 필수적인 요소들이다. 각 카테고리가 중요한 이유를 간단히 설명해보면


1. 실운용

    말이 필요없는 부분이다. 최대한 빨리 시그널을 받고 주문을 해야하므로 속도를 위한 코드 최적화가 중요하다.

2. 백테스트

    시스템 트레이딩의 꽂이다. 백테스트를 통해 시스템 전략들이 만들어진다. 최적화 변수들이 많아질수록 테스트에 걸리는 시간이 천문학적으로 길어지므로(전략 하나에 일 주일, 한 달이상 소요되기도..) 이것 역시 코드 최적화가 중요하다. 그리고 데이터 흐름 알고리즘을 조금 바꾸는 거에 의해 수십분의 일, 수백분의 일까지도 소요시간을 줄일 수 있다. 물론 하드웨어의 성능을 모두 활용하는 멀티 스레드/프로세스는 필수이다.

3. GUI

    실운용에 있어 현 상황이 어떤 상황인지 알기에는 텍스트로도 문제가 없지만 편리하고 직감적으로 알기 위해서는 그래픽으로 더 효과적이다. 포트폴리오 포지션, 손익, 전략상황 등을 GUI 를 통해서 파악한다.

4. 성과분석

    성과분석툴은 크게 두 가지로 나뉜다. 백테스트한 결과중 어떤것을 실운용할지, 어떤 조합으로 포트폴리오를 구성할건지 분석할 수 있는 GUI툴과, 현재 실운용인중인 포트폴리오의 운용성과를 분석하고 백테스트한 결과와 비슷한 성과를 내고 있는지 분석할 수 있는 GUI툴이다. 이는 현 수익을 목적지(백테스트상 수익)로 안전하게 도달하게끔 유도해주는 역할을 해준다.


위 네 가지의 기능들을 수행하기 위해 그 동안 CherryPicker(알고리즘엔진) 외에 Unit_3(백테스트), Gaia(실운용), Efreet(성과분석) 등이 탄생했다. 현업에서 일하고 있는 이상 개발진행 사항을 포스팅 하기가 어려워져 이렇게 상황요약을 마지막으로 개발일정은 포스팅을 종료하겠다. 다른 메뉴들은 계속 업데이트할 생각이다.


지금까지 알고리즘 포스팅에 관심 가져주신 분들이 적지만 몇 분 계셨고 오프라인에서의 만남도 있었다. 나는 시스템 자동화에 대해 이야기하는걸 참 좋아한다. 교류를 원하시는 분들은 언제나 환영이다. :)

'Cherry Picker 개발 > 일정(종료)' 카테고리의 다른 글

13년 12월 ~ 14년 1월 일정  (0) 2013.12.11
10~11 월 일정 (2013년)  (0) 2013.11.21
SetTimer 함수를 도입  (0) 2013.11.08
증권 API 를 Cherry Picker 에 연결하다.  (0) 2013.07.17
의미있는 일정  (0) 2013.06.17
prev"" #1 next