(실험) 코인 자동거래 (2) :: 텔레그램 통합, 이동평균 전략 수정, 서버 구축

안녕하세요 투자와 코딩 전문 몽짱입니다.

(실험) 코인 자동거래 :: 1차 테스트 부정/조건부 강화 필수 안녕하세요 투자와 코딩을 하는 얼간이입니다~! 지난번에 주식 자동매매 프로그램 개발을 시도했는데 결과가… blog.naver.com

지난번 자동 코인 거래 결과에 이어, 제가 변경한 사항을 하나씩 적어보겠습니다. 함수와 반환 알고리즘을 점차 개선해 나가고 있는데, 열심히 만든 만큼 좋은 수익을 드릴 수 있기를 바랍니다. 이동평균 전략 조건식 강화

알고리즘 수정 내용 (3분바 기준) ① 5일 이내에 거래량(일일바)이 전일 대비 2배 이상 증가하였는가? ② (추가) 20이평선이 최근 5일 연속 상승세를 보였나요? ③ 5선이 20선을 돌파하는 순간인가? 원래 존재하지 않았던 조건 ②가 포함되었습니다. 상승 추세를 이용한 알고리즘으로 5선과 20선 모두 상승 추세에 있으며 일별 5일 이내 거래량이 전일 대비 2배 이상 증가합니다. 그만큼 주식이 활발할 때 일평균 5이동평균이 20이동평균을 초과하는 골든크로스가 발생하면 매수세가 일시적으로 상승한다는 점이 포인트이다.

매매기록(가장 오른쪽 열은 수익)

최소 5일은 실행해보고 결과를 다시 봐야 할 것 같은데, 이 글을 쓰는 시점에서 이틀 동안 15건의 거래와 11건의 반품이 발생했습니다(승률 약 73%). 목표수익률과 손절매는 ±1% 이내로 설정되어 있어서 간단히 합산했습니다. (+11%) + (-4%) = +7% 수익이 발생했다고 계산할 수 있습니다. 이대로면 제발… 추가적으로 이웃분이 RSI 매수/매도 조건을 추천해주셨는데, 다음 v3.0에 추가할 예정입니다. ■ 텔레그램 통합

매수/매도 원격 확인을 위한 텔레그램 연동 서버가 살아 있는지 확인하는데도 유용합니다. v2.0에 가장 필요하고 포함하고 싶었던 기능입니다. 지금까지는 업비트 알림을 통해 자동 매수/매도 확인이 가능했습니다. 하지만 이에 대한 문제는 수익률(%) 확인과 현재 프로그램이 잘 돌아가고 있는지 실시간으로 확인할 수 없다는 점이었습니다. 오류가…) 하지만 위와 같이 텔레그램과 연동을 하면 원격으로 실시간 서버 상태를 확인할 수 있었습니다. 이제 확인할 수 있습니다. (참고로 Python 3.8부터 텔레그램 모듈을 사용하려면 비동기식 async로 구현해야 합니다.)

좀 더 명확하게 볼 수 있도록 다듬어 편집… 이번 구현으로 매수, 매도 결과가 나올 때마다 거래량과 수익률 등을 실시간으로 알림을 받을 수 있고, 이를 확인할 수 있습니다. 거래금액별 상위 10개 종목을 검색할 때마다 주기적으로 알림을 표시해 서버가 살아있습니다. 다음 버전에서는 인라인 키보드가 출시될 예정입니다. 원격으로 프로그램 기능을 실행할 수 있도록 추가하려고 합니다. ■ Ubuntu 버전으로 Raspberry Pi를 다시 설치합니다.

저전력 Raspberry Pi를 서버로 사용하는 경우 Raspbian OS는 최신 버전의 Python으로 업그레이드할 수 없습니다. 최신 Python 업그레이드를 실험하기 위해 Ubuntu(20.04)를 설치하고 노트북을 24시간 x 1주 동안 켜 두었습니다. 좋지 않아요. 그래서 집에서 놀고 있던 라즈베리파이를 이용해서 파이썬 코드를 구현해 보기로 했습니다. 라즈베리파이는 저전력(5W) 서버로 CPU 성능이 높지는 않지만, 파이썬 코드를 24시간 실행시키기에 이보다 더 좋은 하드웨어는 없습니다. 그런데 Raspbian OS 최신 버전의 Python을 설치하는 데 어려움이 있었고 pyupbit 모듈과 종속성 모듈이 제대로 작동하지 않아서 Ubuntu 버전 20.04로 업그레이드했습니다.

