자동 거래하기

마지막 업데이트: 2022년 4월 10일 | 0개 댓글
  • 네이버 블로그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 트위터 공유하기
  • 카카오스토리 공유하기
현대차 주가

자동 거래하기

강의 신청 후 보유검색식으로 바로 진행할 수 있는지
(완성된 최종 어플리케이션으로 바로 실행가능 한것인지)

아니면 강의를 순차적으로 들으면서
코딩을 진행하여 최종 버젼을 만들어서 해야하는지요

자동매매 마스터

7/12/2022

본 서비스는 전자책이기 때문에 직접 코딩을 하셔야 합니다. [email protected]으로 문의주시면 상세 안내드릴께요

5/30/2022

5/30/2022

자동매매 마스터

6/15/2022

hooon

2/28/2022

저도 궁금했는데 답변 감사합니다

makeBot

7/12/2022

개인PC 최소사양은 어느정도될까요?

자동매매 마스터

7/12/2022

PC사양은 그렇게 고사양까진 필요치 않습니다
적당한 정도면 될거 같은데. 세부사양까진 모르겠습니다

Now that we've updated the part with the addition of highPriceafterbuy, let's start implementing the selling option. First, let's implement the split sale according to the yield. We will implement a 30% increase in the first sale, 50% in the second sale, and a 7% increase in the third sale. First of 자동 거래하기 all, it allows sellStatus to run only when the holding quantity is greater than zero, not when the selling is complete, and the first selling when the profileRate is greater than 3. At this point, sellStatus is a "". And the first sale order will be completed -> the first sale not concluded -> the first sale will be changed to complete -> the first sale order will be sold out and then the first sale order will not be released again in these three sellStatus states. So I add this 자동 거래하기 part to the condition. Also, it sells 30% of the total reserves, i.e., the quantity of possession X0.3. We can 자동 거래하기 implement 2nd and 3rd selling with the same concept. This is the part of the 15th round. After the round of 15, it was not revealed in detail which part was modified and applied. We need a little more reinforcement, or we need a course step-by-step source.

파이썬을 이용한 비트코인 자동매매 (개정판)

이 책은 최근 인기 있는 프로그래밍 언어인 파이썬을 사용하여 국내 3대 거래소(코빗, 빗썸, 업비트) 및 국외 거래소(바이넨스)에서 비트코인을 자동매매하는 프로그램을 개발하는 방법을 다룹니다. 프로그래밍 경험이 없는 일반인을 대상으로 파이썬 기초 문법부터 시작하여 24시간 실시간 자동 매매 프로그램 개발까지 핵심을 다루고 있습니다.

특히 LARRY WILLIAMS의 변동성 돌파 전략을 백테스팅을 통해 검증하고, 국내 거래소 API를 사용해서 실시간 자동 매매가 가능한 프로그램 수준까지 개발합니다. 또한, GUI 프로그램 개발에 사용되는 PYQT와 최근 다양한 분야에서 사용되고 있는 웹 스크래핑을 다루고 있어 파이썬을 처음 배우는 분들이 유익하고 재미있게 프로그래밍을 배울 수 있도록 합니다. 책에서 설명하는 모든 프로젝트의 소스 코드를 제공합니다.
※ 책에서 사용한 소스 코드는 Github에서 다운로드 받을 수 있습니다.
Github

관련 무료 영상

관련 유료 강의

안녕하세요. PyQt 기초부터 따라가고 있는 학생입니다. ch03/03_25.py 전체코드에 ui파일 불러오는 코드가 누락된 것 같아서 댓글 남깁니다. # ch03/03_25.py from PyQt5.QtWidgets import * from PyQt5.QtCore import * from PyQt5 import uic form_class = uic.loadUiType("window_03_25.ui")[0] # 이 라인이 누락되었다고 생각합니다. class MyWindow(QMainWindow, .

score = 84 if 100 > score >= 90: print("A") elif 90 > score >= 80: print("B") elif 80 > score >= 70: print("C") elif 70 > score >= 60: print("D") elif 60 > score >= 50: print("E") else: print("F")

@열무님 아뇨 메모장에서 작성하고 1)다른이름으로 저장 2)저장할때 파일형식을 텍스트파일(*.txt) 말고 모든파일(*.*)로 저장하면 됩니다 3)불러온 파일을 열 때는 작성한 파일 우클릭 4)연결 프로그램(H) 5)다른 앱 선택 후 메모장을 찾아 선택하시면 됩니다

1번. 남들과 똑같음 2번. worldcup = 1998 while True: worldcup = worldcup + 4 if worldcup == 2050: break print(worldcup)

