# ❤️🔥 데이터 전처리 ❤️🔥
## 📋 정보
- 코스피200 선물 6월물의 만기일 다음 날(6월 2번째 금요일)에 변경함
- 코스피 200 종목 가져오는 url
http://data.krx.co.kr/contents/MDC/MDI/mdiLoader/index.cmd?menuId=MDC0201050201
-`dart api key`
abf4e3703b22eb082cd3977afbbcc0a6746afd61
-`dart 고유 번호 요청 url`
https://opendart.fss.or.kr/api/corpCode.xml?crtfc_key=abf4e3703b22eb082cd3977afbbcc0a6746afd61
-`dart 재무재표 요청 url`
https://opendart.fss.or.kr/api/fnlttSinglAcnt.json?crtfc_key=abf4e3703b22eb082cd3977afbbcc0a6746afd61&corp_code=00113058&bsns_year=2023&reprt_code=11011
- corp_code
회사 고유 번호
- bsns_year
년도
- reprt_code
1분기보고서 : 11013
반기보고서 : 11012
3분기보고서 : 11014
사업보고서 : 11011
- 컬럼명
'rcept_no' : 접수번호
'reprt_code' : 보고서 코드
'bsns_year' : 사업 연도
'corp_code' : 고유번호
'stock_code' : 종목 코드
'fs_div' : 개별/연결구분
'fs_nm' : 개별/연결명
'sj_div' : 재무제표구분
'sj_nm' : 재무제표명
'account_nm' : 계정명
'thstrm_nm' : 당기명
'thstrm_dt' : 당기일자
'thstrm_amount' : 당기금액
'frmtrm_nm' : 전기명
'frmtrm_dt' : 전기일자
'frmtrm_amount' : 전기누적금액
'bfefrmtrm_nm' : 전전기명
'bfefrmtrm_dt' : 전전기일자
'bfefrmtrm_amount' : 전전기금액
'ord' : 계정과목 정렬순서
'currency' : 통화 단위
당기: 당기는 현재의 회계연도로 현재의 이익이 계산되는 회계기간을 말한다.
전기: 직전년의 회계년도를 말한다.
## 1️⃣ 안정성비율
- 유동비율 cur_ratio
: dart 계정명: 유동자산&재무재표, 유동부채&재무재표

⛔️ 21개의 증권,은행 기업들이 유동자산, 유동부채를 Dart에서 제공하고 있지 않음
- 부채비율 debt_eq_ratio
: dart 계정명: 부채총계&재무재표, 자본총계&재무재표

부채비율이 낮을수록 안정성은 높기때문에 100에서 부채비율을 뺀값을 사용함.
- 당좌비율❌
: dart 계정명: 당좌자산, 유동부채

⛔️ 당좌자산은 유동자산에서 재고자산을 뺀 1년안에 현금화가 가능한 자산금액으로 Dart에서 제공하고 있지 않은 정보
## 2️⃣ 성장성비율
- 매출액증가율 sales_growth_rate
: dart 계정명: 매출액|매출액(손실)&재무재표

⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
- 영업이익증가율 op_income_growth_rate
: dart 계정명: 영업이익|영업이익(손실)&재무재표

⛔️ 1개의 기업(듀산퓨어셀)에서 영업이익 또는 영업이익(손실)을 Dart에서 제공하고 있지 않음
## 3️⃣ 수익성비율
- 매출총이익율❌
: dart 계정명: 매출액|매출액(손실)<영업수입&재무재표

⛔️ 매출총이익은 매출액에서 매출원가를 뺀 값인데 매출원가를 Dart에서 제공하고 있지 않음 값 계산 불가
⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
- 영업이익률 op_profit_margin
: dart 계정명: 영업이익|영업이익(손실)&재무재표, 매출액|매출액(손실)<영업수입&재무재표

⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
⛔️ 1개의 기업(듀산퓨어셀)에서 영업이익 또는 영업이익(손실)을 Dart에서 제공하고 있지 않음
- ROA roa
: dart 계정명: 당기순이익&재무재표, 자산총계&재무재표

- ROE roe
: dart 계정명: 당기순이익&재무재표, 자본총계(전기)&재무재표, 자본총계(당기)&재무재표

ROE = (당기순이익 / 평균 자기 자본)
평균 자기 자본 = (전기자본총계 + 당기자본총계) / 2
## 4️⃣ 활동성비율
- 총자산회전율 asset_turnover
: dart 계정명: 매출액|매출액(손실)<영업수익&재무재표, 자산총계&재무재표

⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
- 총부채회전율 debt_turnover
: dart 계정명: 매출액|매출액(손실)<영업수익&재무재표, 부채총계&재무재표

⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
- 총자본회전율 capital_turnover
: dart 계정명: 매출액|매출액(손실)<영업수익&재무재표, 자본총계&재무재표

⛔️ 16개의 증권,은행 기업들이 매출액 또는 매출액(손실)를 Dart에서 제공하고 있지 않음
-----------------------
## 🔄 데이터 전처리 자동화
### downloadKospi200ListCSV.js
- `kospi200list.csv` 다운받아서 저장 or 업데이트
### convertKospi200ListCSVIntoJSON.js
### downloadCorpCodeXML.js
- `CORPCODE.xml` 다운받아서 저장 or 업데이트
### makeOgongCorpListJSON.js
- `kospi200list.csv`, `CORPCODE.xml` 를 입력받아
- `ogongCorpList.json` 저장 or 업데이트
### configureOgongData.js
- `ogongData.csv` 정규화한 데이터들 저장
### 4개지수 뽑는 로직 하나 더만들어야됨
ㅜㅠㅠㅠ ㅠㅠ ㅠ ㅠ ㅠ ㅠ ㅠ ㅠ ㅠ. ㅠ ㅠ ㅠ
### mongoDB 저장