Data Scientist/Python 41

[Python 금융] 알고리즘 트레이딩 - 단순이동평균전략

안녕하세요 Python 으로 하는 금융 데이터 분석 내용으로 알고리즘 트레이딩 그 중에서도 단순 이동 평균 전략에 대한 소개와 예시를 통해 같이 공부하는 내용을 소개해드리고자 합니다. 단순 이동 평균 전략 단순 이동 평균 전략은 무엇을까요? 제목만 놓고 보면 이동선 평균을 활용한 전략일 거 같은데,,? 라는 감이 살짝 오시나요? 자세히 한번 알아보겠습니다. 이동평균선은 가장 기본적으로 사용되는 기술적 분석 지표로, 일정 기간 동안의 가격 평균을 보여 줍니다. 차트를 해석할 때 잡음(noise)을 줄여줌으로써 추세를 보다 명확하게 파악하는 데 도움이 되고, 후행성 지표이기 때문에 미래를 예측하기보다는 현재 상태를 확인하고 분석하는 해석 지표로 사용하는 것이 일반적입니다. 이러한 이동평균선은 장기와 단기로 ..

[파이썬] 퀀들(Quandl) API를 이용한 금융 데이터 수집

안녕하세요 오늘 포스팅에서는 파이썬 환경에서 퀀들 API를 이용해 다양한 금융 데이터를 수집하는 방법에 대해 다뤄 보겠습니다. 데이터를 수집한 뒤에 간단한 시각화도 같이 진행 해보도록 하겠습니다. 퀀들(Quandl) 이란? 퀀들은 캐나다 토론토의 데이터 공유 플랫폼 회사 입니다. 특히 금융 데이터를 퀸들이 제공 하는 API를 통해 손쉽게 제공 받아 분석에 활용 할 수 있습니다. 또한 단순히 주가, 거래량에 대한 데이터 뿐만 아니라 의료, 집값, 경제 지표 등 다양한 데이터 들을 제공 한다는 장점이 있다. 먼저 퀀들 API 사용 방법에 대해 먼저 알아보자 1. 퀀들 API 발급받기 https://data.nasdaq.com/publishers/QDL Nasdaq Data Link The source for..

파이썬으로 이더리움 가격 예측하기(시계열 예측 라이브러리, prophet)

안녕하세요 ~ 오늘은 파이썬으로 이더리움 가격 예측하는 하는 방법에 대해 알아 보는 포스팅을 하려고 합니다. 먼저 prophet이라는 라이브러리에 대해서 알아보겠습니다. prophet라이브러리는 페이스북(현 메타)에서 만든 시계열 예측 라이브러리 입니다. 정확도가 높은 편이고 각종 파라미터로 모델 수정하기가 쉽다는 장점이 있습니다. 1. 라이브러리 불러오기 먼저 필요한 라이브러리 들을 불러오겠습니다. 저희는 바이낸스에서 데이터를 불러올것이기 때문에 객체 생성을 하기 위한 cctv 라이브러리를 불러오고 그리고 pandas, numpy 라이브러리를 불러옵니다. 마지막으로 prophet 라이브러리 까지 불러오면 필요한 라이브러리는 다 가져온것 같습니다. import ccxt import pandas as pd..

파이썬을 이용하여 웹에서 금융 데이터 다운 및 시각화

안녕하세요 ~ 오늘은 파이썬을 이용하여 웹에서 금융 데이터를 다운 받고 데이터를 시각화 하여 어떻게 데이터가 형성 되어 있는지 확인 하는 코드를 작성하는 포스팅을 해보려고 합니다. 웹에서 금융 데이터 불러오기 먼저 야후 파이낸스 라이브러리를 이용하여 금융 데이터를 다운 받을 건데요 ! pip install yfinance 다음과 같은 코드를 이용하여 야후 파이낸스 라이브러리를 다운받아 주겠습니다. 이제 본격적으로 시작해보겠습니다. 판다스와, 야후 파이낸스 모듈을 불러오겠습니다. import pandas as pd import yfinance as yf start = 데이터 시작 시점 end = 데이터 종료 시점 symber = ticker 정보 start = "2014-10-01" end = "2021-..

[파이썬] 공공 데이터포털 API를 이용하여 수출입 데이터 가져오기

안녕하세요 ~ 오늘의 포스팅은 공공데이터 포털의 API를 이용하여 수출입 데이터 를 가져와 보려고 합니다. 1. 공공데이터 포털 가입 및 API 신청 먼저 아래의 사이트에 들어가셔서 회원 가입을 합니다. https://www.data.go.kr/index.do 공공데이터 포털 국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase www.data.go.kr 메인 페이지 에서 "수출입" 을 검색 합니다. 그러면 아래와 같은 API가 검색이 될거에요 그럼 여기서 활용신청을 누르고 ※중요 : 아래 내용은 수출입 총괄이지만(제가 미리 신청을해놔서..), 실제 데이터를 가져올..

