Category Archives: 시스템트레이딩

주식투자 프로그래밍(시스템 트레이딩) 4.5 #. 차익 시스템트레이딩

By | 2018-01-14

#. 차익 시스템트레이딩 차익 시스템트레이딩은 선물과 주식(현물) 간의 가격차를 계산하는 것이라서 얼핏 보면 간단해 보이지만 실제로는 굉장히 복잡하고 어렵다. 선물 지수에 대응해서 수많은 주식(현물) 종목에 대하여 개별적인 차익을 종합적으로 평가를 해야 하는데 이러한 차익을 계산하는 능력에 따라서 수익률이 달라진다. 또한 차익 거래는 기관들과 같이 어마어마한 자금을 동원하지 않으면 차익 매물을 매매할 수가 없기 때문에 애당초… Read More »

주식투자 프로그래밍(시스템 트레이딩) 4.4 #. 전산 금융공학 – 스피드 트레이딩

By | 2018-01-14

#. 전산 금융공학 – 스피드 트레이딩 대부분의 금융공학 펀드의 핵심적인 목표는 획기적으로 수익률을 높이려는 것이 목적이 아니라 최소한 매매 규칙마저도 지키지 않는 펀드매니저를 통제할 수 없다는 의심 때문에 더 큰 손실을 막아보려는 것이 목표라서 마치 알람(Alarm) 시계처럼 정해진 조건에 기계적으로 정확하게 반응하는 데 초점을 두고 있다. 하지만 일부 금융공학 펀드는 알람식(Alarm) 조건 매매보다는 선물-현물 간의… Read More »

주식투자 프로그래밍(시스템 트레이딩) 4.3 #. 전산 금융공학 – 알람펀드

By | 2018-01-14

#. 전산 금융공학 – 알람펀드 수학적 금융공학은 대형 금융회사가 파생상품을 설계한 후에 판매를 통하여 이익을 추구하기 때문에 직접적으로 실전 매매를 하지 않는데 반하여 전산 금융공학은 전산 프로그래밍을 통하여 직접 매매에 참여하면서 차익을 통하여 수익을 얻는다. 이론적으로는 전산 금융공학에서도 수학을 이용하지만 수학적 금융공학과 비교하면 매우 낮은 수준에서 단순하고 간단한 계산을 위해서 수학을 적용하기 때문에 수학적 금융공학과는… Read More »

주식투자 프로그래밍(시스템 트레이딩) 4.2 #. 수학적 금융공학

By | 2018-01-14

#. 수학적 금융공학 금융공학은 크게 두 가지로 구분할 수 있는데, 현물을 기반으로 각종 파생상품으로 확대 재생산하면서 돈의 가치를 뻥튀기처럼 부풀리도록 상품구조를 설계해서 파생상품 그 자체를 팔아먹는 것과 프로그래밍 언어를 이용해서 실전 매매를 통하여 차익(수익)을 챙기는 프로그래밍 매매로 나뉜다. 뻥튀기 파생상품 설계는 기존의 단순 (금융) 상품을 가지고 고차원적 수학적 기법을 응용해서 다양한 파생상품을 만드는 것인데 여기서… Read More »

주식투자 프로그래밍(시스템 트레이딩) 4.1 #. 금융공학과 상한가 따라잡기

By | 2018-01-14

#. 금융공학과 상한가 따라잡기 (주식투자 프로그래밍4) 원래 필자가 주식투자 프로그래밍에 대한 원고를 마소에 투고할 때에는 원고 제목이 주식투자 프로그래밍이 아니라 금융공학(머니공학)으로 정했었는데 처음에는 금융공학에 대하여 간단하게 소개한 후에 개인 투자자 수준에서 프로그래밍 개발자가 현실적으로 접근 가능한 범위로 좁혀서 주식투자에 초점을 두었다. 그런데 금융공학이라는 영역을 포괄적으로 다루기에는 개인 투자자 수준의 프로그래밍 개발자 입장에서 직접적인 관련성이 부족했기… Read More »