질문이 있습니다. 아래의 경우 타입관련에러가 나오는데 잘 모르겠습니다. score = 84 A = score >= 90 and score <= 100 B = score >= 80 and score <= 89 C = score >= 70 and score <= 79 D = .

1. num1 = 10 num2 = 30 if num1 > num2: print(num1) elif num1 < num2: print(num2) else: print("두 수가 같음")

이후에 가격이 추가된다는 관점에서 조금 다르게 작성해봤습니다. 밑 댓글보니 close.value()로 바로 불러오시는걸로 계산하던데, 위에선 객체 타입만 불러와진다고 써져있어서요. list 함수 추가해서 만들어봤습니다. xrp_price = <> xrp_price["20/21"] = 800 xrp_price["20/22"] = 900 xrp_price["20/23"] = 950 xrp_price["20/24"] = 970 xrp_price["20/24"] = 980 .

오타 말씀 드립니다. 아래 문장에서 "2018-08-06"을 "2018-08-01"으로 수정해야 합니다. 라인 8: Series 클래스의 drop 메서드로 ‘2018-08-06’ 키와 값을 삭제합니다.

class Book: def __init__(self, 책제목, 저자, 역자, 출판사, ISB10): self.책제목 = 책제목 self.저자 = 저자 self.역자 = 역자 self.출판사 = 출판사 self.ISB10 = ISB10

1) import datetime now = datetime.datetime.now() print(now + datetime.timedelta(hours=5, minutes=30)) 2) import datetime now = datetime.datetime.now() print(now - datetime.timedelta(days= 3))

#1 주식 자동 매매 프로그램 만드는 방법

오늘부터 파이썬(Phthon)을 이용한 '주식 투자 자동화'가 가능한 프로그램을 만들어보고자 합니다. 이번 포스팅은 가볍게 시작할 수 있는 포스팅으로, 주식 투자에 대해 어려움을 겪고 계시거나 초보 주린이분들도 휩게 따라 하실 수 있도록 주식 투자의 기본적인 개념을 간단하게 정리하고, 파이썬 주식 투자 자동화가 어떻게 이루어지는지 그 구조를 간단히 설명해드리겠습니다.

마지막으로 일주일간 파이썬을 이용한 주식 투자 자동화 프로그램을 가지고 그 결과가 어떻게 나왔는지 알아보도록 하겠습니다.

먼저 주식이 무엇인지 그 개념을 간단히 설명드리겠습니다. 주식이란 어떤 회사가 있을 때 그 회사의 지분을 나눠놓은 조각을 의미합니다. 주식을 가지고 있다면 이 회사를 일부 소유하고 있는 것이라고 생각하시면 됩니다.

그래서 내가 어떤 회사의 주식을 가지고 있다면 회사의 방향성에 대해서 입장을 표명할 수 있는 '의결권'을 가질 수 있고, 회사가 돈을 벌었을 때 그 돈의 일부를 배당금의 형태로 받아갈 수도 있습니다.

주식을 사고 팔 수 있는 곳, 증권사

그러면 주식을 어디서 살 수 있는지 알아보겠습니다. 주식은 일반적으로 우리가 당근마켓이나 중고나라에서 중고물품을 거래할 때처럼 어떤 사람이 특정 가격에 올려놓은 주식을 사야 됩니다. 하지만 아쉽게도 당근마켓이나 중고나라에서 주식을 구하기는 쉽지 않고, 이와 비슷한 증권사에서 주식을 사고팔 수 있도록 중계를 해주고 있습니다.

중고나라_당근마켓_증권사

실제로 주식을 거래하는 창을 보면 쉽게 말해서 판다는 사람도 있고, 산다는 사람도 있는데 여러분이 지금 당장 삼성전자 1주를 사야 된다면 어떤 선택지를 고르실건가요?

삼성전자 1주 5.7만원에 팝니다.

삼성전자 1주 5.6만원에 팝니다.

삼성전자 1주 5.5만원에 팝니다.

삼성전자 1주 5.4만원에 삽니다.

삼성전자 1주 5.3만원에 삽니다.

당연히 제일 저렴한거, 5.5만 원에 올라온 주식을 사고 싶으시겠죠. 여러분이 파는 사람이고, 지금 당장 팔아야 된다면 당연히 제일 비싸게 산다는 사람에게 팔아야겠죠. 그래서 이러한 가격들을 '호가'라고 부르는데, 파는 것 중에 가장 싼 것은 '매도호가', 사는 것 중에 가장 비싼 것은 '매수호가'라고 부르게 됩니다.

