비트코인 가상화폐 자동매매 설계
이 글에는 코드는
나오지 않습니다
이번 글은 자동매매 프로그램
전반의 큰그림에 대한 것입니다.
비트코인 자동매매를 생각하고
책을 빌려본 후
해보겠다고 하다가
결국 실패한 적이있습니다.
블로그를 뒤져보니 어느덧 1년 반이되었습니다.
시간 참 빠르네요.
이러지 않으려고 하는데 항상 후회합니다
2021년에 시도했다가 실패한 것은 나름 이유가 있었습니다.
바로 컴퓨터를 계속 켜놓아야한다는것.
내가 원하는 자동매매가 아니라는 것.
알량한 핑계일뿐이었습니다.
누구나 할수있다 비트코인 자동매매
(2019년 출판된 책으로, 저 책의 저자중 한분이
지금은 개정판을 위키독스로 내신 듯 합니다.
이 책에 나왔던 방법이
컴퓨터를 24시간 켜놓아야하는 것이라면,
그래서 그게 문제라서 못하겠다면
그것을 해결할 수 있는 방법을 찾아보았으면 될텐데.
그냥 핑계일 뿐이었지요.
그때 조금만 더 열심히 찾아보았다면
이미 2021년 당시 해결법을 찾아냈을텐데요.
더이상 미룰 수 없다
2022년 봄, 비현코 저자의 돈버는 파이썬코딩 을
빌려읽고,
그 책의 마지막 프로젝트가 비트코인 자동매매인 것,
심지어 컴퓨터를 24시간 켜놓지 않아도되는
방법이라는 것을 발견하고는
이제는 미룰 수 없다.
달라붙어서 해보자 라는 마음을 먹었습니다.
지나고보니 그냥 바로 달라붙어서 했으면
3일이면 할 수 있었던건데
게으름과,
막막함과 두려움에 의한 미뤄두기로 인해
한 2주 걸린듯 합니다.
그래서 결론부터 말하면,
지금 이 글을 쓰는 시간에도
프로그램은 돌아가고 있습니다.
다만, 짜고보니까 눈에 보이는 문제점들이 있습니다.
짜서 돌린다고
무조건 돈을 벌 수 있는건 당연히 아니고
돈을 벌기위해서는 코드를 짜는것 이상으로
훨씬 더 많은 고민이 필요합니다.
돈벌기 쉽지 않죠.
다만 여담으로,
작년에 덤벼들어서 바로 짜지 않고
게으름을 부리다가 지금 짠 것이
다행인 것 같다는 생각도 듭니다.
왜냐면 올해 초에 코인시장 폭망했잖아요?
괜히 프로그램 짜서 돌리다가는
돈이 녹아내렸을뿐인데,
일단 한참 녹아내린 후 약간 반등하는시점에
지금부터 프로그램을 돌리면,
작년 중반부터 프로그램 돌린것보다
성과가 낫지않을까,
나의 게으름에게 감사를 하는 마음이 들기도 합니다.
바이낸스 거래소 수수료 20% 할인 가입 바로가기
매매 전략
비트코인 자동매매프로그램,
가상화폐 자동매매 프로그램을 짜려면
코드를 짤 줄 안다고 컴퓨터를 할줄안다고
다 하는게 아닙니다.
짜보니까,
그보다 중요한 것이 바로
매매 아이디어
에 대한 지식이 있어야 합니다.
즉 자동매매 프로그램을 짜려면
아래 절차대로 해야하고,
각 단계에 대한 지식이
전부 다 있어야합니다.
1. 매매 아이디어 수립
– 어떤 신호에 얼마나 살 것이며
– 어떤 신호에 얼마나 팔 것인가(손절, 익절)
2. 1번을 도식화
– 예를 들면 이렇게 적어보는 것입니다
(1) 시총 /거래량 기준으로 종목을 모니터링하며
(2) 그 중 현재가격이 과거 20일간의 평균가격을 상회하는 종목 출현시
(3) 보유 자금의 10%를 시장가 매수하고
(4) 매수 후 ??% 떨어지면 손절하고
(5) xx% 올랐을때 절반을 익절한다
3. 2번을 코드로 구현
이런게 필요하죠.
문돌이들이나 많은 일반인들 입장에서는
1,2번은 해보기라도 했지만
3번은 워낙에 생소하니 더 어려워보이는데
사실 어찌보면 1,2번이 가장 어렵지
3번은 오히려 쉽습니다.
왜냐면 3번은 답이 있는데,
1,2번은 답이없는 문제니까요.
비트코인 자동매매 라고 구글,네이버,유튜브에 치면
정말 수십가지의 사례들이 나옵니다.
이미 많은 사람들이 하고 있습니다.
코드를 제공하는 사람도 많습니다.
하지만 그 코드들이 돈을 과연 잘벌어준다고
보장할 수 있을까요?
코드는 어디까지나,
투입자금 관리,
비중조절,
익/손절선 설정
등 매매자의 아이디어를
“구현”한 것일 뿐이고
그 아이디어를 감정에 흔들리지 않게 집행하며
9시부터 3시 30분이라는 주식시장과 달리
24시간 돌아가는 코인시장에서
잠안자고 모니터링해주는 역할일 뿐입니다.
물론 감정에 흔들리지 않고
24시간 시장을 모니터링하는것도 중요하나,
언제 사서 언제 팔지 아이디어 자체가 잘못됐다면
백날 열심히 해봤자 빨리 망할뿐이겠죠.
다만 저와같은 문돌이, 비 전공자 일반인들입장에선
일단 자동매매를 해서 컴퓨터로 돌린다,라는 것이
굉장한 신세계이자 신기술처럼 보이고
그렇기때문에
매매 아이디어는 뒤로 제쳐놓고
일단 코드를 짜서 돌리는것에 천착하게 됩니다.
그리고 돌아가면
됐어!! 난 이제 부자가 될 수 있어!!
라는 생각을 하게되는데
냉정히 생각해보면 그게 아닙니다.
코드가 돌아간다는건
한 발짝을 이제막 내딛었다는것뿐,
그 뒤에 수정과 수정을 거듭하며
정교함을 더해야 돈을 벌 수 있습니다.
프로젝트 개요
매매 아이디어 수립
코드 구현
클라우드 서버에 올리기
1. 매매 아이디어 수립
저는 일단 코드를 짜서 돌리는 것이 목표인지라
매매 아이디어는 다른 사람들의 아이디어,
제가 참고한 비현코 저자의 책과 인터넷 유튜브를
참고했습니다.
왜냐면 일단 코드를 돌리는게 문제다보니
다른 사람들의 코드를 베껴올 수 밖에 없었고
일단 돌린 다음에,
코드 내부의 조건들을 고치는게 좋겠다고
생각했기 때문입니다.
그정도는 저도 할 수 있을 것 같았구요.
그렇게 해서 차용한 매매 아이디어는 두개입니다.
하나는 비현코 저자의 아이디어로
-
-과거 200개 time 단위(1분봉, 30분봉 등)내
가장 많이 하락한 종목을 골라서, 해당 종목을 매수.
-
상승시 2% 먹고 바로 익절
-
투입 자금은 보유 현금의 10%
이며
다른 하나는 위에서 이야기한
파이썬을 이용한 비트코인자동매매에 나오는
래리윌리엄스의 변동성돌파전략입니다.
2. 코드 구현
위 매매 아이디어를 이용하기 위해서
코드를 짜야합니다.
언어는 파이썬을 사용했고,
거래소는 업비트를 사용했습니다.
비현코 저자의 책은 업비트를 사용해서
그걸 따라가기 편했고,
비트코인 자동매매 책은 빗썸을 사용했는데
나중에 유튜버 조코딩님의 영상을 보고
빗썸을 업비트로 변경하는 방법을 배웠습니다.
3. 클라우드에 올리기
어찌보면 이 부분이 이번 프로젝트의
큰 핵심이라고 볼수 있습니다.
작년에 포기했다가 올해는 끝까지 해봐야겠다고
생각하게 된 점이기도 하구요.
2번에서 짠 코드를 클라우드에 올려서
내 컴퓨터를 끄더라도 24시간 돌아가게 해놨습니다.
다만 참고한 자료들에서 저 나름대로
약간의 변형을 둔 점이 있습니다.
비현코 저자는 AWS서버에 올려서 하게 했고,
비트코인자동매매 책(위키독스)는
클라우드이야기는 없어서,
조코딩님의 영상에서는 위키독스 책의 내용을
AWS에 올려서 돌리는 방법을 설명하고 있습니다.
다만 찾다보니,
AWS는 1년간은 무료인데
1년 뒤에는 요금이 나올 수도 있다더군요.
뭐 처음에는 돌리는게 장땡이니까
1년뒤의 일따위는 고려하지 않을 수 있는데,
찾다보니 AWS와는 달리
오라클은 평생 무료라는 이야기를 보았습니다.
이왕 만들거면 처음부터,
나중에 바꿀 일 없게 만드는게 좋지않겠습니까?
그래서 저는 책이나 영상과는달리
오라클 서버에 올렸습니다.
바이낸스 거래소 수수료 20% 할인 가입 바로가기
참고자료들
이 일을 하면서 참고한 내용들은 아래와 같습니다
-
IT비전공자를 위한 돈 버는 파이썬 코딩 : 비현코
-
업비트 API발급,
-
환경설정,
-
AWS가입 및 환경설정
등 전반적인 흐름에 대해서 참고가 많이 됐습니다.
2. 파이썬을 이용한 비트코인 자동매매
이 책은 최근 인기 있는 프로그래밍 언어인 파이썬을 사용하여 국내 3대 거래소(코빗, 빗썸, 업비트) 및 국외 거래소(바이넨스)에서 비트코인을 자동매매하는 프로그램을 개발하 …
wikidocs.net
이 책은 작년에 봤던 책인데
역설적으로,
코딩보다는 매매 전략에 대해서 참고를 했습니다.
3. 유튜버 조코딩
이 영상에서는
-
저 위키독스의 책을 풀어서 설명한 부분
-
특히 백테스팅을 통한 전략검증
-
그리고 클라우드 서버 설정
에 대해서 참고가 많이 됐습니다.
다만 AWS에 대해서 설명을 하고 있었습니다.
4. 오라클 클라우드 서버 설정 및 이용
1. 업비트로 4단계 인증 후 open API 받기 2. 파이썬 3.89 설치, Visual studio code 설치 3. 코드 짜기 4. 클라우드에 올려 24시간 실행하기. 5. 구경하기 5-1편을 보고 오지 않으셨다면 우선 5-1편을 보고 오시..
young0823.tistory.com
이 블로그가 참으로 많은 도움이 됐습니다.
오라클 서버 설정 및 거기 올리기에 대해서는
전부 다 이 블로그의 도움을 받았습니다.
다음 글부터는
그래서 어떤 일을 했는지,
차근차근 써보도록 하겠습니다.
컴퓨터가지고 하는 일에서는
환경설정이 절반이라는 이야기가 있는데
진짜, 환경설정이 가장 어려웠습니다.
코드를 짜는것보다 환경설정이 더어렵습니다.
어찌어찌 하긴 했는데
빠삭하게 알고 한게아니라 더듬더듬 더듬어가며
한발짝씩 나아간거라
중간에 빠지는 점들이 있을 수 있는데
그건 저 참고자료들이 보완해줄 것이라 생각합니다.
특히 마지막블로그는
프로젝트 전반에 대해서 매우 깔끔하게
순서를 잘매겨서 정리해놨더군요.