금융퀀트/프로그램기초
-
파이썬 : 함수(Function), 클래스(Class), 모듈(Module), 패키지(Package)금융퀀트/프로그램기초 2024. 1. 31. 06:45
함수, 클래스, 모듈, 패키지의 관계 프로그램을 만드는 것은 각각의 기능들을 만들고 그 기능들을 묶어내서 하나의 구조화된 기계를 만들어내는 과정이라고 생각하면 된다. 여기서 가장 최소의 기능을 가지는 것을 "함수(Function)"라고 하고, 그 함수들을 클래스(Class)로 묶어도 되고 묶지 않아도 된다. 클래스로 묶이거나 묶이지 않은 함수들은 모듈(module)이라는 하나의 파일에 담긴다. 그리고 이 모듈들은 패키지(package)라는 하나의 폴더에 담긴다. 함수, 클래스, 모듈, 패키지의 관계를 그림으로 그리면 아래 그림 1과 같다. 위 그림 1과 같이 클래스로 묶인 함수 혹은 그냥 함수들이 모여서 하나의 모듈을 이루고, 모듈이 모여서 하나의 패키지 혹은 라이브러리가 된다. python 에서 다른 ..
-
[AWS]RDS 서버 만들기금융퀀트/프로그램기초 2024. 1. 12. 07:45
AWS에서 RDS 서비스의 의미 AWD에서 RDS 서비스의 기능은 아래 그림과 같이 정리할 수 있다. EC2에서 만든 서버는 사용자에게 직접 데이터를 저장하는 부분이고, 서비스 과정 중 어떤 데이터를 저장하거나 불러올 때 RDS 서비스를 통해 만든 DB에 저장하게 된다. 이 DB 또한 하나의 서버인데 MySQL, Oracle, Aurora 등 다양한 DB서버가 존재한다. EC2가 하나의 컴퓨터라면 EC2에 바로 local DB서버를 만들 수도 있지만 일반 사용자와 접점이 있는 EC2 서버에 DB 서버를 만들면 내가 제공하는 서비스의 DB의 보안성이 취약해진다. 또한 EC2는 정보를 처리하는데 집중되어 있고, 저장용량이 한정적인데 반해 RDS의 경우 정보를 저장하는데 집중되어 있어서 저장용량이 사용자 선택..
-
[AWS]EC2 인스턴스(가상서버) 만들기금융퀀트/프로그램기초 2023. 12. 27. 00:10
AWS에서 EC2 서비스의 의미 [AWS]클라우드 호스팅 서비스 이용:AWS(아마존) 가입하기 에서 AWS에 가입했다면, 가장 많이 사용하게 되는 기본적인 서비스는 EC2이다. EC2는 그냥 AWS에서 컴퓨터를 한 대 빌리는 것이다. 그리고 이 빌린 컴퓨터를 다른 컴퓨터에서 요청한 작업을 처리할 수 있게 만들면 서버가 된다. 이 서버를 AWS에서는 인스턴스라고 한다. EC2 인스턴스 만들기 인스턴스 시작 AWS 상단 서비스 검색창에 EC2라고 치면 바로 서비스에 들어갈 수 있고, 인스턴스 시작을 누르면 바로 EC2 인스턴스를 만드는 화면이 뜬다. 여기에서 본인의 리전이 서울로 선택되어 있는지(우측 상단) 한 번 더 확인하고 추가 진행을 하면 된다. OS 선택 인스턴스는 서버이고 서버는 컴퓨터이므로 운영체..
-
파이썬 32비트 환경에서 MYSQL 사용하기:DLL load failed while import _sqlite3 대응금융퀀트/프로그램기초 2023. 11. 28. 07:14
32비트 가상환경 만들기 및 필요라이브러리 설치 아나콘다-파이썬 사용자가 32비트 환경을 구현하기 위해서 굳이 32비트용 아나콘다를 다운로드할 필요는 없다. 아나콘다 프롬프트에서 "set CONDA_FORCE_32BIT=1" 명령어로 환경을 32비트로 만들어 준 뒤에 가상환경을 만들어서 activate 시켜주면 32비트 환경에서 작업을 할 수 있다.(자세한 내용은 [키움API]아나콘다-파이썬 가상환경 만들기 참조) 보통은 증권사 API 같은 것들이 32비트 환경에서 구현되어 있어서 가상환경을 만들어서 작업한다. 그런데 대량의 시장 데이터를 이용하는 증권사 API를 사용할 때 데이터베이스 작업도 필수적이다. 보통은 아래와 같이 sqlalchemy와 pymysql을 설치해서 데이터베이스 작업을 한다. "DL..
-
파이썬 판다스(pandas) 데이터 합치기 concat&merge 활용금융퀀트/프로그램기초 2023. 6. 15. 06:49
concat 함수 활용 concat 함수 예제: 기초데이터 파이썬의 pandas 라이브러리를 이용하면, 기존의 데이터 아래쪽에(행 기준) 데이터를 붙일 수도 있고, 오른쪽에(열 기준) 데이터를 붙일 수도 있다. 이 때 사용하는 함수가 concat 이다. 함수의 사용을 위해서 아래 그림 1과 같이 종목코드와 종목명 컬럼을 공통으로 가지는 df1과 df2 의 데이터 예시를 생각해 볼 수 있다. df1은 종목코드, 종목명, 배당수익률로 이루어진 데이터이고, df2는 종목코드, 종목명, pbr 로 이루어진 데이터이다. concat 함수의 사용과 axis 옵션 df1, df2를 이용해서 concat 함수를 사용하면 아래 그림2와 같다. 앞에 오는 df1이 기준이 되는 데이터, df2가 붙일 데이터, axis는 데..
-
(OpenAPI)ChatGPT OpenAPI 사용: 데이터 분석(KOSPI200지수 예측)금융퀀트/프로그램기초 2023. 3. 29. 07:16
분석용 데이터 준비 챗GPT에 데이터에 관련된 사항을 물어보면 불가능하다는 답변이 나온다. 하지만 우리가 데이터를 넣어주기만 한다면 그 분석 자체는 가능할 것이다. 그럼 챗GPT에게 코스피 200 지수 데이터를 넣고 분석을 시켜보자. 아래와 첨부된 것과 같이 "2020-01-02" ~ "2023-02-28" 약 3년 치 코스피 200 지수 데이터를 넣어줄 것이다. 데이터 수집 KRX 정보데이터시스템 활용 코스피 200 지수 데이터는 KRX 정보 시스템 통계 -> 기본통계 -> 주가지수 -> 개별지수 시세추이 에서 "코스피 200"을 검색해서 다운로드하면 구할 수 있다. 엑셀로 데이터 편집이 가능하다면, 다운로드 후 위에 업로드한 파일처럼 종가만 남기고 나머지 컬럼을 모두 삭제해 주면 된다. 그리고 챗GP..
-
(OpenAPI)ChatGPT OpenAPI 사용: 기본활용 예제(python)금융퀀트/프로그램기초 2023. 3. 24. 13:11
기본정보 확인 API 키 확인 API 키는 OpenAI 사이트(https://platform.openai.com/) 사용자 메뉴에서 발급 가능하다. 아래 그림 1에 표시된 "Create new secretkey"를 누르면 팝업이 뜨면서 발급되는데, 다시 확인하기가 힘드니 처음 팝업이 뜰 때 잘 저장해 두어야 한다. 엔진확인 API 사용을 위해서는 AI 엔진 정보도 알아야 하는데, OpenAI 사이트(https://platform.openai.com/) Documentation -> Models 부분을 확인하면 된다. OpenAPI 에 지원되는 대화형 AI 모델은 아래 그림 2에 표시된 "text-davinci-003" 나 "text-davinci-002"이다. API 실행 예제: "오늘 아침 뭐 먹을까?..
-
(OpenAPI)ChatGPT OpenAPI 사용: API 키 발급 및 요금금융퀀트/프로그램기초 2023. 3. 22. 08:08
ChatGPT 열풍과 API활용 챗GPT 열풍이다. 챗GPT로 글도 쓰고, 코딩도 하고 온갖 것을 다 한다. 챗GPT 관련 확장 프로그램도 많다. Bing 검색에는 아예 챗GPT가 대화형으로 바로 답변을 주는 모드가 제공되고, 크롬 웹 스토어에는 챗GPT 사용 시 한국어로 자동번역 해주는 "프롬프트 지니", 검색에 챗GPT 답변 결과를 같이 보여주는 "ChatGPT for google" 이라는 프로그램이 있다. 우리 문송한 투자자들은 챗GPT를 어떻게 투자에 활용할 수 있을까? 다양한 데이터 분석이 필요한 투자 영역에서 대화형으로 제공되는 챗GPT의 활용은 힘들다. 투자 분석을 위해서는 재무제표, 거시경제 데이터 등을 입력하고 그것을 분석 처리하는 과정이 필수적이지만, 대화창에 입력할 수 있는 것은 한계..