NeuroWhAI의 잡블로그

Rust로 디스코드 주식 봇 만들어 봄 (거래 X) 본문

개발 및 공부

Rust로 디스코드 주식 봇 만들어 봄 (거래 X)

NeuroWhAI 2020. 11. 27. 22:24


github.com/NeuroWhAI/stocking

 

NeuroWhAI/stocking

네이버 증권 기반, 거래 기능은 없는 국내 주식 디스코드 봇. Contribute to NeuroWhAI/stocking development by creating an account on GitHub.

github.com

HTS 기반은 아니고 네이버 금융 사이트 기반이라 국내 시장 조회나 알림 기능만 있습니다.
그래서 거래 기능은 없지만 쉽게 설정할 수 있고 대부분의 OS에서 잘 돌아갈 것으로 예상합니다.
이름은 stocking이라고 지었는데 잘 지었다고 생각했지만 이미 있더군요 ㅋㅋ...

 

사용하시려면 오직 봇 주인 전용이라서 별도 봇 계정(?)과 서버를 두셔야 합니다.
저는 안 쓰는 노트북에서 돌렸었습니다.

처음에 봇 토큰과 메시지를 보낼 채널 아이디 설정이 필요하며 ".env" 파일에 기록하면 됩니다.
형식은 예제 파일을 참고하세요.
그리고 사용에 관련된 자세한 질문은 안 받습니다.
저 혼자 쓰려고 만든거라 참고만 하시고 아무런 책임 안 지니 혼자서 잘 해보세요 ㅎ
(사실 더 좋은 게 널렸고 전 이젠 쓰지도 않습니다. 주식은 맛만 보고 접음 ㅋ...)

 

기능은 뭐 별 거 없는데 단순히 현재 지수나 종목 정보를 조회하거나 관심 목록에 넣어두고 특정 가격에 알람을 설정할 수 있습니다.
이 외에 관심 종목의 등락률이 특정 가변 범위를 넘어서면 알려준다거나 하는 기능도 있습니다.

자세한 기능 소개는 이어서...

우선 위와 같이 관심 종목이나 지수의 장 상태(?)가 바뀌면 알려주는 기능이 있습니다.
그냥 장이 열렸구나 닫혔구나를 알 수 있습니다.

검색은 이렇게 할 수 있고 반응 버튼을 통해 관심 목록에 넣거나 뺄 수 있습니다.
관심 목록은 아래와 같이 조회가 가능하며 중지 반응을 달기 전까지 특정 시간 지속적으로 수정되어 정보를 갱신합니다.

그리고 아래의 이 기능은 설명이 귀찮은데 관심 종목에 한하여 등락을 알려줍니다.
대충 1% 단위에서 1% 범위를 벗어난 등락을 알려준다고 말씀드릴 수 있겠습니다.
일일이 조회하고 가격 알람 설정하는 게 귀찮아서 만든 기능입니다 ㅋㅋ

알람 기능은 아래와 같이 생겼습니다.

알람을 등록하거나 제거할 수 있고 등록된 알람을 모두, 혹은 종목별로 볼 수 있습니다.
정확히 해당 가격일 때 울리는 게 아니고 해당 가격에 도달 혹은 돌파하였을 때 울립니다.
또한 일회성이라 한번 울리면 삭제되고요.

 

기능은 대충 이 정도인데 사실 시간별 시세(가격?) 데이터도 얻고는 있지만 아직 활용을 안 하고 있습니다.
거래량 급등락 알림 기능 정도를 만들어볼까 싶긴 한데... 귀찮음.

 

개발 관점에선 Rust에도 쓸만한 Discord 라이브러리가 있구나 싶었고 다양한 파싱 라이브러리를 써볼 수 있어 좋았습니다.
비교적 최근(?)에 추가된 비동기 문법도 써보구요.
오랜만에 열심히 개발한 것 같아서 뿌듯합니다.



Comments