주식투자 프로그래밍(시스템 트레이딩) 3.15 #. 통합 주문처리기

By | 2018-01-14

#. 통합 주문처리기 지금까지 종목 검색, 호가창 조회, 체결창 조회, 계정 로그인, 매매와 정정 처리 등과 같이 주식 거래에 필요한 최소한의 기능들을 차례대로 구현하였는데 이러한 컴포넌트 모듈을 3단계 계층구조로 구현했던 이유는 다양한 거래 프로그램으로 재사용하기 위해서였다. 이러한 컴포넌트 모듈을 하나로 통합한 boolhts 주문처리기는 일반적인 증권사 HTS처럼 종목을 지정하면 호가창과 체결창이 동시에 연동되어 시세 변동 이벤트를… Read More »

주식투자 프로그래밍(시스템 트레이딩) 3.14 #. 주문 이벤트 핸들러

By | 2018-01-14

#. 주문 이벤트 핸들러 증권거래 시스템에서 내부적으로 주문 명령 처리 과정은 컴퓨터의 서버-클라이언트 모델과 똑같은 원리로 동작한다. 그래서 사용자가 HTS를 통하여 주문을 클릭해서 서버에 주문을 넣으면 서버에서는 주문을 접수했다는 응답을 보내고 이어서 주문이 체결되면 증권서버는 체결 신호를 사용자 HTS에 보내준다. 실제로 일반 HTS에서 주문처리 과정을 음성 파일로 알려주는 옵션을 켜두면 2단계 처리 과정을 들을 수… Read More »

주식투자 프로그래밍(시스템 트레이딩) 3.13 #. 정정과 취소 주문

By | 2018-01-14

#. 정정과 취소 주문 매수나 매도 주문 이후에 체결되지 않은 물량은 미체결 잔고조회로 확인할 수 있는데 이러한 미체결 물량의 주문을 변경시키려면 CpTd0313 함수로 정정 주문을 사용하고 CpTd0313 함수로 취소시킨다. 정정 함수와 취소 함수가 사용하는 변수가 거의 같아서 boolhts에서는 하나의 함수로 통합시켰으며 미체결 전체 물량을 정정(취소)할 경우에는 전체 수량을 입력하거나 ‘0’을 입력하면 된다. 또한 미체결 전체… Read More »

주식투자 프로그래밍(시스템 트레이딩) 3.12 #. 체결/미체결 잔고조회

By | 2018-01-14

#. 체결/미체결 잔고조회 매수/매도 후에 체결된 보유 잔고를 확인하려면 CpTd6033 함수를 이용하고, 미체결 잔고를 확인하려면 CpTd5339 함수를 이용하는데 전달 변수는 도움말에 자세하게 나와 있으므로 자세한 설명은 생략하겠다. 미체결 잔고를 조회하는 CpTd5339 함수에서 종목 이름을 전달받을 때는 영문자에 대한 검사를 수행해야 한다. 주식시장에 상장된 회사 이름 중에서는 일부 회사가 영문자를 사용하는데 그 중에서 어떤 상황에서는 1바이트… Read More »

주식투자 프로그래밍(시스템 트레이딩) 3.11 #. 매수와 매도 주문

By | 2018-01-14

#. 매수와 매도 주문 매수와 매도는 CpTd0311 함수 하나로 처리하는데 매수와 매도 상태를 정확히 구분하고, 주문 기호가 지정가(보통)가 아니라 시장가일 경우에는 가격을 지정할 필요가 없다. 한편 수량과 금액을 지정하는 사이에 사용자 클릭 지연 시간을 단축시키고자 미리 주문 수량과 금액을 지정해두었다가 디폴트(지정값) 상태로 무조건 주문하면 빠르게 주문을 넣을 수 있는는 boolhts에 매수 최적화를 위하여 매수와 매도… Read More »