서브메뉴

본문

파이썬으로 배우는 알고리즘 트레이딩 (내 손으로 만드는 자동 주식 거래 시스템)
파이썬으로 배우는 알고리즘 트레이딩 (내 손으로 만드는 자동 주식 거래 시스템)
저자 : 조대표
출판사 : 위키북스
출판년 : 2017
ISBN : 9791158390631

책소개

『파이썬으로 배우는 알고리즘 트레이딩』은 파이썬이라는 프로그래밍 언어를 이용한 알고리즘 트레이딩을 다룬 책이다. 프로그래밍을 전혀 모르는 비전공자나 HTS(Home Trading System)로 주식 투자 정도만 할 수 있는 일반인도 빠르게 파이썬과 알고리즘 트레이딩을 배울 수 있는 알고리즘 트레이딩 입문서다. 파이썬 기초 문법에 대한 친절한 설명으로 시작해서, 파이썬을 이용한 각 증권사 API 사용법, Pands 를 이용한 데이타 분석 기초와 함께 마지막으로 알고리즘 트레이딩 실전 프로젝트까지 기초부터 실전 노하우까지 종합적으로 모두 다뤘다.
[교보문고에서 제공한 정보입니다.]

출판사 서평

이 책은 “프로그래밍 책이지만 기존의 전공자를 위한 프로그래밍 책이 아니라 비전공자와 일반인이 파이썬을 쉽고 재미있게 배울 수 있어야 한다”는 목표와 “이 책은 주식과 관련된 주식 책이지만 기존 주식 책과는 달리 실제 노하우를 어떻게 프로그램으로 구현할 수 있을지를 구체적으로 설명해야 한다”는 목표를 갖고 집필했습니다.

1부에서는 파이썬 기초를 다룹니다. 단순히 파이썬 문법을 설명하는 것이 아니라 파이썬과 주식과 관련된 예제를 통해 더욱 재미있게 파이썬을 배울 수 있습니다.

2부에서는 파이썬을 이용해 증권사 API의 사용법을 다룹니다. 대신증권 CYBOS Plus, 이베스트투자증권 xing API, 키움증권 OpenAPI+의 기초 및 기본 API 사용법을 배울 수 있습니다.

3부에서는 pandas라는 라이브러리를 이용한 데이터 분석 기초를 다루고 zipline을 이용해 백테스팅하는 방법을 소개합니다. 그리고 matplotlib를 통해 데이터를 시각화하는 방법과 PyQt를 이용한 GUI(Graphical User Interface) 개발을 배웁니다.

4부에서는 1~3부에서 배운 내용을 바탕으로 실전 프로그램을 개발합니다. 실전 프로그램에서는 거래량 기반의 투자 알고리즘과 배당률 기반 투자 알고리즘을 구현하고, 이를 통해 실제 매수/매도까지 자동으로 진행하는 프로그램을 개발함으로써 개발에 대한 자신감을 가질 수 있습니다.
[교보문고에서 제공한 정보입니다.]

목차정보

[1부] 파이선 프로그래밍

▣ 01장: 파이썬 시작하기
01. 파이썬과 알고리즘 트레이딩
___프로그래밍과 프로그래밍 언어
___주식투자
___알고리즘 트레이딩
___파이썬이란?
02. 파이썬 설치
___아나콘다 설치 파일 다운로드
___아나콘다 설치
03. 파이썬 인터프리터 실행
___파이썬 IDLE 이용하기
___파이썬 들여쓰기
연습 문제

▣ 02장: 파이썬 변수와 문자열
01. 파이썬으로 하는 계산
02. 변수
___파이썬 변수와 객체
03. 문자열
___문자열 인덱싱 및 슬라이싱
___문자열 자르기
___문자열 합치기
04. 기본 데이터 타입
연습 문제

▣ 03장: 기본 자료구조
01. 리스트
___리스트 생성
___리스트 인덱싱
___리스트 슬라이싱
___리스트에 데이터 삽입하기
___리스트 데이터 삭제
02. 튜플
___튜플 슬라이싱
03. 딕셔너리
___딕셔너리에 데이터 삽입 및 삭제
___딕셔너리로부터 키-값 구하기
연습 문제

