본문 바로가기

python47

python 증권데이터 분석 - 볼린저 밴드 추세 추종 매매기법 볼린저 밴드 매매기법 볼린저 밴드의 지표인 %b 값과 밴드폭이 무엇인지 다시 한번 리마인드 해보자 - %b : 볼린저 밴드 어딘가에 주가가 위치해있는지를 나타내는 지표, 주가와 연계하여 트레이딩 시스템을 구축할 때 필요한 핵심 수단으로 활용할 수 있다. - 밴드폭 : 밴드의 너비를 수치로 나타낼 수 있으며, 추세의 시작과 끝을 포착하는 역할한다. 볼린저 밴드와 함께 사용되는 지표는 모멘텀, 추세, 거래량, 과매수/과매도, 심리 등 거래량 지표들이 많이 사용된다. 범주별 기술적 지표 범주 기술적 지표 모멘텀 변화율, 스토캐스틱 추세 선형회귀, MACD 거래량 일중강도, 매집/분산, 현금흐름지표, 거래량가중 MACD 과매수/과매도 CCI, RSI 심리 여론조사선, 풋-콜 비율 볼린저 밴드를 개발한 존 볼린저.. 2022. 12. 30.
python 증권데이터 분석 - 볼린저 밴드 지표 python구현 증권투자 보조지표 국내의 어떤 암호화폐 거래소의 통계에 따르면 투자자들이 이용하는 보조지표 이용패턴을 분석한 결과가 있다. 기본 보조지표인 이동평균선을 제외하고 가장 많이 사용된 보조지표는 일목균형표, 볼린저밴드, 매물대, 상대강도지수, 이동평균 수렴확산 순으로 나타났다고 한다. 일목균형표 시세의 균형을 시각적으로 파악할 수 있는 지표로, 가격이 언제까지 오르고 언제까지 내릴 것인지 시간에 주목한 난해한 이론으로 만들어진 지표이다. 일목균형표는 '전환선', '기준선', '선행스팬 1', '선행스팬 2', '후행 스팬' 5개의 의미있는 선을 이용해 현재 가격을 알아내고자 하는 것으로 시간개념이 포함된 지표이다. 볼린저밴드(Bolinger Band) 가격이 이동평균선을 중심으로 표준편차 범위(상한선 및 하한.. 2022. 12. 28.
python 증권데이터 분석 - 샤프지수, 포트폴리오 최적화 python구현 샤프지수(Shape Ratio) 현대 포트폴리오 이론에 따르면 포트폴리오 별 개별 리스크가 주어졌을 때, 효율적 투자선보다 높은 수익률은 기대할 수 없다는 한계점을 가지고 있다. 리스크를 최소화하고 수익률을 최대화하는 포트폴리오는 어떻게 찾을 수 있을까? 현대 포트폴리오 이론을 개발한 해리 마코위츠의 초기 이론으로는 해결하기 힘들지만 해리 마코위츠의 제자인 윌리엄 샤프(William Shape)의 샤프지수로 해결할 수 있다. 윌리엄샤프 역시 샤프지수Shape Ratio를 개발하여 노벨상을 수상하였고, 현대 포트폴리오 이론에서 매우 중요한 요소가 되었다. 샤프지수는 측정된 위험단위당 수익률을 계산한다는 점에서 수익률의 표준편차와 다른 점을 가진다. 샤프 지수 구현은 계산 편의를 고려해 무위험률 = 0, 샤.. 2022. 12. 27.
python 증권데이터 분석 - 현대 포트폴리오 이론, 효율적 투자선 python 구현 현대 포트폴리오 이론 현대 포트폴리오 이론 해리 맥스 마코위츠(Harry Max Markowitz)가 1952년 발표한 논문 [포트폴리오 셀렉션]에서 평균-분산 최적화(MVO : Mea-Variance-Optimization)를 제시했다. 평균-분산 최적화(MVO : Mea-Variance-Optimization)란 예상 수익률과 리스크의 상관관계를 활용하여 포트폴리오를 최적화하는 기법을 말한다. 이후 많은 투자자와 학자가 이 모델을 따랐으며, 해리 마코위츠는 1990년에 현대 포트폴리오이론을 창안한 업적으로 노벨 경제학상을 수상한다. 수익률의 표준편차 수익률의 표준편차(Standard deviation of returns)는 자산 가격이 평균값에서 벗어나는 저도인 RISH를 측정하는 방법이다. 주식시장.. 2022. 12. 26.
Exception has occurred: ModuleNotFoundError No module named 오류 / 문제해결 python 코드로 증권데이터분석 코딩을 하다가 내가만든 python 파일 모듈을 import 하지못하는 에러가 발생했다. 보통 이런경우에는 함수명을 잘못 적거나, 컴퓨터가 모듈 위치를 잘못 찾을 때 발생한다. 사용할 함수 위치를 같은 폴더에 위치시키는 것 사용할 모듈 위치를 찾지 못해서 발생하는 오류이므로 모듈을 같은 폴더 안에 넣어주면 import 모듈명만 입력해서 바로 찾을 수 있다. 같은 폴더에 넣어주었더니 바로 모듈 위치를 잘 찾는 모습을 볼 수 있다. 그렇다면 모듈이 다른 폴더에 위치해있을 때는 문제를 어떻게 해결하는지 알아보자 import sys 사용 사용할 함수가 다른 폴더에 들어가 있을 때 import numpy as np import pandas as pd import matplotli.. 2022. 12. 26.
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3 에러 문제해결 SyntaxError: (unicode error) 'unicodeescape' codec 에러 발생 SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape SyntaxError: (unicode error) 'unicodeescape' codec에러는 파일을 불러오는 경로를 설정하고 파일 오픈 시 발생하는 에러이다. 에러 발생 코드 import numpy as np import pandas as pd import matplotlib.pyplot as plt # 모듈경로 지정 import sys sys.path.append('C:\Users\kwonk\Do.. 2022. 12. 26.
python 증권데이터 분석 - 네이버금융 일별 시세 조회 API 만들기 일별 시세 조회 API 만들기 기존 KRX 한국거래소에서 가져온 종목 코드를 이용해 네이버금융 일별 시세를 가져와 maribDB로 넣었다. 지금 제작하려는 일별 시세 조회 API는 직접 구축한 mariaDB에서 일별 시세를 직접 조회하는 API를 제작해보고자 한다. 네이버 일별 시세 API stub 코드 : 기능이 구현되어 있지않은 인터페이스 껍데기 코드 # 네이버 일별 시세 API class MarketDB: # 생성자 : MariaDB 연결 및 종목코드 딕셔너리 생성 def __init__(self): # 소멸자 : MariaDB 연결 해제 def __del__(self): # company_info 테이블에서 읽어와 codes에 저장 def get_comp_info(self): # KRX 종목의 일.. 2022. 12. 25.
python 증권데이터 분석 - DB Updata 모듈만들기#2, 네이버증권 일별주식시세 DB로 업데이트하기 주식시세 매일 DB에 업데이트 하기 네이버 금융의 주식 시세와 BeautifulSouf, Pandas를 사용해서 Maria DB에 매일 자동으로 업데이트하는 DB Updater 모듈을 만들어보자. 지난 포스팅에서는 KRX 한국거래소에서 상장법인 목록을 가져와 DATABASE에 넣고 매일 1번씩 업데이트 되는 기능까지 구현해보았다. python 증권데이터 분석 - DB Updata 모듈만들기#1, krx 종목주식시세 DB로 업데이트하기 주식시세 매일 DB에 업데이트 하기 네이버 금융의 주식 시세와 BeautifulSouf, Pandas를 사용해서 Maria DB에 매일 자동으로 업데이트하는 DB Updater 모듈을 만들어보자. DB Updater 클래스 구조 C 드라이버 하 kwonkai.tistory... 2022. 12. 25.
[MariaDB] 1366, Incorrect string value error 문제 해결 Maria DB 1366 ERROR ERROR 1366 (HY000): Incorrect string value: '\xED\x95\x9C\xEA\xB8\x80...' for column 'name' at row 1 Maria DB ERROR 1336(HY000) 에러는 MYSQL DB에서 encoding 과정에서 한글이 들어가면서 생기는 오류이다. 보통 이모티콘이나 한글이 들어가면 생기는 에러라는 포스팅이 많았다. 내가 겪은 ERROR 1366 (HY000): Incorrect string value: '\xED\x95\x9C\... 에러는 encoding error 였다. 기존 MariaDB Database 생성 코드 CREATE TABLE IF NOT EXISTS company_info ( code.. 2022. 12. 25.
반응형