반응형
반응형
이번엔 파이썬을 이용해 매매 전략을 만들고 백테스팅하기 위한 패키지를 소개한다. 아마 백테스팅으로 가장 유명한 건 zipline이 아닐까 하는데, zipline을 만든 Quantopian이 망하면서 업데이트가 안된지 꽤 되어 현재 사용하기에는 좀 무리가 있다. zipline이나 backtesting.py 외에도 백테스팅 툴은 꽤 많으나 그중에 쓰기 간단하고 앵간한 기능은 다 지원하고 이후 성과분석 시트까지 제공하는 패키지 중에는 backtesting.py가 가장 괜찮지 않나 한다.https://github.com/kernc/backtesting.py GitHub - kernc/backtesting.py: :mag_right: :snake: Backtest trading strategies in Pytho..
2024.03.29 - [주가 예측 모델/관련 package] - python 파이썬으로 주식 차트 분석 / 기술적 지표 사용하기 : TA-Lib python 파이썬으로 주식 차트 분석 / 기술적 지표 사용하기 : TA-Lib이번엔 앞서 yfinance, finance-datareader, pykrx 에서 가져온 주식 가격 데이터에 기술적 분석 및 보조지표를 곁들일 수 있는 패키지를 소개한다. TA-Lib 이라는 패키지인데 기본은 C/C++로 만들어진 패키지antsinvest.tistory.com 지난번 TA-Lib에 이어 이번엔 pandas-ta를 설명하려고 한다. 기술적 지표를 만들어주는 패키지야 여럿이고 그중에서 왜 TA-Lib과 pandas-ta냐 하면 기능적으로는 pandas-ta가 가장 많..
이번엔 앞서 yfinance, finance-datareader, pykrx에서 가져온 주식 가격 데이터에 기술적 분석 및 보조지표를 곁들일 수 있는 패키지를 소개한다. TA-Lib이라는 패키지인데 기본은 C/C++로 만들어진 패키지인데 python으로 래핑 되어있는 패키지를 설치할 거다. 이 패키지는 다른 소위 기술적 분석(Technical Analysis) 패키지나 솔루션에 어떻게 보면 기본이 되는 패키지인데 나중에 설명할 pandas-ta라는 패키지도 TA-Lib을 래핑 한 패키지다. 한동안 유지보수가 안되다가 최근에는 다시 github 레포지터리도 업데이트되고 있는 듯하다.https://ta-lib.org/ TA-Lib - Technical Analysis LibraryUse TA-Lib to a..
이번에는 pykrx를 이용하여 한국 거래소 KRX 정보데이터시스템에서 ELW와 채권 정보를 가져와보겠다. 우선 ELW 데이터를 가져올 건데 이 ELW 관련된 데이터는 리스트와 종목명 정도 밖에 없다.from pykrx import stockfor ticker in stock.get_elw_ticker_list('20240306'): print(ticker, stock.get_elw_ticker_name(ticker)) ELW는 주식 연계 워런트(equity linked warrant)라고 해서 그냥 옵션이라고 보면 된다. 아, 콜매도, 풋매도 개념은 없으니, 거래형태는 어떻게 보면 선물과 더 유사할지도.. 과거 대한민국이 이 ELW 시장규모가 세계 1, 2위를 다투었으나 개인투자자들을 지킨다는 ..
종목, 지수데이터에 이어 이번에는 pykrx를 이용해 한국 거래소 KRX 정보데이터시스템에서 ETF/ETN 데이터를 가져오는 방법을 알아보자. 근데 ETF와 ETN은 도대체 무엇이 다르냐. ETF는 Exchange Traded Fund, ETN은 Exchange traded Note. 발행주체가 다르니 법적 성격이 다르니 하는 것보다는 단순히 하나는 펀드고 하나는 채권이라고 생각하면 이해하기 쉽다. 평소에 거래하는 데는 두 개의 차이점은 아예 없다. 허나 채권은 만기가 있다. ETN은 만기가 되면 현재 기준가액으로 청산된다. 물론 만기가 10년씩은 되니까 평소에는 문제가 없긴 하지만 쳐 물렸다고 장기투자한답시고 냅둿다가 그대로 손실확정 짓기 딱 좋은 상품.(더군다나, 시중에 유통되는 대부분의 ETN은 상..
이전 포스팅에 이어서 pykrx를 이용해 한국거래소 KRX 정보데이터시스템에서 데이터를 가져오는 내용을 좀 더 살펴본다. 이번에는 공매도 정보를 가져와볼 텐데 공매도 데이터는 2일 이전 데이터가 제공된다. 아마 공매도 데이터는 완전히 전산화되어 있지 않기 때문인 듯하다. 우선 개별 종목의 날짜별 공매도 정보를 불러와보자.from pykrx import stockdf = stock.get_shorting_status_by_date('20231201', '20240326', '005930')print(df) 공매도 거래량, 잔고, 거래대금, 잔고금액이 제공된다. 이번에는 특정 일자의 전 종목의 공매도 데이터를 받아와보자. 단, 공매도 데이터는 pykrx 다른 기능들처럼 동일한 함수명으로 호출하지 않는..