Google Colab 및 Alpaca API를 사용하여 브라우저를 통해 데이터 분석 및 주식 거래

Alpaca는 최신 REST API를 제공하여 수수료없이 프로그래밍 방식으로 주식을 쉽게 거래 할 수 있도록합니다. 사실, 우리는 매일 새로운 사람들이 들어 와서 완전 또는 반자동 방식으로 주식 거래를 시작하는 것을보고 있으며, 저는 여전히 Google Sheet 주식 거래 예에 대해 상당한 관심을 받고 있습니다. 하지만 API를 사용하기 전에 프로그래밍 환경을 설정하는 것은 약간의 작업이 될 수 있으며, 특히 선택할 수있는 복잡한 생태계가있는 Python의 경우 API를 사용하여 이점을 얻을 수 있습니다.

실제로 이에 대한 해결책이 있습니다. 파이썬 2 대 3을 망쳐 놓거나 코드 편집기를 설치하거나 터미널을 여는 것에 대해 걱정할 필요가 없습니다. Chrome 및 Firefox와 같은 최신 브라우저 만 있으면됩니다. Google Colab을 사용하면 API 키를받은 후 즉시 Alpaca API로 거래를 시작할 수있을뿐만 아니라 거래 결정을 내리는 데 도움이되는 데이터를 분석하고 시각화하는 강력한 도구도 있습니다.

Google Colab (이전에는 Colaboratory라고 함)이 무엇인가요?

Google Colab은 브라우저에서 Python 프로그램을 작성할 수있는 클라우드에서 Python Jupyter Notebook을 실행할 수있는 서비스입니다. Google 계정 만 있으면됩니다. 클라우드에서 컴퓨팅 리소스를 관리합니다. 서비스의 주요 사용 사례는 커뮤니티를 활성화하기위한 기계 학습 및 인공 지능 연구입니다. 데이터 세트를 사용하여 머신 러닝 모델을 학습하기에 좋은 환경이며 (Google 드라이브를 연결하여 학습 데이터와 모델도 저장할 수 있음) Python을 실행하고 분석해야하는 정량적 재무 영역에도 좋은 서비스입니다. 시장 데이터, 빠른 결정을 내리고 데이터를 기반으로 직접 거래하십시오.

알파카 API

Alpaca는 최신 Web API로 수수료없는 주식 거래 서비스를 제공합니다. 오늘날 많은 사람들이 자신의 양적 거래 전략을 자동화하기 위해이 서비스를 사용하고 있습니다. 더 쉽게 시작할 수있는 온라인 문서와 Python을 비롯한 다양한 언어로 즉시 사용할 수있는 오픈 소스 라이브러리가 함께 제공됩니다. 또한 Medium에서 예제를 읽고 커뮤니티 여유 및 포럼에 가입하여 다른 사람들을 알고 지식을 얻을 수 있습니다. 이메일로 가입하고 종이 거래 시뮬레이션을위한 API 키를받을 수 있습니다.

시작하기

대시 보드에서 Alpaca API 키를 받으면 Colab으로 이동합니다. 파일에서 “새 Python 3 노트북”을 선택합니다.

새 노트북이 열립니다. 브라우저에서 열린 노트북은 새로운 Python 3 환경을 시작하여 사용자와 함께 유지되는 백엔드 실행 프로세스에 자동으로 연결됩니다. 가장 먼저해야 할 일은 Alpaca Python SDK를 설치하는 것입니다. 첫 번째 코드 검은 색에 이것을 입력하고 실행 버튼을 클릭합니다.

잠시 후 클라이언트 라이브러리를 설치합니다.

올바르게 설치되었는지 확인해 보겠습니다. 다음 코드 블록에이를 입력하여 YOUR_API_KEY_ID 및 YOUR_API_SECRET_KEY를 대시 보드에서 자신의 것으로 바꿉니다.

오류가보고되지 않으면 문제가되지 않습니다!

주문 제출

Alpaca Trading API에는 여러 가지 방법이 있습니다. Account API는 현재 현금 및 자기 자본 잔액과 같은 계정 정보를 제공하는 반면, Position API는 평균 진입 가격 (avg_entry_price) 및 주식 수 (qty)로 오픈 포지션을 반환합니다. 물론 작동 방식을 확인하려면 먼저 Order API를 사용하여 무언가를 구매해야합니다.

계정 정보를 얻으려면 상단 메뉴에서 “+ Code”를 클릭하고 새 상자에 api.get_account () 를 입력 한 다음 실행합니다 (대신 Shift + Enter를 입력 할 수 있음). 실행 버튼 클릭).

여기에 오류가 발생하면 URL을 올바른 API 엔드 포인트로 설정하고 키를 올바르게 붙여 넣었는지 확인하세요.

