분류 전체보기
-
[3장]ISL with R : 다중선형회귀 실습 in R(주가예측 심화)기초지식/ISL with R(통계학) 2022. 10. 25. 07:56
환율과 원유 선물을 통한 주가 예측 [3장]ISL with R : 단순선형회귀 실습 in R(환율을 통한 주가예측) 에서 환율을 통한 주가예측 모델을 만들어 봤다. 단순선형회귀에서 조금 더 다양한 factor를 반영한다면(다중선형회귀) 예측의 정확도가 올라갈지 한 번 실습해보자. [3장]ISL with R : 단순선형회귀 실습 in R(환율을 통한 주가예측) 에서와 마찬가지로 yahoo finance 에서 수집한 코스피 종가, 환율 종가, 원유선물 종가 데이터 샘플에서 시작해보자. 단순선형회귀에서와 마찬가지로 각 데이터들의 단위가 다르기 때문에 코스피, 환율, 원유선물 종가의 일일 수익률을 이용해서 선형회귀 분석을 진행해보자. 데이터 만들기 엑셀 읽어오기 [3장]ISL with R : 단순선형회귀 실습 ..
-
[3장]ISL with R : 단순선형회귀 실습 in R(환율을 통한 주가예측)기초지식/ISL with R(통계학) 2022. 10. 21. 08:35
환율을 통한 주가 예측 [3장]ISL with R : 선형 회귀분석 기초 에서 선형 회귀 분석이 뭔지 개념을 파악했고, [3장]ISL with R : 선형 회귀계수 계산 에서 회귀계수의 계산 원리도 파악했으니 실제로 R을 이용해서 환율과 코스피 주가의 관계에 대한 선형 회귀 식을 만들고 코스피주가를 예측해보자. 아래는 yahoo finance 에서 수집한 코스피 종가와 환율 종가 데이터 샘플이다. 여기서 중요한 것은 코스피 종가와 환율 종가를 가지고 바로 선형회귀 분석을 하면 단위가 다르기 때문에 오류가 발생한다는 점이다. 따라서 샘플 데이터에서 확인할 수 있는 것처럼 코스피와 환율 종가의 일일 수익률을 가지고 회귀분석을 진행해야 한다. 데이터 만들기 엑셀 데이터 읽어오기 일단 데이터를 R에 불러와야 한..
-
MACD를 이용한 매매 : MySQL 활용금융퀀트/자산평가&프로그램매매 2022. 9. 27. 08:04
이동평균의 개념 일정 기간동안의 평균을 이동 평균이라고 한다. 이동평균은 크게 단순이동평균(SMA), 지수이동평균(EMA) 두 가지 종류가 있다. 단순이동평균(SMA)는 우리가 일반적으로 아는 평균 개념으로 지난 3일 동안 주가가 이틀 전 100, 어제 200, 오늘 300 이었다고 하면, 평균을 200 이라고 하는 것이다. ( (100 + 200 + 300 ) / 3 ) 지수이동평균은 최근 수치에 더 큰 "가중치"를 부여하고, 과거 수치에 더 작은 "가중치"를 부여해서 평균을 구하는 것이다. 방금 든 예시에서 주가가 최근에 더 높으므로 지수이동평균을 구하면 200 보다 높은 갚이 나올 것이다. 구체적인 평균 값은 "가중치"를 어떻게 만드냐에 따라서 달라진다. MACD ( Moving Average Co..
-
MYSQL에 CSV file 삽입하기: DATA IMPORT WIZARD 등금융퀀트/프로그램기초 2022. 9. 27. 06:42
TABLE DATA IMPORT WIZARD 스키마 선택 및 위자드 실행 MySQL의 Workbench는 CSV 파일 import를 지원한다. 아래 그림 1 위쪽처럼 "스키마 이름" 부분을 우클릭해서 Table Data Import Wizard를 실행하면 그림 1 아래쪽처럼 파일 선택 화면이 뜬다. 다음 단계에서 아래 그림2 왼쪽 그림처럼 현재 존재하는 테이블에 데이터를 넣을 것인지 신규 테이블을 만들 것인지 선택한다. 마지막 단계에서 아래 그림 2 오른쪽 그림처럼 encoding 선택하고 next를 누르면 import 가 완료된다. 제약사항 현재 MySQL Table Data Import Wizard에서는 encoding을 utf-8, utf-16, cp1250, latin1, latin2 만 제공한다..
-
SQL 기초: MySQL 중심으로금융퀀트/프로그램기초 2022. 9. 26. 06:45
SQL의 기본 정의 자동매매를 위해서는 데이터베이스를 조작할 수 있어야 한다. 쌓아 놓은 수많은 과거 데이터를 재료로 모델을 만들고, 가격을 예측하기 때문이다. 데이터베이스를 조작하는 프로그램은 MySQL, Oracle, SQLite 등이 있는데 전부 SQL 문 베이스로 근본은 똑같다. SQL 문은 사용자가 데이터베이스에 질문을 하는 것이다. 엑셀에서 "sheet1에 "A6" 셀에 있는 데이터를 보여줘"라는 식의 질문을 컴퓨터가 알아먹을 수 있도록 던지는 것이라고 생각하면 된다. SQL 문의 분류 SQL 문은 기본적으로 CRUD로 구성된다. CRUD 는 위키피디아에 검색해보면 아래와 같은 표를 확인할 수 있다. 이름 조작 SQL Create 생성 INSERT Read 읽기 SELECT Update 갱신 ..
-
환율의 기초: 현물환과 선물환의 차이금융정보/03.외환(FX) 2022. 8. 30. 07:06
외환 거래일과 결제일의 구분 환전 거래만 하는 우리들은 외환 거래일 당일이 결제일이므로 거래일과 결제일을 구분하지 않는다. 하지만 외국환 매입/매도 거래는 거래가 오늘이라도 결제는 하루 뒤, 이틀 뒤, 혹은 한 달 뒤 일 수 있다. 사람들은 거래일과 결제일이 얼마나 차이 나는지에 따라서 외국환 매입/매도 거래를 현물환/선물환으로 나눠놓았다. 현물환의 의미 일반적으로 외국환 매입/매도 계약일 ~ 2영업일 이내 인 것을 현물환 그 이외의 것을 선물환으로 알고 있다. USD/KRW, GBP/KRW 등과 같이 외화/원화 거래에서는 맞는 말이지만 실제적으로는 거래하는 통화 쌍마다 다를 수 있다. 통화쌍 별로 현물환, 선물환을 구분하는 기준이 다른데 정리하면 다음과 같다. 현물환 거래의 결제 방식 대부분의 통화쌍이..
-
MYSQL : Python 웹스크레핑 데이터 MySQL 서버 저장하기금융퀀트/프로그램기초 2022. 8. 27. 08:14
sqlalchemy, pymysql 라이브러리 설치 sqlalchemy는 python에 제공되는 ORM(Object-relational Mapping)이라고도 하는데, MySQL 서버를 URL (인터넷 주소 치듯이)로 접속할 수 있도록 만들어주는 것이라고 생각하면 된다. URL 객체가 만들어지면 이 객체와 connection 하고 SQL 문을 주고받고 해야 하는데 이것을 pymysql 라이브러리가 도와준다. 설치는 아나콘다 cmd를 켜고 아래와 같은 명령어만 입력하면 된다. ( 추가적인 설명은 "01 파이썬 라이브러리 설치(Windows)"를 참조 ) # sqlalchemy 설치하기 pip install sqlalchemy # pymysql 설치하기 pip install pymysql python_sql..
-
MYSQL 설치(Windows)금융퀀트/프로그램기초 2022. 8. 24. 07:41
데이터 보관 관리 데이터 모으는 것까지는 해봤는데, ( 02 웹스크레핑: 네이버 파이낸스 데이터수집 참조 ) 모은 데이터를 분석해야 투자 여부를 결정할 수 있다. 엑셀로도 데이터 분석이 가능하지만 데이터가 늘어날수록 점점 힘들어진다. ( 코스피 종목수는 약 900 개 이므로 데이터 종가만 저장해도 엑셀 1,800 행이다. ) 데이터가 쌓일수록 파일은 느려지고, 내가 원하는 데이터를 찾는 것도 점점 힘들어진다. 심지어 엑셀은 유료이다. MYSQL 설치 MYSQL의 구조 엑셀 대신 데이터 관리 TOOL로 사용되는 것 중 하나가 MYSQL이다. MYSQL 구조는 그림 1로 설명할 수 있다. 폴더 안에 엑셀 파일 여러 개 있는 거라고 생각하면 된다. 파일 경로를 고민 안 해도 되고 데이터 구조도 한눈에 들어오면..