주식 호가, 봉차트

실제로 증권사 어플에 삼성전자 호가를 보시면 이런 식으로 다양한 가격에 판다고 내놓은 사람과 다양한 가격에 산다고 올려놓은 사람들이 있습니다. 수요와 공급에 의해서 산다는 사람이 많고, 옆에 있는 수량이 점점 줄어든다면 주가도 함께 올라가겠죠.

현대차 주가

반면에 반대로 자동 거래하기 판다는 사람이 많으면 계속 팔려서 주가가 떨어집니다. 그래서 이렇게 호가가 계속 왔다갔다 할텐데, 이렇게 호가가 오르락 내리락 하는 것을 일자별로 나타내게 되면 오르락 내리락하는 그래프가 생기게 됩니다. 그래프를 자세히 보시면 빨간 봉과 파란 봉으로 구성되어 있는 모습을 확인하실 수 있습니다.

카카오 주가

이렇게 봉들이 들어간 차트를 봉차트(캔들차트)라고 부릅니다. 봉은 빨간색인 양봉과 파란색인 음봉이 있습니다. 양봉부터 보면 Y축의 높이가 높을수록 가격이 높습니다. 주식 시장은 시간하는 시간과 끝나는 시간이 있는데, 시작하는 시간의 가격인 시가(장 시작할 때의 주가)보다 종가(장 끝날 때의 주가)가 더 높은 경우에 양봉자동 거래하기 그리게 됩니다.

나머지 얇은 꼬리들은 주식 가격에 계속 왔다 갔다 할 테니까 이게 최저로 내려갔을 때, 가장 저렴할 때가 '저가'이고 가장 높이까지 올라갔을 때가 '고가'라고 합니다.

음봉 의 경우 반대로 시가(장 시작할 때의 주가)보다 종가(장 끝날 때의 주가)가 더 낮은 경우 입니다. 따라서 우리는 봉차트의 봉을 통해서 주가가 어떻게 변해왔는지 한 번에 알 수 있습니다.

주식으로 돈 버는 방법

주식 거래로 돈을 벌려면 당연합니다. 가격이 쌀 때 샀다가 가격이 비쌀 때 팔면 됩니다. 그러면 이제 파이썬으로 이런 주식 투자를 자동화하는 방법에 대해 알아보겠습니다. 먼저 파이썬으로 주식을 언제 사고, 언제 팔 것인지 투자 전략을 구현할 것이고 작업 스케줄러를 이용해서 매일 주식 시장이 열릴 때마다 증권사 API를 통해서 자동으로 매수, 매도가 이루어지도록 만들어보겠습니다.

그러면 쌀 때 사고 비쌀 때 팔고 할 수 있겠죠. 이런 거래가 발생하거나 어떤 특정 이벤트가 있을 때마다 'slack'이라는 메신저로 알림이 오도록 만들어 보겠습니다. 이렇게 구성하고 코드를 돌려 놓으면 우리는 아무것도 안해도 매일 slack 메신저를 통해 우리의 코드가 돈을 벌어오는 것을 확인할 수 있습니다.

이때 우리가 투자 전략을 어떻게 구현하느냐에 따라서 수익률은 굉장히 달라질 수 있습니다. 우리는 래리 윌리암스라는 인물의 '변동성 돌파 전략' 을 사용해서 구현할 것입니다. 전략에 대해 간단히 소개해드리자면, 일정 수준 이상의 상승세를 돌파 신호로 판단하고 그 추세를 따라서 수익을 실현하는 단기 트레이딩 전략입니다.

변동성 돌파 전략

우리는 대신증권 크레온으로 시작

추후에는 이 전략 외에도 딥러닝을 사용하는 등 좀 더 다양한 전략을 이용하여 구현해볼 겁니다. 또 우리는 증권사를 이용해서 거래를 해야 되기 때문에 증권사 API를 사용해야 됩니다. API를 제공하는 대표적인 증권사로 키움증권, 대신증권 크레온, 이베스트 투자증권에서 API를 제공하고 있습니다.

키움증권_크레온_이베스트 투자증권

이중에서 우리는 사용성이 가장 좋다고 알려진 대신증권의 크레온 API를 사용 해보겠습니다. 혹시 아직 대신증권의 증권 계좌가 없으시다면 따라해보시기려면 크레온 계좌를 미리 개설하는 것을 권장드립니다.

다음으로 위에서 설명드린 방법대로 일주일간 프로그램을 이용하여 투자한 결과에 대해 말씀드리겠습니다. 코드를 돌려 놓으면 매일 스마트폰으로 slack 메신저를 통해 무엇을 샀고, 얼마를 벌었다는 이런 정보들이 자동으로 들어오게 되어있습니다.

