외장_하드
외장하드
외장_하드
전체 방문자
오늘
어제
  • 분류 전체보기 (419)
    • 국내 여행 (197)
      • 수도권 (20)
      • 충청도 (17)
      • 강원도 (32)
      • 전라도 (21)
      • 경상도 (50)
      • 제주도 (57)
      • 나들이 (0)
    • 일상 (40)
      • 휴식 (15)
      • 취업 준비 (19)
      • 월간일상 (3)
      • 군생활 (3)
    • 국외 여행 (40)
      • 일주 준비 (4)
      • 중국 (11)
      • 대만 (5)
      • 태국 (20)
    • 취미 (19)
      • 제품 후기 (11)
      • 지식 (8)
    • 자동차 (21)
      • 뉴 그랜저 XG (15)
      • 올 뉴 K3 (5)
    • IT (102)
      • Spring (18)
      • DataBase (11)
      • AWS (22)
      • GIT | github (9)
      • 기타 (23)
      • 머신러닝 | 딥러닝 (8)
      • Tech | Eng (3)
      • Python (2)
      • nodejs (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 스쿠터
  • 스프링
  • 혼자여행
  • aws
  • 여행
  • 추천
  • 가성비
  • 뚜벅이
  • 설치
  • 주차장
  • 푸켓
  • 카페
  • 전라도
  • EC2
  • 후기
  • 부산
  • 제주도
  • 강원도
  • 코스
  • 방법

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
외장_하드

외장하드

[파이썬 #1] 주식자동매매 시뮬레이터 미니 프로젝트 포스팅을 시작하며
IT/Python

[파이썬 #1] 주식자동매매 시뮬레이터 미니 프로젝트 포스팅을 시작하며

2021. 3. 1. 02:40
반응형

근래 한달의 시간 동안 주식 자동매매 프로그램을 만들어봤다. 한달쯤 된건가? 요즘은 퇴근하고 잠이 많아져서 매일 작업한 것은 아니고 어쩔때 한 4~5시간 작업해보고를 반복했다.

​

시작 계기

그간 자동매매에 관심이 생겨서 좀 알아봤는데 찾아보니까, 보통 거래량이 많이 몰리는 종목을 API로 받아서 조건에 맞으면 매수한다거나.. 머 그정도가 다였다. 내 생각에는 이 방식으론 안될거라는 생각이 들었다.

​

나는 종목을 찾아주는 프로그램이 아닌, 한개의 우량주를 하나 정해놓고, 해당 종목이 하루동안 가지는 변동성에서 수익을 보면 되지 않을까? 생각을해서 바로 개발에 착수했다.

​

머 결론부터 말하자면, 이건 아무리 생각해봐도 안될 것 같아서 접었다. 접었다기 보다는. 다른 방식이 나을꺼같아서 다른 방법으로 개발을 해보려고 한다. 머 뼈대까지 다 개발하고 모델만 구현하면 되는거였는데 ㅋㅋㅋ.. 뼈대 개발한게 아깝기도 하고 지금 까지 개발했던 것은 혹시나 필요한 사람도 있을 것 같아서 한번 정리해보려고 적는 포스팅이다 ㅎㅎ

​

파이썬을 선택한 이유

회사에서도 거의 자바만 만지고 있고 GUI 앱에서 주로 쓰는 C계열도 많이 만져봤지만 파이썬을 선택했다. 이런 저런 이유들이 있겠지만 파이썬을 선택한 가장 큰 이유는 대수 처리가 유연하다는 것, 그리고 자료형의 제약이 유연하다는 것, 자동매매쪽으로 정보가 많다는 점. 머 이정도가 있다. 사실 파이썬을 공부해보고 싶은 맘도 있었다 ㅎㅎ, 스크립트 언어라서 머 강력하면 얼마나 강력하겠어! 라고 생각했는데 써보니 기대 이상이어서 놀라웠다 특히.. 어떻게 이런식으로 자료형을 다룰까.. 혹시나하고 쳐서 돌려보면 오류 없이 쌩쌩 돌아가는거 보고 놀랐다.

​

개발 방향

그간 개발해본 결과물이다 ㅋㅋ.. 머 이상태로 끝은 아니고 지금 다른 아이디어가 생겨 그거 구현해보고 괜찮을 경우 이 폼에서 다시 시작할 생각이다. 지금까지 만들어 놓은게 사실 훈련 시뮬레이터라고 생각하면 된다.

​

보니까 키움 API는 모의투자 서버거 실제 운영서버 시간하고 동일하게 돌아간다 ㅋㅋ 즉, 내가 자동매매 모델을 만들고 돌려서 디버깅도 해보고 내 모델을 검증해봐야하는데... 장 시작할때인 9시는 이미 내가 출근해 있는 시간...

​

뭐.. 로그를 남겨서 확인해보는 방법도 있겠지만, 이건 내 성격하고 맞지 않는다... 직접 실시간으로 내가 눈으로 보면서 피드백을 하고싶은데 출근해야한다니!

​

그래서 생각했다. 과거 데이터를 받아서 내가 프로그램에 가상의 시간을 설정해놓고, 가상의 시간을 돌려 실제 운영환경처럼 만들고 그 위에서 모델을 검증하면되는거 아니야!?

​

그 결과물이 바로 위 사진이다. 보면, 트레이닝 인포에 종목 코드를 치고 Create를 하면 해당 주가가 Load 되고, 시작시간과 배속설정을 하고 Start 버튼을 누르면 가상 시간이 돌아가면서 실시간으로 그때의 주가를 찍으며 그래프가 진행된다.

​

이거 다 만들어놓고 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 매매모델을 만들려고 유튜브도 보고, 수십번 저 시뮬레이터를 돌려봤지만 내가 생각한 모델은 불가능했다. 맞다.. 이렇게 쉬웠으면 누구나 다 이방법으로 수익을 내고 있었겠지...

​

내 아이디어는 이거였다. 지금 생각하니까 아이디어라고 하기에도 웃기다 ㅋㅋㅋ 그냥 그래프의 기울기를 보고 저점에 사서 고점에서 파는거다 ㅋㅋㅋㅋ

​

머.. 말은 간단한데 사실 더 생각은 있엇다. 각종 지수, 머... 주가에 영향을 줄만한 것들? 각종 인덱스, 산업지수, 환율, 등등 많은 값들을 불러와 매매강도를 정해 시장이 좋을 경우 적극적으로 행동하고, 시장이 안좋다고 판단할때는 몸을 사리는 머 그런 프로그램을 만들려고 했다.. 하지만... 아무리 생각해봐도... 그래프의 이전 기울기만 보고 1초 뒤의 미래를 예측하는건 무리였다......

​

주식이란게..머 재무재표도 탄탄한지...지수에 영향을 받았는지... 그리고 작전 세력... 외인, 거대 기관의 수익실현할 타이밍에도 주가가 움직인다. 그리고 뉴스로 보도되는 이슈들로 인한 사람들의 기대심리로 상승하거나 하락하거나.. 아주아주아주 수많은 요인에 의해서 주가가 움직이는데 몇시간 전 기울기를 보고 1분 후를 예측하는게 바보같다는 생각이 들었다.. ㅋㅋㅋ

​

아무튼 이 포스팅을 위해서 주식으로 수익낸다는 생각보다. 아 GUI 앱은 이렇게 만드는구나.. 정도 생각하면 될꺼 같다.ㅎㅎ 내 포스팅에 있는 다른글들과 마찬가지로 비전공자도 따라 올 수 있게끔 쉽게 써볼 생각이다 ㅎㅎ

​

반응형
저작자표시 비영리 변경금지 (새창열림)

'IT > Python' 카테고리의 다른 글

[파이썬 #2] 주식자동매매 시뮬레이터 - 개발환경 셋팅(Python / PyCharm) 및 프로젝트 생성  (0) 2021.03.01
    'IT/Python' 카테고리의 다른 글
    • [파이썬 #2] 주식자동매매 시뮬레이터 - 개발환경 셋팅(Python / PyCharm) 및 프로젝트 생성
    외장_하드
    외장_하드
    자동차 / 여행 / 취업 / 일상 / IT / 코딩

    티스토리툴바