본문 바로가기
728x90
반응형

가상화폐5

(Python) 업비트 자동 매매 프로그램 만들기(7) - 모듈 작업 Summary 이번 게시물은 파이썬으로 업비트의 API 를 사용해 자동 매매 프로그램 만들기 최종편입니다. 전체 코드를 모듈화 하여 유지 관리가 용이하도록 해보겠습니다. 그러고보니 지난 게시물을 작성한 뒤 거의 4개월 정도가 지났네요.. 제 실수로 저장된 대부분의 스크립트, 파이썬 코드 등이 날아가 버렸습니다. 하하하... 제 멘탈도 같이 말이죠. 그래서 다른 스크립트들 복구하는게 급했기 때문에 조금 오래 걸렸던 거 같습니다. 모듈화 작업이란? 지금까지의 기억을 되짚어 보시면 업비트 API를 사용하기 위한 환경설정, 정보를 조회하는 방법, 주문을 시도하는 방법, 거래 타이밍을 잡는 방법, 로그를 출력하는 방법까지 크게 5단계에 걸친 포스팅이었습니다. 이러한 내용을 토대로 전체 코드를 모듈화하도록 하겠습니.. 2024. 3. 14.
(Python) 업비트 자동 매매 프로그램 만들기(6) - 로그 출력 Summary 이번 게시물에서는 파이썬의 logging 모듈의 기본적인 사용법과 주요 기능을 살펴보겠습니다. 파이썬에서 로그를 출력하고 관리하는 것은 어플리케이션 개발의 핵심 요소 중 하나입니다. logging 모듈은 파이썬 내장된 기능으로 로깅 기능을 쉽게 사용할 수 있게 해줍니다. 이를 활용한 임의의 'log()' 기능과 'Decorator' 기능도 구현해 보겠습니다. 1) 기본 로깅 시작하기 필요한 모듈 import import os import logging from logging import handlers from datetime import datetime - os : 파일 경로를 조작하거나 환경 변수를 접근하는 등의 운영체제와 관련된 기능을 제공합니다. - logging : 파이썬의 기본 .. 2023. 11. 9.
(Python) 업비트 자동 매매 프로그램 만들기(5) - 전략 구현 Summary 이번 게시물에서는 인기 있는 기술 분석 도구인 볼린져 밴드 전략을 이용해서 매수/매도 시점을 확인하는 방법을 알아보겠습니다. 그런데 유의해야 할 사항은 아래 내용이 간단하게 구현한 것이지, 절대 전문적이지 않습니다. 볼린져 밴드 자체도 훌륭한 보조 지표로써 활용할 수 있지만 단순히 해당 전략만으로 매매를 진행하는 것을 아주 위험하오니 "이렇게 흘러가는 구나" 하는 코드의 흐름을 익히고 자신만의 전략을 구현하는 것은 조금 더 노력이 필요합니다. 1) 볼린져 밴드(Bollinger band) 전략이란? 볼린져 밴드는 세 개의 선을 그리는 전략 1) 중심 밴드 (Middle Band) : 주가의 단순 이동평균선이며, 20일 이동 평균을 사용 2) 상단 밴드 (Upper Band) : 일반적으로 .. 2023. 8. 28.
(Python) 업비트 자동 매매 프로그램 만들기(4) - 중간 점검 Summary 이번 게시물에서는 지난 게시물에서 작성한 코드들을 하나로 모아 보도록 하겠습니다. 그전에 각 기능들을 함수로 구현했을 때 호출 실패시 대응 방법을 먼저 추가해보겠습니다. 1) fetch_data 함수 구현 fetch_data 함수로 안정적으로 기능들을 호출하도록 구현 def fetch_data(fetch_func, max_retries=20, delay=0.5): for i in range(max_retries): res = fetch_func() # fetch_func() 함수를 호출하여 데이터 if res is not None: # 가져온 데이터가 None이 아닌 경우 루프를 종료 return res time.sleep(delay) # 데이터를 가져오지 못한 경우 0.5초 동안 대기 r.. 2023. 8. 20.
728x90
반응형