Coding Is My Life

코딩은 인생

728x90

파이썬 20

[파이썬][보조지표 envelope를 이용한 코스피 200종목 분석]

Envelope란? n일의 이동평균선에 +m%,-m%를 뜻한다. 분석 내용 보통 20일 이동평균선을 사용하고 m은 트레이더의 성향에 따라 많이 다르나 가장 보편적으로 사용되는 10으로 두고 분석해보겠다. 하향 envelope선에 돌파 또는 지지할시 매수 하고 m%만큼 떨어지면 손절, m%만큼 상승하면 익절하도록 세팅해 두었다. 코드 !pip install yfinance import pandas as pd import matplotlib.pyplot as plt import bs4 import yfinance as yf from urllib.request import urlopen # url의 소스코드를 긁어오는 기능 필요한 라이브러리들을 불러와 줬다. # 종목코드 불러오기 stock_code = pd...

파이썬 2021.09.18

[파이썬][보조지표 MACD를 활용한 코스피 200 종목 분석]

MACD란? MACD 곡선 = 단기지수이동평균-장기지수이동평균 Signal 곡선 = n일의 MACD 지수이동평균 보통 단기지수이동평균는 12일 장기지수이동평균은 26일을 사용한다. 그리고 Signal곡선의 n은 9일을 일반적으로 사용한다. 분석 내용 이번 분석에서는 차트 분석에서 자주 언급이 되는 MACD에 대한 매매를 분석할 것이다. -MACD 곡선이 Signal 곡선을 상향 돌파시 : 매수 -MACD 곡선이 Signal 곡선을 하향 돌파시 : 매도 위 두 내용을 가지고 코스피 200 종목들을 크롤링해서 백테스팅해서 각 종목에 대한 수익률을 분석 할 것이다. 개발환경은 Google colab를 이용하였다 코드 # 사용할 라이브러리 !pip install yfinance import pandas as p..

파이썬 2021.09.18

[파이썬 웹 크롤링] 네이버 금융 코스피지수 크롤링

파이썬으로 네이버 금융 크롤링 1. 사이트 접속 https://finance.naver.com/sise/sise_index.nhn?code=KPI200 에 접속한 후 일별 시세표를 확인하다. 2. url 구하기 일별 시세 표의 오른쪽 마우스 클릭으로 프레임 소스 코드보기를 클릭한다. 그리고 해당 url에서 앞에 view-source를 제외한 https://finance.naver.com/sise/sise_index_day.nhn?code=KPI200 가 우리가 구하고싶은 표의 url이다. 직접들어가보면 해당표만 있는 것을 볼 수 있다. 여기서 페이지를 이동하면 url뒤에 page=2 이런식으로 표기 되기때문에 https://finance.naver.com/sise/sise_index_day.nhn?cod..

[파이썬 기본 문법-3] sequence 객체 사용하기

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263# sequence types == 리스트,튜플,range,문자열처럼 연속적으로 이어진 자료형# 특정 값이 있는지 확인하기a = [0,10,20,30,40,50,60,70,80,90]print(30 in a) # Trueprint(30 not in a) # Falseprint('P' in 'Hello, Python') #True # 시퀸스 객체 연결하기a = [1,2,3,4,5]b = [6,7,8,9,10]print(a+b) # 두 리스트 연결 # 단, 시퀸스 자료형 중에서 range는 +연산자로 ..

[파이썬 기본 문법-2] 출력 함수 print

123456789# 개행print(1,2,3,sep = '\n') # 여러개의 값을 개행해서 표기 # \n : 개행, \t : 탭 만큼 여러칸을 띄운다. , \\ : \ 문자 자체를 출력할 때# end 사용하기print(1,end = '')print(2,end = '')print(3,end = '')# 123 개행이 자동으로 안된다. end는 print가 끝난뒤 다음에 오는 print함수에 영향을 미침, end의 default는 \n이므로 개행을 안할거면 ''공백으로 만들어야한다.cs

[파이썬기본문법-1] 사칙연산

1234567891011121314151617181920212223242526272829303132333435363738394041# 사칙연산 + - / *# 나눗셈 후 소수점 이하를 버리는 // 연산자print(10//3) # 결과 : 3 #나눗셈 후 나머지를 구하는 연산자 : %print(5%2) # 결과 : 1 #거듭제곱을 구하는 ** 연산자print(2**10) # 결과 : 1024 # 값을 정수로 만들기print(int(3.3)) # 결과 : 3 # 객체의 자료형 알아내기print(type(10)) # 결과 : # 몫과 나머지를 함께 구하기 : divmodprint(divmod(5,2)) # (2,1) 튜플 형태로 나온다.a,b = divmod(5,2) # 변수 두개의 몫과 나머지 저장print..

백준- Z[1074번]

이 문제는 1사분면 -> 2사분면 -> 3사분면 -> 4사분면 순으로 방문해서 좌표가 일치할시 방문순서를 출력하는 문제이다. 알고리즘 해결 전략은 일단 1,2,3,4분면으로 N이 2가 될떄까지 나눈 다음에 N이 2가 될때 왼쪽위 -> 오른쪽위 -> 왼쪽 아래-> 오른쪽 아래 순으로 if문으로 접근한 다음에 일치할 시 출력해주면 된다. 만약 N이 2가 아닐시 2가 될때까지 나눠야하는데 나눌때도 사분면으로 나누어야한다. 자세한 내용은 코드의 주석문을 확인하기 바란다. 이 코드를 c++로 작성하면 맞는데 python 언어 자체가 느린문제로 시간초과로 체점 될 수 있다. c++를 이용하자...

파이썬- 리스트 정렬하기

파이썬에는 리스트를 정렬하는 방법이 sort와 sorted 두가지 방법이 있다. 바로 예제를 보면서 이해해 보자. 기본적으로 일차원 리스트를 정렬하는 방법은 다음과 같다. 리스트이름.sort()를 해주면 num이라는 리스트가 정렬이 되서 결과는 다음과 같다. 다음은 sorted를 사용한 정렬방법은 다음과 같다. sort를 사용한것보다는 조금 간단하다 이것 또한 결과는 같게 나온다. 다음으로는 2차원 리스트를 정렬하는 방법. 2차원리스트는 sorted에 key를 활용해서 정렬을 할 수 있다. sorted를 사용하는 방법은 sorted(리스트이름, key=정렬함수) 이렇게 사용할 수 있다.

파이썬 2020.10.10
728x90