당신이 가지고있는 돈이 얼마나되는지 알았다면, 예를 들어 Apple 1 주를 구입해 보겠습니다. 새 코드 블록을 열고 이것을 입력하고 실행하십시오.

정규 시장 시간 (동부 표준시 오전 9시 30 분-오후 4시)에이 작업을 수행하면 주문이 즉시 채워지고 list_positions ()에서 확인할 수 있습니다.

그렇지 않으면 주문이 다음 거래일에 대기하므로 List Orders 엔드 포인트에서 확인할 수 있습니다.

쉬운가요?

촛대 차트 그리기

이제 API를 통해 계정 정보를보고 주문할 수 있습니다. 주식 거래에 API를 사용하는 이점 중 하나는 데이터를 기반으로 결정을 내릴 수 있다는 것입니다. Alpaca API는 또한 시장 데이터를 제공하며 계정 정보를 검색하는 것과 동일한 방법으로 얻을 수 있습니다. get_barset () 은 데이터를 필터링하는 여러 매개 변수가있는 함수입니다.

df 속성을 사용하면 Alpaca Python SDK가 결과 JSON을 Pandas DataFrame으로 자동 변환합니다. 노트북에 이에 대한 표 형식이 표시됩니다.

하지만 여전히 해석하기 어려울 수 있습니다. 그렇죠? 이 데이터를 더 그래픽으로 시각화 해 보겠습니다. 이렇게하려면 mpl_finance라는 다른 라이브러리를 설치해야합니다.

그런 다음이 스 니펫을 붙여 넣어 원통형 차트를 그립니다.

브라보!

고급 아이디어 : GPU를 사용한 AI / 머신 러닝 거래

일부는 데이터가 새로운 돈이라고 말합니다. 실시간으로 거래 결정을 내리기 위해 시장 데이터를 사용하는 다양한 방법을 생각할 수 있습니다. 자신의 지표를 계산하고 수천 개의 주식 중에서 구매할 상위 주식을 찾으십니까? 확실한. 과거 가격 움직임에서 선형 회귀를 계산하여 미래 가격을 예측하고 예측 하시겠습니까? 확실한. 이 Google Colab의 가장 큰 장점 중 하나는 GPU가 무료로 제공된다는 것입니다! 실제로 많은 연구자들이이 플랫폼을 사용하여 GPU로 학습하는 AI 모델을 실험하고 있습니다. 관심이 있으시면이 환경에서 Tensorflow 또는 PyTorch를 사용하는 방법에 대해 자세히 조사하고 AI 거래 봇을 구축 할 수 있습니다.

설계된 사용 사례는 데이터 마이닝과 머신 러닝이기 때문에이 환경에서도 장기 실행 프로세스를 실행할 수 있습니다. 브라우저를 열어두고 장기 실행 기능을 시작하면 최대 12 시간 동안 실행됩니다. 정규 시장 세션의 하루 거래 시간이 몇 시간인지 아십니까? 6.5 시간입니다. (내가 시도하지는 않았지만) 전체 정기 시장 세션에서도 잠재적으로 거래 알고리즘을 실행할 수 있습니다! 다시 말씀 드리지만, 컴퓨터에 아무것도 설치할 필요가 없습니다.이 서비스를 사용하려면 브라우저를 열기 만하면됩니다.

Google Colab을 사용하여 Python 설정없이 Alpaca API를 시작하는 방법을 보여 드렸습니다. 지금까지 그렇게 어려웠던 일을 성취 할 수있는 결합 된 서비스가 있다는 것은 대단합니다. 여기에 사용 된 노트북을 github에 저장했으며 노트북을 그대로로드 할 수도 있습니다. 우리는 포럼과 Slack 커뮤니티에 참여하므로 언제든지 연락하여 귀하의 생각을 알려주십시오!

실시간 중개 계좌에서 시도하기 전에 종이 거래에서 전략을 테스트하여 작동하는지 확인하십시오.

알고 계획해야하는 자동 거래 알고리즘 고유의 위험이 있습니다. 연결 문제, 정전, 컴퓨터 충돌 또는 시스템 문제와 같은 기계적 오류가 있는지 알려주는 지속적인 모니터링 또는 경고 방법 또는 시스템을 설정해야합니다. 또한 자동화 된 거래 시스템에서 주문 오류, 누락 또는 중복을 초래할 수있는 이상 현상이 발생하는 경우를 모니터링해야합니다.

기술 및 서비스는 AlpacaDB, Inc.에서 제공합니다. 중개 서비스는 FINRA / SIPC 회원 인 Alpaca Securities LLC에서 제공합니다. Alpaca Securities LLC는 AlpacaDB, Inc.의 전액 출자 자회사입니다.

원래 Alpaca Forum 에 게시되었습니다.