Raspberry Pi 4 Ubuntu 20.04의 원격 데스크톱에 연결하기: Clian 제목: Raspberry Pi 4 Ubuntu 20.04의 원격 데스크톱에 연결하기 #raspberrypi #ubuntu20.04 (시작) 어떤 이유로 최신 64비트 버전의 Ubuntu를 설치합니다. 내 파이. 저는 Windows만 사용해왔기 때문에 원격 데스크톱을 사용하는 방법을 여러 가지 시도했지만 모두 실패했습니다. 이번 실패는 꽤 역사가 있는 것 같습니다(?). 포럼에도 긴 글이 있습니다. GitHam에서도 많은 시도가 있습니다. 나중에 이러한 시도를 요약하고 싶지만 간단히 말해서 가능한 모든 것을 시도했습니다. VNC로 많은 시도를 해보았지만 모두 실패했습니다. 결국 rdp로 되더군요… www.clien.net 우분투를 처음 설치하면 원격 데스크톱(xrdp)이 설정되지 않은 상태인데, 구글링을 해보니 위의 Clien에 올라온 글이 명확해졌습니다. 그렇게 설정하고 mstsc에 접속하면 GUI 환경에서 Ubuntu를 볼 수 있습니다. 그리고 그림 24와 같이 타임 프로그램을 실행하지만 전력 소모가 거의 없는 서버를 갖게 됩니다(기껏해야 스마트폰 충전 정도). ■ 포트 포워딩을 통한 고정 IP 및 원격 액세스 설정. pyupbit 모듈과 API를 사용하려면 고정 IP가 필요합니다. 기본으로 사용할 경우 유동IP가 제공됩니다. 계속해서 변화하고 있습니다. DHCP 설정에서 서버(Raspberry Pi) IP를 수정하고, DDNS 설정에서 외부 연결 링크와 포트를 설정하세요. 특히 매수/매도 주문의 경우 업비트에서 제공하는 API를 사용하면 IP 정보를 사용할 수 있지만 라우터가 기본으로 설정되어 있습니다. 이를 사용하면 DHCP 설정으로 인해 서버가 다시 시작될 때 IP 주소가 변경됩니다. 따라서, DHCP 설정에서 라즈베리파이를 특정 IP로 고정(예약)하고 해당 IP를 업비트 API 비고란에 등록하시면 특별한 일이 없는 한 이 설정은 사용되지 않습니다. 더 이상 만질 필요가 없습니다. 마지막으로 DDNS를 설정하면 외부 인터넷과 스마트폰에서 공유기 내부의 라즈베리파이에 원격으로 접속할 수 있게 됩니다. (설정ID).tplinkdns.com:(포트번호) / TP-Link (설정ID).iptime.org:(포트번호) / IPtime 이렇게 DNS 설정된 링크를 받을 수 있으며, 필요하다면 이를 통해 스마트폰, 라즈베리에서 파이 서버에 접속하실 수 있습니다. ■ 만들고 싶은 전략 & 기능 (공유) (확고) F=P-(1-P)/B (feat. 의 돈 버는 이야기) 20세기 3대 천재 중 한 명인 클로드 섀넌(Mer) 균형투자의 중요성(투자와 현금의 50/50 균형 유지) F = P – (1 – P) / B – F는 1- 시간… blog.naver.com Claude Shannon의 시드머니 관리 비율 공식 – 현재 알고리즘의 승률이 확실할 때 공식을 적용합니다. 연복리 60% 이상되는 업비트 자동 트레이딩 몬스터 전략! – 구간 분할 장기 투자 전략! 박수부터 시작해 보겠습니다. 유레카! 드디어 몬스터 전략을 완성했어요! 백테스팅 결과를 바로 보시죠… blog.naver.com 세그먼트 분할 매매 방식 – 이동가격대를 10개로 나누어 분할 매매 – 유료로 파는 전략인 것 같은데 제가 직접 만들어야 합니다. 연복리가 200%에 가까운 비트코인 ​​자동거래 이동평균 조합 전략! – 1천만원이 5년만에 22억이 됐다?? 말이 돼?? 단순한 것이 가장 좋습니다. 어떤 분야에나 적용할 수 있는 표현이라는 말이 있습니다. 오늘 소개할 전략은… blog.naver.com 이동평균 전략 (장기투자용) – 해외 거래소의 새로운 설정 및 운영 – 비트코인과 이더리움을 타겟으로 – 현재 가격이 5/10/20 이동평균보다 클 때 매수 (일반 배열) – 현재가 < 5/10/20 이동평균 시 매도 (역배열) 라즈베리파이 4개 설정 (6) - 상태 모니터링 (ez Server Monitor) 라즈베리파이 사용시 디스크 공간은 얼마나 사용됐나요? CPU 또는 메모리 사용량은 얼마입니까? 최근 로그인한 사용자는 누구인지 등이 궁금하다. 특히 라즈베리파이4의 경우 전작보다 발열이 많아 CPU 온도 확인은 필수다. 이렇게 라즈베리파이 시스템의 상태를 모니터링하고 싶다면 어떻게 해야 하나요? 물론 “top”, “vcgencmd Measure_temp” 등의 명령어로 시스템 상태를 확인할 수 있습니다. 명령어 사용법 top 시스템 및 프로세스 상태 확인 vcgencmd Measure_temp CP… www.codesarang.com 라즈베리파이 하드웨어 모니터링 설정 – 또는 텔레그램으로 CPU 사용량 및 온도 메시지 보내기 주가 강세 시 목표 수익률 임시 변경 – (조건) 묶음매매 이전보다 거래량이 급격하게 증가 – (조건) Bid/Ask 물량 배열 이 역피라미드 형태 – (조건) 입찰가가 가장 앞에 있고 거래량이 많고 방어력이 있을 때 Random Forest 적용 효과를 확인 높음 – 거래량, MA5, MA 반전 정보 등을 입력으로 사용 – 다음 가치 예측 시 적중률 시뮬레이션 오늘의 요약은 여기까지입니다. 끝!