본문 바로가기
반응형

Quant Stock11

이동평균선의 피크(고점)와 트로프(저점)를 처리하는 아이디어 안녕하세요. 인천고래입니다. 주가의 고점이 아닌 이동평균선의 피크와 트로프 지점을 찾는 알고리즘을 만들었지만 아무래도 명확하게 표현하기 어렵다 보니 여러 가지 고민이 많습니다. 일단은 아이디어 단계로 피크와 트로프를 어떻게 처리할지에 대한 글을 적어 놓겠습니다. 동일한 기간 내에 가까운 위치에 있는 피크(고점)와 트로프(저점)를 처리하는 방법에 대한 몇 가지 아이디어는 다음과 같습니다. 이동평균선의 피크(고점)와 트로프(저점)를 처리하는 아이디어 임계값 기반 필터링: 가까운 위치에 있는 피크 또는 트로프 중 더 중요한 것을 선택하는 방법입니다. 예를 들어, 같은 기간 내에 두 개의 피크가 있으면, 더 높은 피크를 선택하거나, 두 개의 트로프 중 더 낮은 트로프를 선택합니다. 이를 위해 prominence.. 2024. 5. 16.
분할매수에 대한 테스팅 안녕하세요. 인천고래입니다. 이번 글에서는 분할 매수를 진행함에 있어서 상승장과 하락장 일 때 분할매수를 어떤 방식으로 해야할지에 대한 결과(?)를 얻어 보도록 하겠습니다. 우선 말씀 드릴 사항이 있는데 실제 주가는 상승과 하락을 반복합니다.그래서 단순 하락장과 단순 상승장의 데이터를 가지고 테스트 하였음을 알려드립니다. 아래는 관련 코드입니다.''''''import yfinance as yfimport numpy as npimport matplotlib.pyplot as plt# 주가 데이터 다운로드 함수def download_stock_data(ticker, start_date, end_date): stock_data = yf.download(ticker, start=start_date, end.. 2024. 5. 14.
코스피&코스닥 종목 리스트 가져오기, 네이버 크롤링 파이썬 코드 일전에는 코스피만 가져와서 필터링하는 파이썬 코드를 올렸었는데 오늘은 코스닥을 포함하여 개별 엑셀로 저장하는 코드로 변경했습니다. import pandas as pd import requests from bs4 import BeautifulSoup from openpyxl import Workbook def get_stock_codes(market): if market == 'kospi': url = "https://finance.naver.com/sise/sise_market_sum.nhn?sosok=0" page_count = 32 elif market == 'kosdaq': url = "https://finance.naver.com/sise/sise_market_sum.nhn?sosok=1" pag.. 2023. 4. 18.
코스피 종목 리스트 가져오기(종목필터) - 네이버 크롤링 파이썬 코드 코드가 날코딩이기는 하지만 쓸데없는 ETN, ETF 같은 종목들 제외하도록 했습니다. import pandas as pd import requests from io import BytesIO from openpyxl import Workbook import pandas as pd import requests from bs4 import BeautifulSoup from openpyxl import Workbook def get_kospi_stock_codes(): url = "https://finance.naver.com/sise/sise_market_sum.nhn?sosok=0" headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) .. 2023. 4. 17.
코스피 종목 리스트 가져오기 - 네이버 크롤링 파이썬 코드 import pandas as pd import requests from io import BytesIO from openpyxl import Workbook import pandas as pd import requests from bs4 import BeautifulSoup from openpyxl import Workbook def get_kospi_stock_codes(): url = "https://finance.naver.com/sise/sise_market_sum.nhn?sosok=0" headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.. 2023. 4. 4.
파이썬 - 스토캐스틱(Stochastic Oscillator)이해와 차트 만들기 안녕하세요. 지식을 공유하는 투자자 인천고래입니다. 오늘은 파이썬을 이용해서 스토캐스틱(Stochastic Oscillator) 보조지표 차트 만들기에 대한 주제로 스토캐스틱을 만드는 파이썬 코드를 알아보도록 하겠습니다. 스토캐스틱은 내부 구조가 복잡하므로 우선 스토캐스틱이 사용하는 변수에 대한 이해와 생성되는 원리를 설명을 먼저 드리도록 하겠습니다. 1. 스토캐스틱에 대한 이해 스토캐스틱은 주가의 상대적인 위치를 통해 과매수/과매도 상황을 판단하는 데 사용되는 보조지표로서 %K, %D, %J 세 가지 값으로 구성되며 각각의 의미는 다음과 같습니다. %K (스토캐스틱 %K): 주가의 상대적 위치를 나타내는 값으로, 주어진 기간 동안의 최고가와 최저가를 기준으로 현재 종가가 어디에 위치하는지를 백분율로 나.. 2023. 3. 20.
파이썬 - RSI(Relative Strength Index, 상대강도지수) 차트 만들기 안녕하세요. 지식을 공유하는 투자자 인천고래입니다. 오늘은 파이썬을 이용해서 RSI 보조지표를 차트에 표현하는 코드를 알아보도록 하겠습니다. 이전의 이동평균선 혹은 엔벨로프, 볼린져밴드는 주가차트와 같이 겹쳐 보이는 형태였으나 RSI는 별도의 차트 구성으로 주가와 별개로 차트를 표현해야 합니다. 아래는 코드가 실행된 결과 화면입니다. 1. 코드 실행 결과 화면 아래와 같은 RSI 결과물을 만들기 위해서는 다음의 항목을 사용해야 합니다. 데이터 : FinanceDataReader를 사용해서 데이터 가져옵니다. 차트 생성 : Matplotlib 라이브러리를 사용하여 주가 데이터와 하단에 RSI 보조지표 차트를 구현하였습니다. 매개 변수 : 상단에 입력 필드와 버튼을 만듦으로 RSI의 매개변숫값을 받아서 RS.. 2023. 3. 19.
파이썬 - 이동평균선 차트 만들기 (plt.axes에 대한 설명 포함) 안녕하세요. 지식을 공유하는 투자자 인천고래입니다. 오늘은 파이썬을 이용해서 이동평균선을 차트에 표현하는 코드를 알아보도록 하겠습니다. 아래는 코드가 실행된 결과 화면입니다. 1. 코드 실행 결과 화면 아래와 같은 결과물을 만들기 위해서는 다음의 항목을 사용해야 합니다. 데이터 : FinanceDataReader를 사용해서 데이터 가져오기 차트 생성 : Matplotlib 라이브러리를 사용하여 이동평균선과 체크박스를 구현하였습니다. 이동평균선은 원하는 수치를 입력할 수 있게 변수로 설정하였고 체크박스 또한 이동평균선의 배열값을 받아서 처리하도록 하였습니다. 2. 파이썬으로 차트에 이동평균선 만들기 아래의 코드를 실행하면, 주가 데이터와 이동평균선을 포함한 차트가 생성됩니다. 체크박스를 클릭하여 원하는 이.. 2023. 3. 19.
엔벨로프 차트 만들기 - 파이썬 코드 (LG전자 데이터 가져오기, FinanceDataReader) 안녕하세요. 투자의 확률을 분석하는 투자자 인천고래입니다. 오늘은 파이썬을 이용한 엔벨로프를 차트로 만들어보는 시간을 가져보도록 하겠습니다. 주가는 이전과 같이 엑셀파일을 로드하는 방식이 아닌 FinanceDataReader를 사용하도록 하겠습니다. 엔벨로프 차트 만들기 오늘 만들고자 하는 프로그램의 기본적인 틀은 아래와 같습니다. LG전자 주식 정보 가져오기 - FinaceDataReader 차트 그리기 - matplotlib 엔벨로프 계산하기 - pandas import FinanceDataReader as fdr import matplotlib.pyplot as plt import pandas as pd # 한글 폰트 설정 plt.rcParams['font.family'] = 'Malgun Goth.. 2023. 3. 17.
반응형