컨텐츠상세보기

파이썬으로 배우는 알고리즘 트레이딩 (커버이미지)
파이썬으로 배우는 알고리즘 트레이딩
  • 평점평점점평가없음
  • 저자조대표 지음 
  • 출판사위키북스 
  • 출판일2018-08-03 
  • 등록일2018-09-28 
  • 파일포맷 epub 
  • 파일크기21 M  
  • 지원기기 PC PHONE TABLET

    아이폰, 아이패드, 안드로이드, 태블릿, PC

책소개

프로그래밍을 전혀 모르는 비전공자나 HTS로 주식 투자 정도만 할 수 있는 일반인도 빠르게 파이썬과 알고리즘 트레이딩을 배울 수 있는 알고리즘 트레이딩 입문서이다. 파이썬이라는 프로그래밍 언어를 이용한 알고리즘 트레이딩을 다루고 있다.

파이썬 기초 문법에 대한 친절한 설명으로 시작해서, 파이썬을 이용한 대신증권 CYBOS Plus, 이베스트투자증권 xing API, 키움증권 OpenAPI+의 기초 및 기본 API 사용법, Pands 를 이용한 데이타 분석 기초와 함께 마지막으로 알고리즘 트레이딩 실전 프로젝트까지 기초부터 실전 노하우까지 모두 다루고 있다.

실전 프로그램에서는 거래량 기반의 투자 알고리즘과 배당률 기반 투자 알고리즘을 구현하고, 이를 통해 실제 매수/매도까지 자동으로 진행하는 프로그램을 개발함으로써 개발에 대한 자신감을 가질 수 있게 했다.

저자소개

광운대 컴퓨터공학과를 졸업하고 동 대학원에서 석사 및 박사학위를 취득했다. 주 전공은 영상처리(비디오 압축)이며, 여러 관련 프로젝트에 참여했다. 비디오 압축 분야의 국제 표준화 회의에 다년간 참석했고, 30여 건의 국내외 특허를 출원했다. 평범한 개발자로 파이썬을 좋아하다 취미 삼아 알고리즘 트레이딩을 시작했다. 파이썬을 사용한 알고리즘 트레이딩과 관련해 네이버 카페(http://cafe.naver.com/pystock)와 파이스탁(http://pystock.net)을 운영하고 있다.

목차

[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 481
___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 단축키

한줄 서평

1