반응형

파이썬 21

파이썬으로 코스피,코스닥 시세 모니터링 알림(추가업데이트)

어제 포스팅했던 것이 단순히 현재값 출력에 그쳤다면 이번에는 아래 내용이 추가되었습니다. 1. 원하는 보조지표 데이터 계산 2. 데이터 가져온 시간 기록 3. 1분마다 데이터를 데이터프레임 저장하고 엑셀로 남기기 첫번째 : 원하는 보조지표 데이터 계산 데이터프레임에 넣고 엑셀로 저장하기 위해서 원하는 보조지표들을 미리 만들어 둘 필요가 있습니다. 본 포스팅 예시에는 스토캐스틱 지표와 볼린저밴드 그리고 가격이동평균선만 만들어 놓았습니다. 해당 함수들은 다음과 같습니다. 종가데이터만 가지고 와서 아래 함수에 넣으면 해당 값을 리턴시켜주게 됩니다. 그리고 나중에 1분마다 이 해당 데이터들을 담을 리스트를 미리 만들어 주었습니다. 이렇게 담긴 리스트들은 나중에 데이터프레임에 칼럼으로 들어가게 됩니다. 두번째 :..

파이썬으로 코스피,코스닥 시세 모니터링 알림

특정 종목 또는 지수의 시세를 모니터링하고 알림을 받아볼 수 있는 코드 입니다. 아래 코드는 단순히 출력만 해주도록 짜놓았지만, 텔레그램 notibot을 활용한다면 메세지까지 받아볼 수 있게 됩니다. 코드는 단순합니다. FinanceDataReader를 활용하여 실행과 동시에 코스피와 코스닥 당일 시가와 종가를 불러오게 됩니다. 그리고 1분간격으로 현재가(종가)와 시가대비 등락률을 출력하게 됩니다. 그리고 아래 보면, 각 data에 리스트형식을 만들어 두었는데, 이는 1분단위로 가져오는 데이터를 저장하고 장마감 후 그래프로 그려볼 수 도 있고, 아니면 계속 누적되는 데이터를 기준으로 가격이평선 및 여러 보조지표까지 만들어 볼 수 있게 됩니다. 거래량까지 추가하면 더 좋겠군요. 궁금하셨던 분들은 유용하게 ..

지수 역추적 종목 발굴하기(파이썬 상관분석)

이번엔 역추적 종목입니다. 앞의 포스팅에서는 corr > 0.9 기준으로 지수추종이 강한 종목들을 보았다면, 이번에는 -0.5보다 작은 종목들의 흐름은 어떤지 살펴보고자 합니다. 참고로, 아래 분석은 1998년을 시작점으로 분석하였습니다. 시작점을 어디로 두느냐에 따라 corr값은 바뀔수가 있겠습니다. -0.5보다 작은 종목들의 10종목을 코스피, 코스닥에서 살펴보면 아래와 같습니다. 빨간색 X가 코스닥인데, 저 밑에 혼자 -1.0을 기록하고 있는 종목이 있습니다. 'IBKS제21호스팩' 인데, 12/16일 신규상장되어 데이터가 별로 없다보니 분석이 제대로 될 수가 없었겠네요. ※ 코스피 지수 역추적 top10 종목 Code Name Corr 757 009320 대우부품 -0.751290 681 0113..

지수추종(추적) 종목 발굴하기(파이썬 상관분석)

지수추종이란 뜻은 지수의 흐름을 따라 움직인다는 뜻입니다. 즉, 코스피가 상승할때 해당 종목의 주가도 같이 상승하는 것이죠. 지수를 추적한다고 하기도 하고, 오히려 이 반대되는 경우는 지수 역추종이라기보다는 역추적을 더 많이 쓰는것 같습니다. 뭐가 되었건 의미는 저러하다는 것이죠. 그런데, 그런 종목들은 얼마나 강하게 지수를 추종하는지 궁금해질 수 있습니다. 또는 얼만큼의 상관성을 가지고 반대로 움직이는지를 알수도 있죠. 그게 상관분석 입니다. 아래는 코스피와 코스닥 종목들의 지수추종 상관성을 그래프로 나타낸 결과물 입니다. FinanceDataReader 모듈로 읽어온 코스피 942종목, 코스닥 1,614종목의 종가데이터 기준으로 얼마나 해당 지수들을 따라 움직이는지를 분석한 결과입니다. 그래프를 보면..

stocahstic(스토캐스틱)과 RSI를 활용한 매수,매도 신호 그리기

