공부하기싫어

지금까지 자동매매를 돌렸던건 ec2 instance 에서 직접 프로그램을 돌렸다면

이제는 docker image 를 굽고 cicd pipeline 을 적용해서 돌려볼까 한다

 

https://youtu.be/WgXOFtDD6XU

 

https://github.com/youtube-jocoding/pyupbit-autotrade.git

 

GitHub - youtube-jocoding/pyupbit-autotrade: pyupbit 라이브러리를 활용하여 upbit에서 비트코인을 자동매매하

pyupbit 라이브러리를 활용하여 upbit에서 비트코인을 자동매매하는 코드입니다. 조코딩 유튜브 채널에서 자세한 강의 영상을 보실 수 있습니다. - GitHub - youtube-jocoding/pyupbit-autotrade: pyupbit 라이브러

github.com

 

이전에 봤었던 강의에 ai 학습 라이브러리를 적용하고 slack 으로 각종 metrics 를 확인할 예정

 

사용 예정인 서비스들

Docker,  AWS ECR, Github, AWS CodePipeline, slack, AWS Lambda, AWS CloudWatch

 

대충 밑그림만 그려보자면

 

스크립트는 총 3개로 돌아갈 듯 함

- 자동매매, AI 종가 예측, k value 계산

이 중 ai 종가 예측은 한시간에 한번씩, k value 계산은 하루에 한번 실행될 예정으로

각각 lambda 함수 + cloudwatch 로 만들어서 실행시키려고 함

 

개인 prod 인프라 환경 구성이 끝나면 eks 에 올릴 예정이므로

도커 컨테이너 이미지로 구울 예정이고

실행 환경 모두 dockerfile 로 정의 할 예정

 

cicd 환경은 github, aws ecr, aws codepipeline 으로 설정할 예정

 

전체적인 실행 로직은

  • github, aws ecr 의 변경사항을 codepipeline 이 감지해서 eks 클러스터에 반영
  • cloudwatch 에 의해 매 시간 'ai 종가 예측' lambda 함수 실행 - 당일 예상 종가 매개변수에 매 시간마다 반영
  • 기준 시가 지나면 'k value 계산' lambda 함수 실행 - 다음 매매에 사용될 k value 재설정
  • 각 lambda 함수 실행 결과, 매수-매도 결과, health check 를 slack 채널에서 확인

 

2주 정도로 잡고 해보자