"계좌를 부탁해" 서비스

꿀이·2024년 3월 3일
0
post-thumbnail

💡개요

기존에 사용하던 증권사 어플이 해외에서 사용하기 너무 불편해서 (실행하는데 한세월🥲), 카카오 증권을 설치해봤는데요? UI 가 직관적이고 조작하기 쉬워서 즐겁게 거래를 하고 있어요. (계좌잔고는 즐겁지 않지만... 또르륵)

하지만 카카오 증권에서 종목 검색기능이 약한것 같았어요. 예를들면 3개년도 연속 영업익이 증가하는 기업 검색 같은 기능이요. 그래서 한번 금융감독원 OPEN API 를 활용하여 좋은 종목들을 검색하는 서비스를 만들어 볼까 해요.

좋은 종목을 선택한 후에 매수 타이밍을 볼 수 있는 서비스도 추가적으로 만들어 보는걸 목표로 해보려고 해요!


💡기술스택

  • HTML / CSS / Javascript
  • Nodejs
  • DB 는 미정 mongoDB or mysql

💡종목 정보 받아오기

보고싶은 상장기업의 재무정보를 요청할 때 쿼리 파라미터로 종목 고유번호를 넘겨줘야 하기 때문에 가장 기본이되는 상장된 모든 기업의 종목정보를 가져와볼게요.

고유번호 개발가이드 를 참고하면 GET 요청에 대한 응답으로 이진데이터를 보내주는걸 확인할 수 있어요. (매번 JSON 데이터만 받다가 이진데이터를 처음 받아봐서 2시간동안 멘붕🥲)

//js 코드
const corpCodeUrl = `https://opendart.fss.or.kr/api/corpCode.xml?crtfc_key=${API_인증키}`;

axios
    .get(corpCodeUrl, { responseType: "arraybuffer" })
    .then((res) => {
        const data = res.data;

        fs.writeFile("./CORPCODE.zip", Buffer.from(data), "utf8", (err) => {
            if (err) throw err;
            console.log("종목 정보를 저장했습니다!");
        });
    })
    .catch((error) => {
        console.log(error);
    });

종목 정보 압축 해제 결과

<?xml version="1.0" encoding="UTF-8"?>
<result>
    <list>
        <corp_code>00434003</corp_code>
        <corp_name>다코</corp_name>
        <stock_code> </stock_code>
        <modify_date>20170630</modify_date>
    </list>
    <list>
        <corp_code>00434456</corp_code>
        <corp_name>일산약품</corp_name>
        <stock_code> </stock_code>
        <modify_date>20170630</modify_date>
    </list>

xml2js 라이브러리를 사용해서 파싱 후 Hash Map 에 "종목이름" : "종목코드" 형태로 보관중 → DB 로 관리할지 메모리에 둘지 생각중 ing


💡//

profile
내게 맞는 옷을 찾는중🔎

0개의 댓글