[파이썬] 투자를 위한 경제 지표 데이터 수집 및 시각화 (장, 단기 금리)

안녕하세요 ~ 이번 포스팅은 투자를 좀 더 현명하게 하기 위한 경제 지표 데이터를 수집하여 시각화를 통해 현재 경기가 어디에 위치해 있는지를 객관적으로 알기 위한 내용으로 구성해보았습니다. 먼저 코드부터 구현 하겠습니다. 1. 데이터 준비 필요한 모듈을 불러와 줍니다. 1. Raw Data -. FinanceDataReader 2. 시각화 및 분석 -. Matplotlib -. Pandas import FinanceDataReader as fdr import matplotlib.pyplot as plt import pandas as pd FinanceDataReader Module에서 데이터를 불러와보겠습니다. diff_long_short_ir = fdr.DataReader('T10Y2Y', start ..

[Python] Turtle 객체를 이용하여 그림 그리기

안녕하세요 ~ 오늘은 Python으로 Turtle 객체를 이용하여 그림 그리는 포스팅에 대해서 다뤄 보겠습니다. 먼저 Turtle 모듈를 불러와서 Tutle 객체를 생성합니다. import turtle as t tim = t.Turtle() # Turtle 객체 생성 그리고 일반 점선을 그려보는 코드를 보여드리겠습니다. for _ in range(15): tim.forward(10) # pen으로 그리기 시작 10씩 tim.penup() # 펜을 뗀다 tim.forward(10) # 뗀체로 10을 이동 tim.pendown() # 펜을 다시 내려놓는다. 요렇게 그리시면 아래와 같이 점선이 그려지는 것을 볼 수 있습니다. 이제 여기서 난이도를 더해서 5각형을 그려보겠습니다. 오각형의 내각의 크기는 108도..

[Python] brute함수를 이용하여 자동 매매 이동평균선 전략 최적화 하기

안녕하세요 ~ 이번 포스팅에서는 scipy라이브러리 내에 있는 brute함수에 이용하여 최적화된 이동평균선 값을 구하여 수익률을 극대화 하는 알고리즘을 구현해보겠습니다. 먼저 데이터를 Load하겠습니다. 저는 미리 다운 받아 둔 ohlcv데이터를 이용할 것입니다. 여러분들은 여러 증권사 API를 이용하여 데이터를 가져오셔도 무방 할 것 같습니다. ohlcv중에 close 컬럼만 가져오시면 됩니다. df = pd.read_csv("eurusd.csv", parse_dates = ["Date"], index_col = "Date") 자 이제 데이터는 준비가 되었습니다. 이제 SMA전략을 코드로 구현해보겠습니다. 코드는 어렵지 않습니다. SMA_S가 단기 이평선, SMA_L가 장기 이평선이고 단기 이평선이 장..

[파이썬] Customizing Plotly Chart

안녕하세요 ~ 오늘은 Plotly Chart를 Customizing하여 사용자가 원하는 형식으로 꾸며보는 코드를 알아보는 시간을 가져보겠습니다. 데이터는 앞서 포스팅한 아래의 내용의 데이터를 그대로 사용 해보겠습니다. 필요하시면 아래 데이터를 참고 하시면 됩니다. https://wg-cy.tistory.com/156 [파이썬] pandas datareader 라이브러리를 이용한 데이터 로딩 및 시각화 안녕하세요 ~ 오늘은 python 라이브러리 패키지 중 하나인 pandas의 data reader 라이브러리를 이용하여 주가를 확인하고, 시각화 해보는 것을 해보려고 합니다. 패키지 설치 및 import 우선 필요한 라이 wg-cy.tistory.com 데이터는 다음과 같습니다. 10년~ 20년 까지의 MS..

[파이썬] Daily 수익률 표준 편차와 누적 수익률과의 관계 확인

안녕하세요 ~~ 요즘 제가 테스트 해보고 있는 전략은 이동 평균선을 이용하여 매수, 매도 전략입니다. 여러가지 방법이 있지만 저는 20일선, 30일선 조합과, 30일선 40일 선 조합 중에 괜찮은 조합을 선택하여 선정 중입니다. 백테스팅 하는 과정에서 알게된 것은 이 전략이 모든 종목에 통하지 않는 다는 것을 알게 되었습니다. 그럼 어떤 종목에 이 조합이 통할지 확인해보고자 Daily 수익률 표준 편차와 누적 수익률과의 관계를 확인 해보겠습니다. 먼저 필요한 라이브러리를 import 해줍니다. import time import pyupbit import datetime import pandas as pd import numpy as np import matplotlib.pyplot as plt 그리고 수..