프로젝트/[AI] 자동매매

[자동매매] 23-07-02 모델 변경, 학습 방법 변경

TaeGyeong Lee 2023. 7. 2. 19:42

학기 수업에서 진행한 자동매매 봇에 대한 업데이트 기록입니다.

 

기존 모델 개선

colab pro 요금제에서 제공하는 메모리를 초과(26GB), 학습에 사용하는 모델의 크기에 비해 비정상적인 크기로 q_table 수정, state의 갯수를 4개로 줄이고 bin_size를 8개에서 32개로 늘려(이산화 크기) 25+GB의 모델 크기를 1.2GB 이하로 축소하였습니다.

이전 6분간의 시세 차이 대신 이전 120분간의 시세의 통계값, 120분간의 거래량으로 q_table의 state를 변경(평균값, 최대값 및 최소값의 차, 중간값 등)하였습니다.

 

테스트 시 손실 한도 적용

일종의 서킷 브레이커로 테스트 데이터를 통해 자동매매를 진행할 때 누적 손해가 일정치 이상으로 발생할 경우 해당 테스트를 중단하도록 설정하였습니다. 실전에서는 거래를 중단하여 이후 엔지니어가 모델 유지 보수 후 수동적으로 매매를 재개하도록 할 지, 아니면 다른 로직을 적용할 지 고민 중에 있습니다.

 

코드 가독성 개선

제대로 사용하지 않은 코드를 지우고 변수명을 통일, 각 함수를 모듈화하였습니다.

 

Colab PRO 구독

무료 요금제보다 더 많은 메모리 사용 및 최대 24시간 백그라운드 실행 (다시 찾아보니 PRO 플러스 요금제만 가능하네요,,)을 위해 유료요금제 PRO를 구독하였습니다.

 

계획 : 실전 테스트

실시간 분당 데이터를 통해 실전 테스트를 진행해야 합니다. 가장 싼 가비아 클라우드의 가상서버 비용이 월 5천원이라 이를 이용하려 했으나 모델 크기가 1기가는 넘기에,, 2기가 메모리를 가진 가진 가상 서버를 활용해야 할 듯 합니다. 비용을 월 3.3만원 정도,...

https://cloud.gabia.com/service/detail?tab=vpc