이렇게 while 문을 거쳐도 아직 받아 올 데이터가 남아 있다면 여전히 self.has_next_tr_data 값이 2이기 때문에 while 문을 사용하여 반복됩니다. 그렇게 마지막 데이터 수신까지 되면 self.has_next_tr_data 값이 0이 됩니다. 그러면 더 이상 받아 올 데이터가 없으므로 반복문을 빠져나옵니다.
반복문을 빠져나오면 그동안 받아 온 데이터를 저장한 ohlcv를 사용하여 DataFrame을 만듭니다. DataFrame란 이전에 설치한 pandas 패키지에 포함된 객체이며, 수학 시간에 배운 행렬처럼 행과 열을 가진 자료 구조입니다. 혹시 행렬이 잘 기억나지 않는다면 DataFrame은 가로축과 세로축을 가진 엑셀 테이블 형태로 데이터를 저장할 수 있다고 생각하기 바랍니다. DataFrame을 사용하는 이유는 가격 정보 저장에 사용할 데이터베이스를 쉽게 사용하기 위해서입니다.
그러면 가져온 모든 일봉 정보를 바탕으로 DataFrame을 만들어 보겠습니다.
df = pd.DataFrame(ohlcv, columns=['open', 'high', 'low', 'close', 'volume'], index=ohlcv['date'])