시세는 REST 조회와 실시간 WebSocket 두 가지로 받습니다. 봉마감 신호는 REST 조회로 충분합니다.
그런데 NXT 연장시간에는 REST 시세가 정규장 종가에 멈추는 구간이 있어서 실시간 WebSocket으로만 시세를 받을 수 있습니다.
WebSocket이 끊기면 REST로 넘어가 매매를 이어갑니다.
이격도는 단기 SMA를 장기 SMA로 나눈 값에 100을 곱해 구하고, 매도 단계를 판단할 때 씁니다.
4시간봉은 60분봉을 날짜 경계에 맞춰 합쳐서 만들었습니다. 크로스, 이격도, 손절 기준값은 모두
화면에서 직접 고칠 수 있어서 종목이나 기준값을 바꿀 때 개발자를 부를 필요가 없습니다.
03어려웠던 부분
정규장과 NXT, 시간대별 주문 경로
같은 매수라도 정규장과 NXT 연장시간은 받아 주는 주문 방식이 다릅니다. 정규장은 SOR(최적경로) 시장가로
바로 체결을 노리지만, NXT 연장시간에는 일반 시장가 주문이 거부되고 애프터마켓 구간은 지정가만 받습니다.
그래서 현재 시각에 따라 거래소 경로와 주문 방식을 자동으로 바꾸게 했습니다.
연장시간에는 현재가 ±0.5%의 마켓터블 지정가(호가 단위 반올림)로 보냅니다. 시장가처럼 바로 체결되면서도 체결가가 그 범위를 벗어나지 않습니다.
정규장은 SOR 시장가, 연장시간은 NXT 지정가로 시각에 따라 주문 경로가 정해집니다. 사용자는 시간대를 신경 쓸 필요가 없습니다.
연장시간에 REST 시세가 멈추는 문제는 실시간 WebSocket 구독으로 풀었습니다. 장 마감 후에도 실제 현재가로 판단합니다.
※ 본 사례는 과거 고객 요구사항을 익명 처리하여 재구성한 것이며, 수익률과 수익금은 공개하지 않습니다.
알고랩은 매매 자동화 프로그램 제작 서비스이며, 종목 추천, 투자 자문, 수익 보장 서비스가 아닙니다.
과거 백테스트 결과가 미래 실거래 수익을 보장하지 않습니다. 해외선물, 파생상품 투자는 원금 손실 위험이 있습니다.
쓰시는 매매 규칙이 있으시면
규칙을 말로 설명해 주시면 프로그램으로 옮길 수 있는지 봐 드립니다.
증권사와 종목 수, 거래하려는 시간대를 함께 알려 주세요.