게시글 삭제
정말 삭제하시겠습니까?
한국투자증권 API로 파이썬 자동매매 시스템 구축 강의 - 대체거래소(NXT) 관련 업데이트 사항 반영
[주요 목차]
한국투자증권 API 변경 사항
대체 거래소(NXT) 설정 방법
실시간 데이터 수신 및 처리
안녕하세요, 여러분! 오늘은 한국투자증권 API의 최근 변경 사항에 대해 이야기해보려고 해요. 특히 대체 거래소인 NXT와 관련된 업데이트가 있었는데요, 이 내용을 잘 이해하고 적용하면 여러분의 파이썬 자동매매 시스템을 한층 더 발전시킬 수 있을 거거든요. 제가 실제로 이 API를 사용해봤는데, 변경된 사항을 반영하는 과정에서 몇 가지 유용한 팁도 얻었어요. 이 글을 통해 한국투자증권 API의 변경 사항과 대체 거래소 설정 방법, 실시간 데이터 수신 처리 방법에 대해 자세히 알아보도록 하겠습니다.
한국투자증권 API로 파이썬 자동매매 시스템 구축 강의 - 대체거래소(NXT) 관련 업데이트 사항 반영 · 주요 포인트 1
한국투자증권 API 변경 사항
한국투자증권의 API가 최근에 업데이트되면서 TR(거래 요청) 입력 방식이 변경되었어요. 기존 코드도 여전히 작동하지만, 새로운 방식으로 변경하는 것이 좋습니다. API 문서에 따르면, 주문 관련 TR이 변경되었고, 새로운 필드가 추가되었어요. 특히, 거래소를 선택할 수 있는 기능이 추가되었는데, krx와 nxt 중 하나를 선택할 수 있습니다.
기존의 코드를 사용하고 계신 분들은 TR 입력을 확인하고, 필요한 경우 수정해야 해요. 예를 들어, 주문을 할 때 기본적으로 krx로 설정되어 있는데, 이를 nxt로 변경하고 싶다면 해당 변수를 수정하면 됩니다. 이렇게 하면 대체 거래소에서의 주문이 가능해지거든요. 제가 실제로 이 과정을 진행해봤는데, 간단한 코드 수정만으로도 다양한 거래소에서의 주문이 가능해졌어요.
또한, 한국투자증권에서는 스마트 오더 라우팅(SOR)을 지원하지 않기 때문에, 직접 주문할 거래소를 선택해야 한다는 점도 유의해야 해요. 키움증권과 달리, S 주문은 아직 지원되지 않으니 이 점도 참고하시길 바랍니다.
한국투자증권 API로 파이썬 자동매매 시스템 구축 강의 - 대체거래소(NXT) 관련 업데이트 사항 반영 · 실전 화면 2
대체 거래소(NXT) 설정 방법
NXT를 대체 거래소로 설정하는 방법은 간단해요. API 문서에서 제공하는 샘플 코드를 참고해, 기본적으로 krx로 설정된 부분을 nxt로 수정하면 됩니다. 예를 들어, 주문을 생성할 때 다음과 같이 코드를 수정할 수 있어요.
python
order = {
'exchange': 'NXT', # 또는 'KRX'
'symbol': 'AAPL',
'quantity': 10,
'price': 150.0,
}
이렇게 설정하고 나면, 자동매매 시스템에서 NXT로 주문을 보낼 수 있게 됩니다. 실무에서 이 설정을 해보니까, 다양한 거래소에서의 트레이딩 전략을 실현할 수 있어 좋더라고요. 특히, 특정 종목에 대한 유동성이 높은 거래소를 선택함으로써 더 나은 거래 성과를 기대할 수 있습니다.
추가로, 기존의 주문 관련 API는 여전히 사용할 수 있기 때문에, 변화가 두려운 분들은 기존 코드를 계속 사용할 수 있다는 점도 장점이에요. 하지만, 새로운 기능을 활용하면 더 많은 기회를 잡을 수 있으니, 적극적으로 업데이트하는 것이 좋습니다.
한국투자증권 API로 파이썬 자동매매 시스템 구축 강의 - 대체거래소(NXT) 관련 업데이트 사항 반영 · 주요 포인트 3
실시간 데이터 수신 및 처리
실시간 데이터 수신 부분에서도 몇 가지 변경 사항이 있었어요. 특히, 이제는 청크로 데이터가 들어오는 경우가 많아졌습니다. 그래서 청크 데이터를 제대로 처리하기 위해 코드를 수정할 필요가 있습니다. 제가 수정한 코드를 예로 들어볼게요.
python
data_chunk = receive_data() # 데이터를 수신하는 함수
for data in data_chunk:
process_data(data) # 각 데이터를 처리하는 함수
이렇게 하면 여러 개의 데이터를 동시에 처리할 수 있어서, 실시간으로 빠르게 반응할 수 있습니다. 기존에는 데이터 카운트가 1인 경우가 많았는데, 이제는 5개, 10개씩 들어오는 경우도 많아졌어요. 실제로 이 점을 반영하니까, 데이터 수신 속도가 크게 향상되더라고요.
마지막으로, 주문 접수나 체결에 대한 수신처리도 수정이 필요합니다. 주문가격 같은 경우에 -1로 표시되는 부분이 생겼고, 이를 반영해야 하니 주의하세요. 이 점을 잘 반영하면 실시간 데이터 수신이 훨씬 더 정확해질 거예요.
[자주 묻는 질문]
한국투자증권 API의 주요 변경 사항은 무엇인가요?
최근 한국투자증권 API에서는 TR 입력 방식이 변경되었고, 거래소 선택 기능이 추가되었습니다. 이제 krx와 nxt 중 하나를 선택할 수 있으며, 기존 코드도 여전히 사용 가능하지만, 새로운 방식을 반영하는 것이 좋습니다.
NXT를 대체 거래소로 설정하는 방법은?
NXT를 대체 거래소로 설정하려면, API 문서의 샘플 코드를 참고하여 주문 생성 시 'exchange' 필드를 'NXT'로 변경하면 됩니다. 이렇게 하면 자동매매 시스템에서 NXT로 주문을 보낼 수 있습니다.
실시간 데이터 수신을 어떻게 개선할 수 있을까요?
실시간 데이터 수신 시 청크로 들어오는 데이터를 처리하기 위해 코드를 수정해야 합니다. 여러 개의 데이터를 동시에 처리할 수 있도록 루프를 설정하면, 데이터 수신 속도를 향상시킬 수 있습니다. 추가로, 주문 접수 및 체결에 대한 수신처리도 변경된 사항을 반영해야 합니다.