주식 투자 자동화 프로그램 실전 결과

slack_주식 손익

그래서 투자금을 넣고 일주일 간 돌려보았더니 총실현손익으로 9,743원이 벌린 것을 확인할 수 있었습니다. 그러면 52주, 1년으로 환산하면 65.5%, 약 66%의 연 수익률 을 올릴 수 있었습니다. 요즘 은행 이자가 2%도 안되는 시점에 어마어마한 수익률을 보여주고 있습니다.

물론 이 추세가 계속 영원히 지속된다고 보장할 순 없고, 일자별로 보시면 아시겠지만 5원 벌었다가 1,000원 잃고, 1,300원 잃었다가, 7,000원 벌었다가 이런 식으로 매일매일 그 시장 상황에 따라서 전부 다르게 동작합니다.

막연한 수익률의 기대감만으로 하시는 것이라면, 그렇게 큰 기대는 하지 않으셨으면 좋겠습니다. 어디까지나 수익률이 궁극적인 목표가 아닌, 이런 방식으로 주식 투자 자동화가 가능하다는 것을 보여드리기 위함이기 때문입니다.

이번 포스팅을 통해 주식 투자 세계에 입문하게 되신 분들을 포함하여 주식 투자 자동화에 첫걸음을 디딘 분들, 모두 환영합니다. 주식 투자 자동화 관련 포스팅은 날마다 한 개씩 업로드 될 것이고, 크게는 이번편을 포함해서 총 4편 을 끝으로 마칠 것이니 끝까지 함께 하시고 만족하실만한 프로그램을 만드셨으면 좋겠습니다. 앞에서도 언급했지만, '투자 전략'에 따라 수익률은 극대화 되기 때문입니다.

우측 하단 '꿀벌의 주식 블로그 자동 거래하기 자동 거래하기 구독'을 하시면 주식 투자 자동화 포스팅을 포함하여 주식 관련 포스팅 업데이트 알림을 바로 받으실 수 있습니다.

비트코인 자동매매 시스템 만들기 0 - 자동 거래하기 강의 소개

안녕하세요 오늘부터 여러분에게 비트 코인 자동매매 프로그램 만드는 방법을 알려드릴 코시트의 우종선입니다 .

제가 유튜브나 이런 저런 채널에 프로그래밍 강의를 녹화해서 여러 자동 거래하기 분들께 공유 해드리고 있는데요 .

강의를 보신 분들 중에 많은 분들께서 비트 코인을 포함한 코인을 사고 팔 수 있는 프로그램 만드는 방법을 문의하시는 분들이 많았습니다 .

주식 시장같은 금융 시장에서도 자동매매 프로그램에 대한 수요가 많아요 .

그런데 코인은 금융 시장보다 더 자동매매 프로그램에 대한 필요성이 크다는 생각이 들었습니다 .

왜냐하면 주식 시장과는 다르게 코인 거래소는 24 시간 거래 할 수 있습니다 .

이런 특징은 원할 때 언제든 거래 할 수 있다는 장점이 될 수도 있습니다 .

하지만 반대로 투자자 입장에서는 언제나 시장을 봐야 한다는 부담이 될 수도 있습니다 .

투자 후에 마음 편히 잠에 들 수 없는 것이죠

코인 투자를 하시는 분들은 동감하실 거라고 생각해요 .

이런 코인 시장은 자동매매 프로그램에 대한 필요가 더 크다고 생각합니다 .

한정된 시간 안에 제가 현실적으로 많은 분들이 요청하시는 프로그램을 다 만들어 드릴 수는 없었어요 .

많은 사람들의 이런 문제를 해결 할 방법을 생각했습니다 .

그러다 누구나 의지만 있다면 쉽게 자신만의 자동매매 프로그램을 만들 수 있도록 영상을 만들게 되었어요 .

이 영상은 가상화폐 자동매매 시스템을 구축 하기 위한 입문 과정인데요 .

앞으로 프로그램을 통해서 어떻게 코인을 거래하는지 살펴 볼 거에요 .

이 영상은 이런 분들에게 도움이 될 것 같아요 .

1. 코인 거래를 편리하게 하고 싶으신 분

2. 프로그램을 통한 거래를 해보고 싶은 분

3. 코인 자동매매 프로그램을 만들어보고 싶은 분

영상을 통해서 여러분은 이런 것들을 얻으실 수 있어요 .

