[일상] 이베스트 API

이베스트 증권 API를 이용하면 주식 매매도 자동으로 가능합니다. 이제 어느 정도 마무리가 되어서 기본 로직을 돌리고 있는데, 큰 문제는 없는 것 같습니다.

이베스트 증권 API는 다양한 기능을 제공하는데요. 일단 로그인, 잔고확인, 주문 내역을 확인할 수 있는 부분을 간단하게 만들어보았습니다.

저 같이 증권사 API를 이용하여 매매를 하고 싶으신 분들은 참고하시기 바랍니다.

우선 이베스트 API를 사용하기 위해서 설치하여야 할 것들이 좀 많습니다. 이 과정은 아래 글에 정리해 놓았습니다.

https://money-expert.tistory.com/4

이베스트에서는 demo용 계좌도 제공하기 때문에 실계좌로 거래하지 않고도 원하는 모든 일들을 해 볼 수 있는 장점이 있습니다. 비대면으로 계좌를 열 수도 있기 때문에 참 편하더군요.

필요한 모듈 설치가 완료되고, 이베스트 계좌를 열었다면 거래가 가능합니다.

이베스트 API는 com 방식으로 데이터를 받을 수 있는데요. 이게 32비트에서 구동하는 모듈이라 실행하기 위해서는 절차가 필요합니다. 위 글에서 소개한 anaconda32 를 설치하여야 하는데요.

그 후 아래 명령어를 이용하여 conda32 환경에서 프로그램을 실행시켜야 합니다.

C:/my/conda32/Scripts/activate
conda activate base

파이썬으로 만든 소스코드는 아래 github 사이트에 있습니다.
https://github.com/multizone-quant/xing-api/blob/master/xing_sample.py


간단하게 사용법을 설명드립니다.

xing api에서 잔고를 요청하는 TR 코드는 T0424입니다.

T0424를 처리하는 함수 get_balance(ticker)를 만들었습니다.

입력이 'all' 이면 전체 잔고를 특정 코드를 입력하면 해당 종목의 잔고만 돌려줍니다.

xing api에서 주문결과를 알려주는 TR 코드는 T0425입니다.

T0424를 처리하는 함수 order_status_tr(kind='2', code='all', cmd_cont='')를 만들었습니다.

여기에서 인자의 의미는 아래와 같습니다.

kind : 체결 종류

'0' : 모든 주문을 돌려 줌 (취소 포함)

'1' : 체결된 주문만 돌려 줌

'2' : 미체결된 주문만 돌려 줌

code : 원하는 종목 혹은 'all'

cmd_cont : 체결 내용이 100개 이상일 때 사용

프로그램을 실행시킨 후 잔고조회를 누르면 왼쪽에 보이는 형태입니다.

다음에는 주문하는 부분에 대하여 정리하도록 하겠습니다.

Sort:  

@upvu voted. voting percent : 57.84 %, delegate sp : 8000, token amount : 25000, total sp of upvu : 1112544

@tradingideas transfered 8 KRWP to @krwp.burn. voting percent : 29.38%, voting power : 83.67%, steem power : 1826883.26, STU KRW : 1200.
@tradingideas staking status : 4000 KRWP
@tradingideas limit for KRWP voting service : 12 KRWP (rate : 0.003)
What you sent : 8 KRWP [44580890 - b874066d6d0f3d9697c71616e6bd920c71e957a5]

Coin Marketplace

STEEM 0.12
TRX 0.34
JST 0.033
BTC 112519.15
ETH 4161.79
USDT 1.00
SBD 0.85