[Python] Synology NAS에서 BitMEX 거래데이터 수집하기

  1. NAS에 Python3이 설치 되어 있지 않다면 먼저 아래와 같이 Python3 패키지를 먼저 설치 한다.

2. NAS 콘솔에 접속하여 pip 을 설치 한다.
pip을 설치 하기 위해 콘솔에서 root로 작업한다.

$ sudo -i 
$ wget https://bootstrap.pypa.io/get-pip.py
$ python3 get-pip.py
$ exit

3. BitMEX 에서 데이터를 가져 오기 위한 program 에서 wget package를 사용하기 때문에 설치 해준다.
그 외 필요한 package가 더 있으면 root 계정에서 “python3 -m pip ‘package명’ “으로 설치 한다.

$ sudo -i
$ python3 -m pip install request
$ python3 -m pip install wget
$ exit

4. 데이터를 수집하고 외부에서 확인 하고 접근하기 위해 공유폴더를 만든다.
아래 예에서는 “data” 라는 폴더를 만들고 BitMEX 거래데이터를 수집하기 위한 폴더 “BitMEX”를 생성하였다.

5. 만들어진 데이터 수집 폴더(예, BitMEX)에 아래의 첨부 파일을 업로드 한다. (파일명의 링크를 클릭하면됨)
● 데이터 수집 프로그램 mwget2.py :
– 2014.11.22 일 부터 현재일 – 1 까지의 거래 데이터를 내려 받는다. 이미 받은 파일은 건너 뛴다. 동시에 5개씩 받을 수 있게 했다.
소스에서 “start_dt = dt.date(2014, 11, 22)” 를 조정하여 받는 시작일자를 조정 할 수도 있다.
worker_cnt = 5 # worker process counts 의 숫자를 바꿔서 동시처리 프로세스를 조정 할 수 있다.
● 실행 script s.sh : NAS “제어판 > 작업 스케줄러”에서 호출할 스크립트
– s.sh 내용
예) /bin/nohup /usr/local/bin/python3 /volume1/data/BitMEX/mwget2.py > /volume1/data/BitMEX/down.log &
스크립트 내용은 환경에 맞게 수정 하여 사용하면된다.

6. “제어판 > 작업 스케줄러” 에서 “생성 > 예약된작업 > 사용자 정의 스크립트” 를 클릭하여 새로운 스케쥴을 만든다.
아래 그림을 보고 참조 하여 만들면 된다.
예시) 작업명은 bitmex_data 이며 사용자는 본인의 계정 또는 root를 사용 하고 스케쥴러는 매일 새벽 2시 30분에 실행된다.
사용자 스크립트 s.sh는 “bash ‘s.sh의 절대경로'” 를 사용하면된다.

7. 스케쥴러에서 사용자정의 스크립트를 바로 실행 하려면 해당 스케쥴(작업)에서 오른쪽 마우스를 누르면 아래와 같이 나오는데 “실행”을 선택 하면된다. 정상 실행이 되면 파일을 받는 것을 알 수 있다. 기본 로그 파일은 down.log

데이터 파일이 받아 지지 않았다면 실행 하는 사용자의 권한이 부족 한 경우이다. 즉 폴더에 파일을 쓸 수 없어 발생하는 문제일 가능성이 높다.

“[Python] Synology NAS에서 BitMEX 거래데이터 수집하기”의 1개의 댓글

  1. 핑백: [Python] Synology NAS에서 바이낸스(Binance) 거래데이터 수집하기 – Julia ?

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다