첫 번째로 파이썬 언어에 조금 익숙해질 거에요 . 파이썬 언어를 통해 자동 매매 시스템을 구축하는 기반을 다져요 .

두 번째로 영상을 통해 프로그램으로 코인을 거래 하는 방법을 알아 볼 거에요 . 영상을 통해 간단하게 프로그램으로 코인을 거래 해 볼 거에요 .

세 번째로 API 에 익숙해 지실 거에요 . 많은 증권사 , 코인 거래소들은 가격 데이터 , 거래량 데이터 등을프로그램으로 요청 할 수 있게 해두었습니다 . 프로그램으로 데이터를 요청 할 때는 API 를 사용해요 . 입문 편 영상을 통해 여러분은 이렇게 데이터를 요청하는 API 를 살펴볼 거에요 . 다른 코인 API 도 이렇게 하면 사용 할 수 있겠다는 자신감이 생기실 거에요 .

마지막으로 자신 만의 코인 거래 프로그램을 만들 수 있을 거에요 .

여러분은 시세 , 코인 코드 등의 데이터를 요청하면서 자신만의 코인 거래 프로그램에 대한 아이디어가 생기실 수도 있어요 .

입문 자동 거래하기 편 이후의 심화 편 영상도 모두 보신다면 여러분 모두 각자 원하는 코인 자동 매매 프로그램을 가지게 될 거에요.

더 많은 영상은 유튜브에 있어요!

[3] 백테스트로 자동매매 성능 확인하기

현명한 투자자라면 자신의 알고리즘을 무작정 전투에 내보내기전에 과거데이터를 이용해 수익률을 확인할 것이다. 물론 과거 데이터에 대한 수익이 무조건 보장되진않는다.

✏️ 과거데이터 추출

코드를 실행시키는 시간부터 1000분전까지의 30분간격의 데이터를 불러와 pastPrice변수에 저장한다.

1분봉, 3분봉, 5분, 15분 등의 데이터는 minutes1, minutes3, minutes5 이런식으로 바꿔주면 된다.

pastPrice를 출력때려보면 이런게 나온다.

pastPrice

필요한걸 뽑아내려면 어떻게 다듬어야할까? 우선 저게 뭔지 보자. print(type(pastPrice))

판다스 데이터프레임이다. 난 복잡한 데이터가 필요한 것도 아니고 판다스에 익숙하지 않아서 저걸 그냥 리스트로 바꿔서 필요한 것만 뽑아쓰려한다.

판다스를 리스트로 만글기위해서는 values 속성을 이용해서 DataFrame을 ndarray로 변환하고 tolist()로 리스트변환하면 된다.

요런 느낌으로. 이제 알아서 손질해서 필요한 데이터를 만들면 된다.

✏️ 업비트 만들기?

데이터는 준비됐는데 백테스팅을 위해서 실제 업비트를 쓸수는 없다. 업비트의 계좌 형식과 필요한 주요메서드를 구현했다.

buy_market_order()는 원래 ticker와 price를 매개변수로 가지지만 여기선 현재가 계산을 위해서 nowPrice를 변수로 넣어주았다. 과거 nowPrice데이터를 리스트로 받아온 후 반복문으로 로직을 돌릴 것이다.

✏️ 백테스트

나는 10분봉을 이용해 계산을 했다. 10000개의 데이터를 가지고 테스트 했으니 대략 69일정도 테스트를 했다고 계산. 69일간 약 6.62 %의 수익(POR)을 얻었다. 104일간 테스트했을때는 약 13%의 수익을, 내 자동 거래하기 남은 군생활인 500일간 테스트했을때는 64%의 수익을 얻었다.

POR 계산은 다음과 같이 했다.

pyupbit.get_ohlcv('KRW-DOGE', interval='minutes10', count=10000) 15분마다 자동 거래하기 찍은 POR 변화가록

다음 포스트에서는 계속 매매가 진행될 수 있도록 AWS 서버를 생성하고 프로그램을 작동시켜보도록하겠다. 이틀 후면 부대복귀다.

✏️ 백테스트 주의점

백테스트를 진행하면서 분명 자동 거래하기 수익률을 높히고자 변수를 이것저것 바꿔본다던가 조정을 가할 것이다. 하지만 과한 조정은 과적합 (overfitting)이 될 수 있다. 과거 데이터에 대한 시뮬레이션 결과를 좋게하고자 과한 튜닝을 한다해서 실제결과에도 같은 결과를 가져올 것이란 보장이 없다는 것을 인지해야한다. 지금 하고 있는 튜닝이 과거 데이터에 대한 튜닝인지 인지해라.


0 개 댓글

답장을 남겨주세요