▣ 04장: 제어문
01. Boolean
02. 논리 연산자
03. if 문
___if ~ else 문
___if ~ elif ~ else 문
04. for 문
___for와 range
___for와 리스트
___for와 튜플
___for와 딕셔너리
05. while 문
___while 문을 이용한 상한가 계산
___while과 if
___break와 continue
06. 중첩 루프
연습 문제

▣ 05장: 함수와 모듈
01. 함수
02. 반환값이 있는 함수
___함수 호출 과정 이해하기
___두 개의 값 반환하기
03. 모듈
___모듈 만들기
___파이썬에서 시간 다루기
___OS 모듈
___모듈을 임포트하는 세 가지 방법
04. 파이썬 내장 함수
연습 문제

▣ 06장: 클래스
01. 클래스란?
___클래스 기초
___클래스 정의
___클래스에 메서드 추가하기
02. 클래스 생성자
03. self 이해하기
04. 클래스 네임스페이스
05. 클래스 변수와 인스턴스 변수
06. 클래스 상속

▣ 07장: 파일 다루기
01. 파일 읽기
02. 파일 쓰기
연습 문제

▣ 08장: 실전 프로젝트
01. PyCharm을 이용한 개발 환경 구축
___PyCharm 설치 프로그램 다운로드
___PyCharm 설치
___PyCharm 초기 설정
___프로젝트 생성
___PyCharm 기타 설정
02. 주소록 프로젝트
___Contact 클래스 만들기
___사용자로부터 데이터 입력받기
___메인 메뉴 구성하기
___연락처 입력 동작시키기
___연락처 출력하기
___연락처 삭제하기
03. 주소록 프로젝트의 기능 향상
___연락처 저장 함수 작성하기
___연락처 불러들이기
___명령 프롬프트에서 프로그램 실행하기

[2부] 증권사 API 기초

▣ 09장: 파이썬과 COM
01. COM과 파이썬
02. 파이썬으로 엑셀 다루기
___엑셀 파일 읽기
___셀에 색깔 입히기

▣ 10장: 대신증권 API
01. 개발 환경 구축
___계좌 개설 및 CYBOS 5 설치
___CYBOS Plus 로그인
02. 기초 API 익히기
___연결 상태 확인
___주식 코드 조회
03. 기본 API 익히기
___종목 코드 가져오기
___과거 데이터 구하기
___PER, EPS 데이터 구하기
04. API를 이용한 알고리즘 개발
___거래량 분석을 통한 대박 주 포착
___업종별 PER 분석을 통한 유망 종목 찾기
05. 매수/매도 API 익히기
___모의투자 가입하기
___매수/매도하기

▣ 11장: 이베스트투자증권 API
01. 개발 환경 구축
___계좌 개설 및 xingAPI 패키지 설치
___모의투자 가입하기
02. 기초 API 익히기
___로그인
___계좌 정보 조회
03. 기본 API 익히기
___DevCenter 사용하기
___단일 데이터 조회하기
___반복 데이터 조회하기
___차트 데이터 받아오기

▣ 12장: 키움증권 API
01. 개발 환경 구축
___계좌 개설 및 모듈 설치
___모의투자 가입하기
___KOA Studio 사용하기
02. PyQt 기초
___PyQt 소개
___Hello PyQt
___위젯과 윈도우
___이벤트 처리
03. 기초 API 익히기
___Open API+ 로그인하기
___로그인 이벤트 처리하기
___기본 정보 요청하기
___계좌 정보 가져오기
___종목 코드 및 한글 종목명 가져오기

[3부] 데이터 분석 기초

▣ 13장: pandas를 이용한 데이터 분석 기초
01. pandas Series
___파이썬 리스트, 튜플, 딕셔너리
___Series 기초
___Python Console
02. pandas DataFrame
___DataFrame 생성
___DataFrame 칼럼, 로우 선택
03. 주식 데이터 받기
___DataReader 사용하기
___차트 그리기
04. 이동평균선 구하기
___이동평균선
___pandas를 이용한 주가이동평균 계산
___주가이동평균선 그리기

