분류 전체보기(53)
-
[PYTHON] 파이썬 프로그래머스 문제 풀기 1 - 자릿수 더하기
내 코드 def solution(n): answer = 0 n = str(n) for i in range(len(n)): answer = answer + int(n[i]) return answer print(solution(123)) '각 자릿수'를 더하기 위해서 인덱싱을 생각했다. 하지만 정수형 데이터는 인덱싱이 되지 않으므로 우선 문자형으로 바꿔주고 문자형으로 바꾼 값의 길이를 범위로 하는 for문을 만들어 줬다. 0부터 시작해 입력된 숫자의 자릿수 까지의 인덱스가 차례대로 대입되면 각 자릿수를 뽑을 수 있고 각 자릿수를 다시 정수형으로 바꿔서 더해준다.
2023.09.20 -
[파이썬] 대신증권 API를 활용한 알고리즘 개발
대신증권 API를 활용한 알고리즘 PER, EPS 구하기 MarketEye클래스를 활용하여 주식의 PER 등의 정보를 가져올 수 있다. import win32com.client # 객체생성 instMarketEye = win32com.client.Dispatch("CpSysDib.MarketEye" instMarketEye.SetInputValue(0, (4, 67, 70, 111)) instMarketEye.SetInputValue(1, 'A003540') SetInputValue(0, ())를 통해 가져오고 싶은 정보를 선택한다. 현재가(4), PER(67), EPS(70), 최근분기년월(111) 데이터를 가져온다. SetInputValue(1, 종목코드)를 통해 'A003540'코드를 가진 종목의 ..
2023.09.20 -
[파이썬] 대신증권 API를 통해 주식투자 하기
StockChart 클래스의 통신 종류는 Request/Reply 이다. 이는 원하는 정보를 해당 API 정확히 Request 해야 API에서 정보를 Reply해준다는 뜻이다. import win32com.client instStockChart = win32com.client.Dispatch("CpSysDib.StockChart") instStockChart 객체를 생성하고, 원하는 값들을 정확하게 Request 해보자. 이때 SetInputValue메소드가 사용된다. instStockChart.SetInputValue(0, "A003540") instStockChart.SetInputValue(1, ord('2')) instStockChart.SetInputValue(4, 10) instStockCha..
2023.09.18 -
파이썬을 이용한 퀀트 투자 - 1. 시작과 맛보기
파이썬 퀀트 투자 기본적인 조작법 대신 증권의 cybos 5를 파이썬과 연결해 주식투자를 해보려고 한다. 퀀트 투자는 '수학과 통계를 기반으로 전략을 만들고 이를 바탕으로 투자하는 정량적인 투자법'이다. 수학과 통계를 활용하는 만큼 파이썬을 활용한다면 여러 전략들을 수립해 투자에 적용할 수 있다. import win32com.client instCpCybos = win32com.client.Dispatch("CpUtil.CpCybos") print(instCpCybos.IsConnect) 먼저 cybos plus와 파이참 모두 관리자모드로 실행한 이후 cybos plus에 로그인하고 파이참에 위 코드를 작성하면 1 또는 0이 뜬다. 1이 출력되면 정상적으로 연결이 되었다는 뜻이다. 만약 에러가 나거나 1..
2023.09.17 -
파이썬으로 엑셀 사용하기
파이썬을 통해서 다른 프로그램들을 사용할 수 있을까? 마이크로소프트가 개발한 COM을 활용한다면 가능하다. 이 COM이라는 기능을 활용해 엑셀을 사용해 보려고 한다. 파이썬으로 엑셀 사용하기 import win32com.client excel = win32com.client.Dispatch("Excel.Application") excel.Visible = True 먼저 win32com.client 모듈을 불러오고 엑셀을 실행한다 여기서 'excel.Visible = True'까지 해줘야 실제로 우리 눈에 보이는 엑셀 창이 실행된다. 하지만 이를 해주지 않아도 실행은 이미 된 상태이고 우리 눈에 엑셀 창이 보이지 않는 상태일 뿐이다. wb = excel.Workbooks.Add() ws = wb.Works..
2023.09.14 -
[PYTHON] 파이썬을 통해 전화번호부 만들기
지난 글에서 class에 대해 공부한 내용을 토대로 전화번호부를 만들어 보려고 한다. 파이썬 CLASS 기능을 통해서 전화번호부 만들기 1. 전화번호부 클래스 만들기 class Contact: def __init__(self, name, phone_number, e_mail, addr): self.name = name self.phone_number = phone_number self.e_mail = e_mail self.addr = addr def print_info(self): print("Name: ", self.name) print("Phone Number: ", self.phone_number) print("E-mail: ", self.e_mail) print("Address: ", self.a..
2023.09.13