오늘은 Stochastic 지표와 RSI를 활용한 매수,매도를 차트에 나타내보는 코드입니다. 각 보조지표에 대한 설명은 생략하고 넘어갑니다. 스토캐스틱은 매수세가 매도세보다 강할 때는 그 위치가 높게 형성되고, 매도세가 매수세보다 강할 때는 그 위치가 낮게 형성된다는 것을 이용한 것이고, RSI는 가격의 상승압력과 하락압력 간의 상대적인 강도를 나타내는 것으로 상승하면 과매수, 하락하면 과매도로 보게 됩니다. 먼저 주요 모듈을 불러오고 삼성전자를 대표로 하여 2019년부터 22년12월14일까지 데이터를 가져옵니다. #importing necessary libraries import FinanceDataReader as fdr from datetime import datetime import pandas ..

파이썬으로 코스피와 환율관계를 그려보기(feat.human)

이번에는 chatGPT가 아니라 인간이 직접 코딩한 결과물입니다.ㅎㅎ 바로 갑니다. 심플하게 financeDataReader를 통해서 코스피와 환율정보를 불러옵니다. 모듈설치가 안되어 있으시면 pip install finance-datareader 로 설치하셔야하겠죠. 불러올때는 데이터프레임으로 불러오므로 df로 명명하였습니다. df = fdr.DataReader('USD/KRW', '2010') # 특정 년도 이후 데이터만 보려면 년도하나만 적어준다. df1 = fdr.DataReader('KS11', '2010') # 특정 기간동안의 데이터를 보려면 기간을 적어준다. USD/KRW가 환율, KS11이 코스피 이고, 2010으로 해두면 2010년 이후부터 현재까지의 데이터를 모두 불러오게 됩니다. 그리..

파이썬으로 볼린저밴드를 만들어보기(feat. chatGPT)

GPT의 기능이 상상이상으로 많아서 보조지표를 코드로 만들어달라고 부탁을 해보았습니다. make the python code to analysis bollinger band of KOSPI KOSPI 볼린저밴드 분석하기위한 코드를 만들어줘. To calculate the Bollinger Bands for the KOSPI index in Python, you will first need to obtain the historical data for the index. You can then use this data to calculate the moving average and standard deviation, which are used to plot the Bollinger Bands. Here is..

Type error : not enough arguments for format string 해결 방법

오늘도 아마 별다른 매매는 없을 것 같지만, 프로그램 에러가 떠 있어서 확인해 보았습니다. 'Type error : not enough arguments for format string' 이 에러는 변수 갯수와 변수에 들어갈 데이터 갯수가 안맞을 때 발생하는 에러였습니다. 프로그램 상 물타기로 지정해둔 곳에서 발생했는데, 아무리 봐도 변수와 데이터 갯수는 일치합니다. 전혀 문제가 없죠. 그런데 왜 에러가 떴습니다. 그리고, 물타기 코드가 여러개가 있는데 그 중 한 곳에서만 발생해서 계속 보다보니 차이가 있었습니다. # 오류안생김 self.logging.logger.debug("%s %s주 실시간 1차 물타기 조건통과" % (code_nm, quantity)) # 오류생김 self.logging.logge..

파이썬 판다스 에러 / ValueError: Columns cannot be a set

앞서 pip가 정상적으로 작동하지 않는 문제를 겪은 일에 대해 포스팅했었는데, 이를 해결하는 과정에서 파이썬 버전을 최신버전으로 업데이트를 했습니다. (현재 3.11.0 버전, 64bit) 그리고 지워졌던 모듈을 재설치 중에 있었고, 자연스럽게 pandas를 pip install pandas로 설치를 하니 자동으로 최신버전 1.5.2버전이 깔렸습니다. 문제는 여기서 발생했는데요, 기존에 파이썬 3.10 버전이 깔려있었던 걸로 기억하고, pandas는 어떤 버전이 깔렸었는지는 기억이 안납니다만, 분명 코드가 변경된 내용이 없는데, 아래와 같이 오류가 발생했습니다. ValueError: Columns cannot be a set 데이터프레임을 정의하면서 열을 지정하는 코드인데, 거기서 열은 set가 될 수 ..

vscode에서 pip 오류가 뜨는 경우. / 'pip' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다.

주식 관련은 아니지만 업무적으로 코딩작업이 필요해서 하다가 생긴 오류가 있어서 해결 방법을 정리해 봅니다. 며칠간 계속 잘 해 왔는데, 어느순간 기억나지도 않는 특정 모듈을 설치하다가 몇번 error가 떴었고, 그 때문인지 이후 이런 오류가 뜨더군요 ImportError : No module named 'resource' "AttributeError module 'time' has no attribute 'clock'" 잘 쓰고 있었는데 너무 황당한거죠. 특히나, seaborn 모듈을 불러오는 파일에서만 발생하는걸 확인했습니다. 어쨌든 이를 해결해야 했고 답을 찾지 못해서 vscode는 놔두고 파이썬을 다시 설치했고, pandas 설치부터 하려고 pip install pandas를 입력하는 순간! 'pi..