▣ 14장: pandas와 Zipline을 이용한 백테스팅
01. Zipline 시작하기
___Zipline 설치
___Zipline 기초
02. 이동평균선 전략 백테스트
___Zipline을 이용한 이동평균선 전략 테스트
___이동평균선 전략 보완하기
03. 유가증권시장/코스닥시장 백테스팅
___거래 수수료 설정
___초기 투자 금액 설정

▣ 15장: matplotlib를 이용한 데이터 시각화
01. pyplot 기초
___간단한 그래프 그리기
___Figure와 subplots
___라벨 및 범례 표시하기
___matplotlib 구성
02. 다양한 그래프 그리기
___수정 종가와 거래량 한번에 그리기
___캔들 스틱 차트 그리기
___bar 차트 그리기
___pie 차트 그리기

▣ 16장: PyQt를 이용한 GUI 프로그래밍
01. PyQt 기초
___아나콘다에서 PyQt 설치 및 업데이트
___PyQt 복습하기
02. Qt Designer
___Qt Designer 소개
___Qt Designer를 이용한 UI 구성
___UI 파일을 파이썬 코드로 변환하기
___UI 파일을 파이썬 코드에서 로드하기
___이벤트 처리하기
03. 기본 위젯
___QPushButton
___QLabel
___QLineEdit와 QStatusBar
___QRadioButton과 QGroupBox
___QCheckBox
___QSpinBox
___QTableWidget
04. Layout
___QVBoxLayout
___QHBoxLayout
___QGridLayout
___레이아웃 중첩
05. 다이얼로그
___QFileDialog
___QInputDialog
___메인 윈도우와 다이얼로그의 상호작용
06. PyQt와 matplotlib 연동
___기본 레이아웃 구성
___그래프 그리기

[4부] 실전 알고리즘 트레이딩

▣ 17장: 주가 데이터 저장하기
01. SQLite
___sqlite3 모듈 기초
___데이터베이스 브라우저
___데이터베이스로부터 데이터 읽기
02. pandas와 SQLite
___DataFrame 객체를 SQLite DB에 저장하기
___SQLite DB에서 테이블 로드하기
___pandas를 이용한 주가 데이터 저장
03. 증권사 API를 이용한 주가 데이터 저장
___종목 코드 리스트 얻어 오기
___일봉 데이터 연속조회
___SQLite DB에 일봉 데이터 저장하기

▣ 18장: 실전 프로그램 개발
01. 개발 1일 차
___자동 버전 처리 스크립트
___윈도우 작업 스케줄러
___PyTrader 구현
___키움 OpenAPI+ 자동 로그인
02. 개발 2일 차
___UI 구성
___Kiwoom.py 파일 업데이트
___pytrader.py 파일 업데이트
___매수 테스트
03. 개발 3일 차
___UI 구성
___Kiwoom.py 파일 업데이트
___pytrader.py 파일 업데이트
04. 개발 4일 차
___UI 구성 및 매수/매도 목록 파일 생성
___선정 종목 정보 출력하기
___자동 주문 구현하기

▣ 19장: 실전 프로그램 개발(2)
01. 개발 5일 차
___코스피/코스닥 종목코드 가져오기
___일별 데이터 가져오기
___급등주 포착 알고리즘 구현
02. 개발 6일 차
___HTML 기초
___웹 페이지 크롤링
___배당률 기반 투자 알고리즘
___배당률 기반 투자 알고리즘 구현(1)
___배당률 기반 투자 알고리즘 구현(2)
___배당률 기반 투자 알고리즘 구현(3)

▣ 부록 A: 소스코드 다운로드 및 실행

▣ 부록 B: PyCharm을 이용한 디버깅
01. 브레이크포인트 설정
02. 디버깅 모드로 프로그램 실행
03. 함수 디버깅하기
04. 추가 기능 살펴보기

▣ 부록 C: 유용한 PyCharm 단축키
[교보문고에서 제공한 정보입니다.]

QuickMenu