trading api

  • ls증권 api 실제 서버와 모의 서버의 차이

    실제 서버가 더 안정적이지만 모의 서버가 더 빠르다. 실제 서버에는 접속자들이 많고 모의 서버에는 적기 때문이다. 모의 서버는 간혹 끊기거나 이상 작동을 하기도 한다. ​주문 패킷을 클라이언트로부터 받아서 패킷 안의 필드 데이터가 제대로 된 것인지 판단하는 기준이 실제 서버와 모의 서버가 다르다. 일부 필드 데이터에 오류가 있어도 모의 서버는 주문을 처리하기도 한다. 모의 서버에서 정상적으로…

  • ls증권의 api에 쓰이는 애스키 dc 문자

    애스키 17부터 20까지는 dc1부터 dc4이다. device control의 약자이다. 예전에 원격 제어 장비 이용에 쓰였던 것들이다. ls증권의 api를 이용하다 보면 이게 나온다. 원래의 용도로 쓰인 건 아니고 인 블록의 애트리뷰트 값에 의미 없는 걸 넣을 때 이게 들어간다. 데브센터에서 트랜잭션을 실행해서 보면 애트리뷰트가 있는 인 블록의 경우 그 값으로 이게 들어 있는 걸 확인할 수 있다.

  • c# 인터프로세스 통신 – named pipe

    프로세스들 사이에서 대이터를 주고 받아야 할 때가 있다. 예를 들어 이런 경우에 쓸모 있다. ls증권의 api를 이용한 애플리캐이션은 32 비트로만 빌드를 할 수 있다. 32 비트 애플리캐이션은 메모리를 원칙적으로 2gb까지 이용할 수 있으며 변칙적으로 4gb까지도 가능하다. 사실적으로는 3gb 정도까지 쓸 수 있다. 이는 커다란 제약이다. 위의 api로 32 비트 서버 애플리캐이션을 만들고 64 비트 클라이언트…

  • [전자 공시] 영업 수익 계정도 제공하지 않는 api

    금융감독원은 여러 회사들의 재무 정보를 api로 제공한다. 그런데 이 api에는 심지어 코스피와 코스닥에 상장되어 있는 회사들의 영업 수익 계정도 포함되어 있지 않아 문제다. 보통 회사들의 매출액 계정이 금융 회사에는 없다. 대신 매출액에 해당하는 영업 수익 계정이 있다. 그런데 전자 공시 api로 매출액 계정은 확인할 수 있지만 영업 수익 계정은 할 수 없다. 제공하지 않기 때문이다….

  • [전자 공시] 신규 상장 종목의 고유 번호

    한국거래소는 종목 코드로 거래의 대상을 특정하지만 금융감독원은 고유 번호로 공시의 주체를 특정한다. 코스피나 코스닥에 상장되는 회사는 그 전에 이미 공시를 하고 있기 때문에 고유 번호를 가지고 있다. 공시를 하는 회사들의 고유 번호와 종목 코드를 알려면 아래의 엔드포인트를 이용하면 된다. 상장하는 날 위 엔드포인트는 상장하는 종목의 종목 코드를 제공하지 않아 문제된다. 빈 값이 온다. 상장 다음…

  • [ls api] t1637 – 프로그램 매매 대이터가 존재하지 않는 경우

    t1637을 이용하면 특정 종목의 프로그램 매매 대이터를 한 번에 최고 100 영업일 꺼까지 다운로드할 수 있다. 프로그램 매매가 모든 종목들을 대상으로 이루어지는 건 아니다. 프로그램 매매로 거래가 되지 않은 종목에 대해 위의 트랜잭션으로 리퀘스트를 하면 서버는 널을 보내지 않고 아예 리퀘스트 응답 패킷을 보내지 않는다. 이례적인 방법이다. 비슷한 경우 보통은 빈 대이터를 보내므로 이걸 받아서…

  • ls증권 api 레퍼런스

    데브센터를 통해서도 볼 수 있지만 자꾸 파일 열거나 저장할 거냐고 물어서 번거롭다. 아래 링크로 접속하면 바로 볼 수 있다. https://www.ls-sec.co.kr/apiguide/guide.jsp?cno=100

  • 시가 단일가 거래 대금으로 인한 왜곡과 보정 방법

    매매에 거래 대금을 이용하는 경우 개별 종목의 절대적인 수치를 관찰할 때에는 문제될 게 없는데 여러 종목들의 거래 대금을 상대적으로 비교해야 할 때에는 시가 단일가 매매에 해당하는 금액을 걸러 내야 할 필요가 있다. 종목에 따라 이게 큰 경우가 있고 작은 경우도 있기 때문이다. 예를 들면 2024년 3월 29일 거래 대금 1위인 삼성전자와 2위인 엔젤로보틱스는 각각 2,212,079와…

  • 이베스트 xingapi로 개장 여부 확인하기

    자동으로 작동하는 앱을 만들어 이용할 때에는 애플리케이션이 스스로 장이 열렸는지 여부를 확인해야 할 때가 있다. 하나의 방법으로는 모든 목적에 맞게 제어할 수 없으므로 아래의 것들을 섞어서 쓴다. t8411 차트 데이터 트랜잭션을 이용하면 개장 시간과 폐장 시간을 확인할 수 있다. 수학능력시험일처럼 일시적으로 개장/폐장 시간이 바뀌는 날에 유용하지만 장이 열리지 않는 날에도 열리는 것처럼 시간들을 반환하는 문제가…