자동매매 수익창출의 진리
"시스템 트레이딩"은 과연 단순히 개발만 하면 끝이라고 생각하십니까?
2017년 스캘핑 원금대비 110배 수익(김프 50%에 매도),
2021년 시스템 트레이딩 원금대비 41배 수익
개발도 할 줄 알고, 트레이딩도 할 줄 아는 사람의 봇
매수 금액만 설정해 주시면 되도록 만들어 드립니다.
1) 거래소 내의 모든 원화코인을 13초 간격으로 탐색 하며 매매 진행
또한, 실시간으로 어떤 코인이 오르는지, 등락폭은 어떤지 현재 이동평균선, 각종 지표 대비 위치는 어딘지
모니터링을 통해 확인 가능합니다.
2) 자동매수, 자동매도, 자동손절 가능하며, 시장 상황에 따라 매매 확률을 높일 수 있는 몇가지의
옵션이 제공됩니다. 기본적으로 설정된 매수 타점은 보통 개미들의 패닉셀을 받아먹는 타점입니다.
3) 메인알트, 전체코인, 사용자 지정코인만 거래 기능을 통해 특정 코인 필터링이 가능합니다.
(필터링이 되어도 모니터링 화면에는 모든 데이터가 출력됩니다.)
4) 매뉴얼 모드를 통해 수동으로 단타를 칠 수 있습니다.
(설정값 지정 후 키보드를 통해 빠르게 매수, 매도 가능)
5) 피봇 데이터를 통해 특정 코인의 지지선, 저항선을 검색 할 수 있습니다.
6) 구간 스캘핑 ( 지정된 자리 매수, 매도 반복) 이 서비스 기능으로 제공됩니다. )
7) 오토 스캘핑 ( 사용자 설정값을 기준으로 과매도 범위 내에 속한 코인에 대해 자동스캘핑이 가능합니다.)
8) 급락에 대한 대비 전략( 개발자이자 사용자로써 많은 하락장을 겪어보며 개발한 하락장 대비 전략)
9) 리스크 관리에 대한 매도 방식
( 매도 타겟을 1.8%로 두었을때 1.72%까지만 상승하고 떨어지는 경우 지켜만 봐야할까요?
매수세가 강한 상승을 하는중인데, 1.8%에 딱 매도해야할까요? )
10) 다양한 옵션과 확률 높은 타점 제공
11) 간단한 조작 방식으로 누구나 쉽게 이용가능한 사용이 가능하며, 사용자는 특별한 컨트롤 없이
12) 장기성 타점과, 단기성 타점을 구분하여 유동적인 익절( 알고리즘을 통하여 단기 조정, 추세전환 구분)
3) 개발 작업 후 릴리즈를 배포 드리며, 매뉴얼을 제공 해드립니다.
( 또한, 원격접속을 통해 셋팅 및 설명드립니다)
4) 고객님의 평가 및 결제확정
※구매전 확인 사항입니다.
1. 해당 소프트웨어는 고객님의 수익률을 보장해주지 않습니다. 수익을 내기 위한 도구라고 생각해주세요.
2. 거래소 API Key 저장시 암호화되어 저장되며 고객님의 PC외에는 절대 저장되지 않으니
3. 어떠한 이유에서도 진행 중 작업물에 대한 환불은 불가능하므로 신중한 결정 후 구매 부탁드립니다.
4. 등록된 IP를 제외한 제 3자에게 무단 배포를 절대 금하며, 형사처벌의 대상이 될 수 있습니다.
예외적인 상황에 대해선 개발자와 협의해주세요.
작업일 : 5일
수정 횟수 : 0회
가. 기본 환불 규정 1. 전문가와 의뢰인의 상호 협의하에 청약 철회 및 환불이 가능합니다. 2. 작업이 완료된 이후 또는 자료, 프로그램 등 서비스가 제공된 이후에는 환불이 불가합니다. ( 소비자보호법 17조 2항의 5조. 용역 또는 「문화산업진흥 기본법」 제2조 제5호의 디지털콘텐츠의 제공이 개시된 경우에 해당) 나. 전문가 책임 사유 1. 전문가의 귀책사유로 당초 약정했던 서비스 미이행 혹은 보편적인 관점에서 심각하게 잘못 이행한 경우 결제 금액 전체 환불이 가능합니다. 다. 의뢰인 책임 사유 1. 서비스 진행 도중 의뢰인의 귀책사유로 인해 환불을 요청할 경우, 사용 금액을 아래와 같이 계산 후 총 금액의 10%를 자동매매 수익창출의 진리 공제하여 환불합니다. 총 작업량의 1/3 경과 전 : 이미 납부한 요금의 2/3해당액 총 작업량의 1/2 경과 전 : 이미 납부한 요금의 1/2해당액 총 작업량의 1/2 경과 후 : 반환하지 않음
비트코인 자동매매 하는 이유 3가지
비트코인에 대한 관심이 자동매매 수익창출의 진리 높아지면서 직접 수동으로 코인 앱에서 투자하는 방법 외에 자동프로그램으로 매매를 하는 분들이 늘어나고 있습니다. 비트코인 자동매매는 어떤 장점을 가지고 있길래 많은 인기를 끌고 있는지 알아보도록 하겠습니다.
비트코인 자동매매
자동매매라고 하면 말 그대로 '봇(Bot)'을 이용해서 수동으로 내가 매수와 매도를 하던 것을 봇이 대신 프로그램 된 대로 수행을 해 주는 것입니다. 이는 반드시 프로그램 전문가들만 만들 수 있다고 생각하고 어렵게만 생각하는 분들이 많을 겁니다.
하지만 요즘에는 '파이썬'이라는 쉬운 프로그램이 있어서 조금만 노력하면 배울 수 있고 이 외에도 자동매매 관련 프로그램들이 많이 시중에 나와있습니다. 일반 투자자들이 접근하기보다 쉬워졌다고 할 수 있습니다.
그럼 비트코인을 굳이 자동으로 매매하는 이유는 무엇일까요? 그냥 내가 직접 사고 싶을 때 사고 팔고 싶으래 팔면 되는데 말이죠.
1.자유롭게 투자를 이어갈 수 있다
가장 중요한 이유는 '비트코인의 큰 변동성'과 '365일 24시간 거래되는 현실'이 자동매매에 대한 수요를 불러일으켰다고 생각됩니다. 지금은 비트코인이 ETF 승인 호재도 있고 사상 최고가를 치고 나가는 호황 상태지만 조정을 받게 되면 -30%까지도 순식간에 빼 버리는 것이 비트코인이기 때문이죠. 그래서 이 큰 변동성을 대응하려면 24시간 계속 코인 앱을 실행하고 계속 모니터링을 해야 하는 겁니다.
주식 시장처럼 오전에 시작해서 오후에 끝나는 것도 아니고 주말에 쉬는 것도 아닙니다. 365일 24시간 계속 움직이는 시세를 지켜보면 언제 매수를 해야 하고 언제 매도를 해야하는지에 대해 판단하기 매우 어려워지는 것이죠.
바로 이럴 때 자동매매로 봇에게 내가 원하는 전략을 심어주고 그대로 실행하게 한 다면 굉장히 편하게 투자를 할 수 있게 되는 것입니다. 다시 말해 24시간 내가 원하면 봇이 계속 매매를 해 줄 수 있기 때문에 수익도 계속 얻을 수가 있겠죠. 물론 그 반대의 경우도 있겠지만 말입니다.
2.심리에 흔들리지 않고 투자를 할 수 있다.
특히나 사람의 심리는 가격이 오르고 내림에 따라 수시로 갈대처럼 흔들리기 때문에 방금전에 마음먹은 대로도 실행하지 못하는 경우가 많습니다. 하지만 시스템은 기계라고 생각하시면 됩니다. 철저히 입력값대로 처리되기 때문에 심리에 흔들리지 않는 큰 장점이 있습니다.
대신 수익을 낼 수 있도록 투자 전략을 잘 짜야 합니다.비트코인 투자 경험이 없어 직접 프로그램을 만들고 전략을 심을 수 없다면 이미 시중에 나와있는 여러 자동매매 시스템을 잘 살펴보고 자신에 맞는 것을 이용하는 것도 좋은 방법입니다. 자동매매를 할 수 있는 거래소도 있으며 실력자들이 프로그램해서 무료로 공개해 놓은 프로그램도 있습니다.
3.단타매매에 최적
비트코인을 매매할 때 내가 내가 원하는 대로 설정해서 계속 매매를 할 수 있다는 것은 설명을 했습니다.바로 단타매매를 즐겨하시는 분들에게는 최적의 시스템이 되는 것이죠. 예를 들어 차트를 분석할 줄 알고 중수 이상이시라면 스스로 기술적인 분석을 통해 가격 박스권을 잡아서 어느 선에서 매수하고 어느 선까지 올라가면 매도하게끔 설정도 가능합니다.
어느 선까지 하락하면 분할매수를 얼마큼 하라고 프로그램할 수 도 있습니다. 거미줄처럼 매수와 매도 가격을 설정해서 계속 사고팔고 해서 단타를 할 수도 있습니다. 만약 자신이 없으면 AI인공지능에게 맡길 수도 있습니다. 나 대신 알아서 사고팔고를 해 주고 매매 횟수도 전략에 따라 다르니깐 사용자가 결정할 수도 있습니다.
비트코인, 이더리움 같은 우량 코인에 장기 투자하는 것을 좋아하시는 분들은 사고팔고 하면 잦은 수수료에 큰 수익을 낼 수 없으므로 긴 시간을 보유하는 분들도 많습니다. 하지만 변동성이 큰 만큼 단타매매에 최적화된 것이 비트코인과 같은 암호화폐 시장이라고 할 수 있습니다.
매수하고 금방 10%를 찍고 다시 -10%를 우습게 움직이기 때문에 그 변동성을 이용해서 사고팔고 해서 수익을 내는 것이지요. 장기투자만큼 많은 수익을 내지 못해도 짧게 작은 수익을 반복적으로 취하게 되면 무시 못할 수익으로 자동매매 수익창출의 진리 돌아오게 되어 있습니다.
자동매매를 할 때 자금의 계획과 투자전략이 중요하다고 다시 한번 강조하고 싶습니다.내가 가지고 있는 자금의 규모를 정확히 파악하지 못하고 매수, 매도를 반복하게 되면 나중에 시스템이 추가로 대응을 못하게 되는 상황이 이루어질 수 있습니다. 그리고 여러 전략을 수행하면서 자신에게 맞는 수익을 내주는 알고리즘을 찾아서 계속 수정하면서 최적의 자동매매 시스템을 찾아내는 것이 중요하다고 하겠습니다.
비트코인 ETF 선물 현물 차이 중요
비트코인 ETF가 미국 증시에 드디어 상장이 되면서 성공적으로 제도권에 입성했다는 평가가 나왔습니다. 이번 비트코인 ETF는 현물이 아닌 선물 ETF입니다. 현물과 선물의 차이는 크게 있으므로
테슬라 비트코인 상승 1조 넘게 이익
테슬라는 전 세계에서 비트코인을 2번째로 많이 보유하고 있는 기업입니다. 매입 당시에 화제가 자동매매 수익창출의 진리 되었었고 테슬라의 전기차 구매에도 사용할 수 있게 한다고 해서 비트코인 가격이 상승을 촉진
파이썬 코인 자동매매 봇 만들기#1 - pybitumb 모듈 설치하기
파이썬 자동화에 관심이 많은 큰공이, 이번에는 암호화폐(코인) 자동매매 봇 만들기에 도전해보고자 합니다.
을 기반으로 작성될 예정이며, 실질적으로 필자가 직접 해보면서 관련 된 부분을 확인하면서 작성될 예정입니다.
파이썬을 이용한 비트코인 자동매매 (개정판)
이 책은 최근 인기 있는 프로그래밍 언어인 파이썬을 사용하여 국내 3대 거래소(코빗, 빗썸, 업비트) 및 국외 거래소(바이넨스)에서 비트코인을 자동매매하는 프로그램을 개발하 .
비트코인 자동매매 왜 필요한가?
급변하는 경제 상황, 코인 거래소의 빠른 매매들에 대해서, 아? 뭔가 사람이 직접하는게 아니라, 봇이 스스로 매도 매수를 해서 빠른 거래를 하게끔 하는것에 대해서 다들 한번쯤 생각해보셨을 겁니다.
당연히 목적은 코인 자동매매로서 돈을 왕창 벌어 대박을 치자가 목표이겠으나, 파이썬 자동화 스킬이라 던지, 코인 매매 스킬등을 익힐 목적도 포함하고 있습니다.
이에, coinpipe 큰공이 직접 파이썬을 이용하여, 코인 자동매매 시리즈를 포스팅 해볼까 합니다.
스스로 해보면서, 포기하지 않도록 많은 격려를 해주시면 포스팅에 더 힘이 실리지 않을까 합니다.
개발환경
기본적으로 아래 개발환경을 토대로 작업하고자 합니다. 파이썬 및 기본 프로그래밍 자동매매 수익창출의 진리 지식이 있어야 어느정도 이해가 가능하지 않을까 합니다.
궁금하신 점이 있으시면 댓글로 질문 주시면 언제나 친절하게 대응해드릴 예정입니다.
1) 윈도우 10 / 64 bit
2) MS VS Code
3) phython 3.9.6
4) pybithumb 모듈
pybithumb 모듈 설치
코인 자동 매매를 하기 위해서는 이를 위한 pybithumb 이라는 모듈 설치가 우선적으로 필요합니다.
아래 github 에 모든 소스가 공개되어 있는 훌륭한 모듈입니다.
GitHub - sharebook-kr/pybithumb: python wrapper for bithumb API
python wrapper for bithumb API . Contribute to sharebook-kr/pybithumb development by creating an account on GitHub.
혹옥시나, 파이썬 모듈 설치를 방법을 모르신다면, VS CODE 터미널 상에서, pip install pybithumb 만 입력하시면 뾰로롱 설치가 됩니다.
AttributeError:
오잉? 잘되던 import 를 했는데, Attribute Error 가 발생하였다.
해결방법은 "most likey due to a circular import" 에 힌트가 있다.
vscode 로 처음 파일명을 만들때, pybithumb.py 라고 만들었는데, import 하는 모듈의 이름도 pybithumb 이였다.
import 하는 모듈의 이름과, 파이썬 코드의 이름이 동일하면 위와 같은 AttributeError 가 발생한다.
올바르게 코드를 작성하니, pybithumb을 정상적으로 Load 하고, 해당 메소드도 사용이 가능하다.
자동매매 수익창출의 진리 빗썸 거래되는 모든 화폐의 현재가 얻기
위의 API를 이용해서 거래되는 모든 화폐의 현재가를 얻어보도록 하겠습니다.
사용되는 함수는 get_ticker() (현재 거래되고 있는 가상화폐의 목록을 리스트 형태로 하나씩 표시),
get_current_price(ticker), ticker의 현재가를 얻는 함수 입니다.
결과
현재시각, 2021년 8월 19일 오후 10시 46분 기준으로 총 179개의 코인이 거래되고 있으며, 원화로 현재가를 알 수 있습니다. 전체 179개의 코인의 시세를 취득하는데, 시간이 살짝 소요 되네요.
자본추적자
그간 포스팅으로 포텐 아바타법을 통해 많은 수익 실현 보여 드렸는데요, Lotto님 자동매매 프로그램으로 포텐 아바타법에 부스터를 달아보겠습니다. 잠자면서 미국 주식 채굴하자고요! 그간 자동매매에 사용할 키움 계좌가 없었는데, 마지막 개설일자 이후 90일이 지나면서 추가 계좌가 생겼거든요. 비트코인 채굴기 저리 가라! 본격 미국 주식 채굴기!
포텐님 아바타 누적 수익 (UPDATED) / 14,919K
Lotto님 엑셀에서도 이제 30티어 까지 계산가능 합니다. (아래참고)
미국 주식 채굴기 Lotto님 자동매매 프로그램
이번 주 초반 (2021.07.21) 미국 증시는 많은 조정을 받았습니다. TQQQ의 경우 종가 기준 131.41 USD에서 122.52 USD로 7%가량 조정을 받았고, 동 기간 NASDAQ은 3.1% 조정을 받았습니다. 때마침, 키움증권의 계좌 개설 90일이 지나면서 추가 계좌 개설이 가능했었는데요, 포텐 아바타법 자동매매의 적기라고 판단하여 남는 컴퓨터 한 대에 키움 HTS를 깔아주고 Lotto님의 자동프로그램을 실행시켜 본격 자동매매를 시작했습니다.
NASDAQ과 TQQQ 많은 조정을 받은 이번주 장 초반이었죠?
Lotto님 자동매매 프로그램 시작 전 준비사항
프로그램 동작방식 엑셀 Sheet (매매 프로그램에서 다운가능)
키움 HTS 설정 (처음 한 번만 설정)
화면 우클릭 -> 메뉴툴바, 화면 툴바 보이기 체크
종합환경설정 -> 보안설정 -> 멀티로그인(동시접속) 팝업 알림 적용 해제
자세한 내용은 매뉴얼 참고하세요
프로그램 매매 50티어법 1 티어 진입
일단 사야 팔 수 있겠죠? 사용하고자 하는 키움 계좌에 예수금을 이체하고 Lotto님 자동매매 프로그램을 실행해 주겠습니다. 종목은 미니 TQQQ라 할 수 있는 TECL로 진입했습니다. 일단 TQQQ는 포텐 아바타 13 티어 법으로 진행하고 있기도 하고 이체한 예수금이 많지 않아 단가가 비싼 TQQQ보다는 비슷한 움직임을 보이는 TECL로 정했습니다.
진입 당시 TECL 그래프입니다.
Lotto님 자동매매 프로그램을 실행하고 기본정보 입력해 줍니다, Q'ty Check 해줍니다.
Q'ty Check 해보면 예수금과 1티어 매입가를 기준으로 수량을 계산해 줍니다. 초기 진입갯수는 4개 매수 입니다.
Lotto님 자동매매 프로그램은 계좌 잔고 내 종목의 '수량'을 가지고 현재 위치한 티어를 판단하기 때문에 수량을 맞춰 줘야 합니다. (프로그램이 계속 개선되면서 유사하게 맞추어 줘도 되는 것으로 알고 있어요) 1 티어는 자동을 지원하지 않기 때문에 본인이 직접 매수하여 진입해 주면 됩니다.
마찬가지로 Lotto님이 공유해 주신 엑셀 Sheet를 통해서도 1티어 진입 갯수를 알 수 있습니다.
Lotto님이 공유해 주신 엑셀 Sheet를 살펴보면 티어가 진행되며 매 티어별로 매도 수량과 매수 수량, 기대하는 수익을 파악할 수 있습니다. 마찬가지로 투자금액, 현재가 기준으로 1 티어는 4개로 진입을 해야 하네요. 아무래도 50 티어로 나누다 보니 티어당 매매 시 기대 수익이 크지 않습니다. 유의미한 수익을 기대하기 위해서는 투자금을 키울 필요가 자동매매 수익창출의 진리 있어 보입니다. 다만, 하루에도 몇 번씩 자동매매가 이루어질 수 있고 컴퓨터와 프로그램이 노동하고 우리는 자고 있기 때문에 기분이 좋을 수밖에요.
Lotto님 자동매매 프로그램 실행화면, 매수, 매도 주문 중 현재가 기준으로 현재 티어에 맞추어 하나의 주문이 나가게 됩니다
설정한 감시 간격(분) 기준으로 주문을 갱신하며 매수 또는 매도 하나의 주문을 넣고 자동매매가 이루어집니다. 모든 준비가 끝났네요. 노트북 덮개를 덮어도 절전모드로 진입되지 않게 설정하고 본인은 잠자러 가면 됩니다. 끝.자동매매 수익창출의 진리
(응용)프로그램 매매 50티어법: 처음에 25 티어로 바로 진입, 평단가 맞추기
Lotto님 자동매매 프로그램 1 티어는 매도가 이루어지지 않습니다. 1 티어를 매도하고 다시 같은 단가에 매수하는 것은 의미가 없기 때문이에요. 그래서 자동매매 수익창출의 진리 수익금 만큼만 매도가 이루어지고 원금은 항상 유지가 됩니다.
만약 1 티어 진입 후 계속 상승장을 만난다면 심심할 수 있겠죠? 처음에 바로 25 티어로 진입해 보겠습니다. 이때 중요한 것은 매수 수량과 평단가입니다. 수량과 평단을 맞춰주면 프로그램 동작 원리에 아무 문제가 없습니다.
아바타 50티어법은 1 티어 진입 후 하방 -52.3%까지 커버가 가능합니다. 때문에 25 티어에 진입하더라도 -31.4%까지 하방 방어가 가능하고(25 티어 평단가 57.00, 50 티어 평단가 39.09), 증시가 계속 하락하여 하방이 뚫리면 추가 예수금 투입하여 하락장에 맞추어 주면 되기 때문에 걱정 없이 25 티어로 진입했습니다. 같은 방법으로 10 티어로 진입하거나 20 티어로 진입하거나 개인의 성향에 맞추어 진입하시면 됩니다.
진입 당시 TECL의 시장단가는 대략 57.00 USD에서 움직이고 있습니다.
투자금 10000, 현재가 100 기준 25티어의 잔고는 60개 평단가는 69.57로 계산 됨
중간 티어 진입을 위한 수량과 단가 맞추기 자동매매 수익창출의 진리 시작합니다. 먼저 Lotto님의 엑셀을 실행하고 본인의 투자금을 입력하고 현재가는 100.00 USD로 맛보기를 해봅니다. 현재가 100.00 USD로 1 티어 진입했다면 25 티어 까지 내려갔을 때 보유 수량은 60개 평단은 69.57 USD로 자동 계산이 됩니다. 예시로, 현재 TECL의 마켓 단가는 57.00 USD로 평단가의 차이가 발생됩니다.
이제 역으로 맞춰 주면 되는데요,
25 티어에 바로 진입하기 때문에 당연하게도 사용하는 투자금은 절반 (예시에서) 5000불입니다. 5000불을 사용하여 현재 시장단가에서 구매 가능한 수량은 87개 평단가는 57.00 USD입니다. 이때 현재가 100.00으로 임시 계산한 엑셀 시트 25 티어 평단가 68.57 USD와 단가 차이 -12.57이 발생했습니다.
문제: 25 티어의 평단가가 자동매매 수익창출의 진리 57.00 USD가 되기 위해서는 처음 1 티어 진입가를 얼마로 해야 하는 가에 대한 문제.
Trial Run으로 해답이 나올 때까지 엑셀 현재가를 수정해 보면 되겠죠. 또는 아래처럼 엑셀의 목표값 찾기 기능을 사용하면 됩니다.
평단 차이는 -12.57 USD 였습니다. 목표값 찾기 기능을 사용하기 위해서 엑셀에서는 위에 화면처럼 수식으로 계산되어 있어야 합니다.
1) 수식 셀 C32를 선택하고 ALT + T 하고 단축기 G를 눌러 엑셀의 목표값 찾기를 불러온다.
2) 목표값 찾기 화면에서 수식 셀은 C32가 입력되어 있다.
3) 찾는 값은 '0' 입력해 줍니다.
4) 마지막 값을 바꿀 셀에는 D13 현재가 100.00 셀을 선택해 줍니다.
계산이 끝난 모습입니다. 자동으로 현재가는 81.91로 변경됐고 25 티어의 평단가는 57.00에 맞추어졌습니다.
문제: 25 티어의 평단가가 57.00 USD가 되기 위해서는 처음 1 티어 진입가를 얼마로 해야 하는 가에 대한 문제.
정답: 처음 1 티어의 현재가는 81.91로 진입하면 된다. 엑셀의 목표값 찾기로 찾을 수 있습니다. 처음이라 어려워 보이면 그냥 손으로 몇 번 Trial Run 하다 보면 맞출 수 있습니다.
(응용)프로그램 매매 50티어법: 처음에 25 티어로 바로 진입, 수량 맞추기
Lotto님 포텐 아바타 50 티어 자동매매 프로그램에 현재가를 81.91로 입력하면 된다고 계산되었습니다. 다음으로 잔고 수량을 맞춰 줘야 합니다. 자동매매 프로그램은 수량을 기준으로 해당 티어를 판단하기 때문입니다. 위에 시뮬레이션상 74개가 25 티어를 대표하는 수량이 되네요. 여기서 고민,
방법 1) 위 시뮬레이션을 먼저 하고 현재가 57.00에 지정가 주문으로 74개만 주문
방법 2) 시장에서 매수를 먼저 했다면(이미 87개를 보유) 수량 차이 13개는 다른 계좌로 옮기기
아직 매매를 하지 않았다면 74개만 매수하면 됩니다. 다만 매수를 먼저 해버렸다면 또는 보유한 수량이 있다면 74개 외에 수량 차이는 다른 계좌로 옮기고 적당한 가격에 매도하면 되겠죠.
저는 7/19일 프리장에서 TECL를 매수하여 25 티어로 바로 진입했습니다. 1 티어 매입가를 시뮬레이션과 같이 맞춰 주고 수량도 맞췄기 때문에 문제없이 실행이 됩니다. 이제 할 일은? Lotto님께 감사드리며 컴퓨터 덮개를 덮고 잠 잘 자기!
Lotto님 아바타 자동매매 프로그램으로 열심히 매수 매도가 이루어 진 모습 / 키움 기간별 주문 체결내역
Lotto님 아바타 자동매매 프로그램 열심히 일했죠? 처음 25티어로 진입했기 때문에 상위 티어로 올라가며 매매가 이루어 질 때 마다 수익률이 올라 갑니다.자동매매 수익창출의 진리
자동매매 업데이트 (07/19 ~ 08/04)
[Toy Project] 자동매매 프로그램 만들기 - 5. RSI 지표 이용하여 매매하기
RSI값을 계산하기 위해서는 pyupbit 모듈의 get_ohlcv 함수를 이용하여 해당 암호화폐의 이전 데이터들을 불러와야 한다.
하지만 get_ohlcv 함수로는 여러 암호화폐에 대한 데이터를 한 번에 받아올 수 없어서, 여러 암호화폐 RSI값을 계산하기 위해서는 각 암호화폐별로 get_ohlcv 함수를 각각 호출해야 한다.
따라서, 원하는 암호화폐 ticker를 리스트에 모아놓고, 차례대로 RSI를 계산하기로 했다. (더 나은 방법이 있는지는 잘 모르겠다)
이처럼 직접 반복문을 통해서 매번 계산을 해주는 방식을 이용하면, 평균적으로 약 0.08초 ~ 0.1초 정도마다 API를 호출하게 된다.
다만, 이 빈도는 컴퓨터의 성능이나 네트워크 환경에 따라서 꽤 차이가 많이 나는 것 같다. 노트북에서 와이파이를 이용하여 실행했을 땐 평균적으로 0.4~0.5초 정도마다 API를 호출했다. 그래서 굳이 time.sleep을 걸어줄 필요가 없었는데, 데스크톱에서 실행한 경우 빠른 주기로 API를 호출해서, 0.5초마다 for문을 실행하게 하여 과도한 호출을 막아주었다.
2. RSI 지표 이용하여 매매 기능 연동
이제 이 RSI 지표를 이용하여 여러 암호화폐에 대해 동시에 매매할 수 있도록 해보자.
우선, RSI를 이용한 나의 매매 전략은 다음과 같다.
1. 매수 : RSI 값이 28 이하를 찍고 다시 33 이상이 되었을 때
2. 매도 : RSI 값이 70 이상을 찍었을 때
따라서, 각 암호화폐별로 RSI값이 어떤 상태였는지를 보관하기 위해서 아래와 같은 리스트를 자동매매 수익창출의 진리 만들어 준다.
lower28은 이전에 28 이하를 찍었는지, higher70은 70 이상을 찍었는지를 담고 있는 리스트이다.
그다음 매매 코드는 다음과 같이 구현된다.
RSI가 28 이하가 된다면 lower28을 true로 바꿔준다.
만약 lower28[i]가 true이고, 현재 RSI값이 33 이상이라면, 매수 조건을 만족한 경우이므로 매수를 진행한다.
그리고 매도는 RSI값이 70 이상이 되었을 때 한번 매도를 한다면, 이후에는 RSI가 적어도 60까지는 내려갔다가 다시 올라오는 경우에 매도하는 방식으로 설정하였다.
매매 함수 코드는 아래와 같다. 현재 보유 중인 원화 또는 보유 중인 암호화폐의 수량에 따라서 차등적으로 매매하도록 설정하였다.
이는 현재 보유 중인 총 자산 또는 사용자의 매매 전략에 따라 임의로 설정할 수 있는 부분이고, 이익 실현에 크게 영향을 줄 수 있는 부분이다.
따라서 각자 매매 전략에 따라서 잘 설정하면 될 것이다.
매매는 현재 RSI값에 따라 실시간으로 진행되어야 하므로 시장가 매매를 이용한다.
기본적으로 보유 중인 원화의 20%씩 매수하도록 하되, 보유 중인 원화가 많지 않은 경우에는 최소 어느 정도는 매매할 수 있도록 비율을 점점 높여간다.
매도 역시 마찬가지이다. 해당 암호화폐의 자산을 화폐 시가*화폐 수량으로 구한 다음, 매수와 동일하게 차등적으로 비율을 매겨 매도를 진행한다.
이제 자동매매 기능은 완성이 되었으므로, 잘 돌아가는지 테스트할 일만 남았다. 다만 그전에, 현재 매매 전략이 유효한지를 판단하기 위해서 매매한 경우 이를 기록할 필요가 있다.
따라서, 다음 글에서는 파이썬을 이용하여 엑셀에 실시간으로 저장하는 기능을 알아볼 예정이다.
PC로 보시는 것을 권장합니다.
피드백은 언제나 환영입니다. 댓글로 달아주세요 ^-^
'[Toy Project] 자동매매' 카테고리의 다른 글
[Toy Project] 자동매매 프로그램 만들기 - 7. 매매 정보 엑셀에 기록하기 (6) | 2021.05.29 |
---|---|
[Toy Project] 자동매매 프로그램 만들기 - 6. openpyxl 모듈 알아보기 (0) | 2021.05.26 |
[Toy Project] 자동매매 프로그램 만들기 - 5. RSI 지표 이용하여 매매하기 (16) | 2021.05.22 |
[Toy Project] 자동매매 프로그램 만들기 - 4. RSI 지표 계산하기 (6) | 2021.05.17 |
[Toy Project] 자동매매 프로그램 만들기 - 3. pyupbit 모듈 알아보기 (3) | 2021.05.13 |
[Toy Project] 자동매매 프로그램 만들기 - 2. 업비트 API 가이드 (4) | 2021.05.13 |
'[Toy Project] 자동매매' Related Articles
익명 2021.05.28 11:47 댓글주소 수정/삭제 댓글쓰기
익명 2021.05.28 12:18 댓글주소 수정/삭제
익명 2021.05.28 13:01 댓글주소 수정/삭제 댓글쓰기
lotto 2021.06.06 16:44 댓글주소 수정/삭제 댓글쓰기
It failed JSONDecodeError
TypeError
Traceback (most recent call last):
File "/Users/kim/python/test/test_v1.py", line 79, in
now_rsi = rsi(data, 14).iloc[-1]
File "/Users/kim/python/test/test_v1.py", line 18, in rsi
ohlc["close"] = ohlc["close"]
TypeError: 'NoneType' object is not subscriptable
위에서 자동매매 수익창출의 진리 처리 할 수 있는 방법이 있을까요?
Rebro 2021.06.07 20:03 신고 댓글주소 수정/삭제
익명 2021.06.30 11:10 댓글주소 수정/삭제 댓글쓰기
익명 2021.07.01 18:04 댓글주소 수정/삭제
웨이 2021.07.15 21:03 댓글주소 수정/삭제 댓글쓰기
RSI 값이 28 이하를 찍고 다시 33 이상이 되었을 때 매수 되는데 횡보구간에서는 계속 매수를 하는데 한번 매수한 것은 패스할려면 어떻게 해야 하나요?
Rebro 2021.07.15 21:06 신고 댓글주소 수정/삭제
저같은 경우엔, 매수 후 적어도 RSI가 45이상을 찍고나서 다시 매수할 수 있도록 리스트를 하나 더 선언하였습니다.
각자 매매 기준에 따라 다를 것 같네요!
웨이 2021.07.15 22:00 댓글주소 수정/삭제 댓글쓰기
RSI 45까지 가기전에 여러번 매수해 버리던데요.
그래서 봇 중지 시켰습니다. 이 부분 수정해서 돌려 볼려구요
Rebro 2021.07.15 22:04 신고 댓글주소 수정/삭제
제가 코드를 못봐서 말씀드리긴 어렵네요
사실 매매기준 부분은 각자 기준이 정말 다양해서 이 글은 참고로만 이용하시고 직접 구현하시는게 좋습니다
웨이 2021.07.17 20:48 댓글주소 수정/삭제 댓글쓰기
감사합니다.
저는 그냥 이부분은 time.sleep 으로 처리 했습니다.
웨이 2021.07.17 20:48 댓글주소 수정/삭제 댓글쓰기
그리고 자동매매 수익창출의 진리 지금 코드에서 지정가 매수 코드 짤려고 하는데 잘 안되네요. (아직 실력이 부족해서~)
혹시 지정가 매수 코드 도움 받을 수 있을까요?
Rebro 2021.07.17 22:05 신고 댓글주소 수정/삭제
개인 프로젝트용이라 제가 따로 도와드리진 않습니다. 죄송합니다 ㅠ
감 2021.11.02 14:21 댓글주소 수정/삭제 댓글쓰기
기브쓰 2022.01.26 17:02 댓글주소 수정/삭제 댓글쓰기
buy(coinlist[i]) 이 두가지 소스에서 에러가 나는데 뭐가 잘못되었을까요?
sell(coinlist[i]) buy, sell 정의되지 않았다고 합니다.
0 개 댓글