breadum / kiwoom

키움 증권 OpenAPI 파이썬 심플 라이브러리
MIT License
160 stars 48 forks source link

3일동안 고민이 해결되지 않아 글을 올립니다. #21

Closed Sangsu1979 closed 7 months ago

Sangsu1979 commented 7 months ago

Historical data를 실행하면 입력한 시작날짜와 종료와 무관하게 3월 데이터만 csv로 추출합니다. 도저히 이해가 되지 않아 글을 올립니다. 제가 잘못하고 있는 것인가요?

도움부탁드립니다.^^

breadum commented 7 months ago

안녕하세요, 활용하신 코드 일부를 적어주시면 살펴보겠습니다.

Sangsu1979 commented 7 months ago

원본 파일을 그대로 다운을 받았습니다. 수정을 전혀 안 했습니다. 물론 32비트 및 기타 라이브러리는 모두 설치되어 있습니다. 아래는 CLI의 로그내용입니다.

[GetPCIdentity] VER 3.2.0.0 build 2015.8.12

[GetPCIdentity] VER 3.2.0.0 build 2015.8.12

로그인 정상처리

Download Start for 2168 stocks in KOSPI.

이렇다면 22년 9월 19일부터 9월 23일 데이터가 저장이 되어야 하는데 저장된 데이터는 24년 3월 4일부터 29일까지의 데이터입니다. 파일 첨부합니다. 000020.csv

제 실력이 부족하여 큰 그림을 못 보는 것 같습니다. 작은 실마리라고 부탁드립니다. ^^

breadum commented 7 months ago

키움에서 틱데이터는 최근 10일 정도만 제공해줍니다.
그래서 틱데이터는 3월 데이터 정도만 다운로드 가능하십니다.
분봉 데이터는 최근 1년까지 제공해 주는 것으로 알고 있습니다.

다만, 튜토리얼 파일을 그대로 실행시키신 것 같은데
로그 보시면 start, end 인자가 None으로 빠져있네요.

{code='000020', start=None, end=None, period='tick'}
{code='000040', start=None, end=None, period='tick'}

아래처럼 수정해 주시면 입력은 정상 반영되겠지만, 이미 유효 기간이 지난 데이터는 받을 수 없습니다ㅠ

# 실행 스크립트
if __name__ == '__main__':
    # 통신을 위해 QApplication 이용
    app = QApplication(sys.argv)

    # 인스턴스 생성
    bot = MyBot()

    # 로그인 및 다운로드
    kwargs = {
        'market': '0',
        'period': 'tick',
        'start': '20220919',
        'end': '20220923',
        'merge': True,
        'warning': False,
        'path': 'C:/Data/market/KOSPI/tick'
    }
    result = bot.run(kwargs)

    # 다운로드 완료 시 종료
    app.exit(0)
Sangsu1979 commented 7 months ago

아 이제야 묵은 체증이 내려가는 기분입니다. ^^ 정말 감사합니다. 공유해 주신 소스 너무 잘 사용하고 있습니다. 감사히 소중하게 사용하겠습니다. 다시 한번 감사드리고 즐거운 주말되세요. ^^

breadum commented 7 months ago

즐거운 주말 보내세요.
감사합니다~