본문 바로가기
무모한 도전-주식 인공지능 만들기

profit을 가져오기 위한 기초작업

by 인터넷떠돌이 2020. 5. 19.
반응형

안녕하세요?

 

일단 이래저래 position sizing을 하기 이전에, 먼저 이익이 발생했으면, 그게 이익인지 손해인지 차익을 한번 따져 보아서 이를 가지고 가지가지 데이터를 만드는 작업을 먼저 해 놓아야만 하는 상황이 나왔습니다. 그래서 이번 포스팅은 이 과정에 대해서 한번 다루어 보고자 합니다.

 

먼저 원활한 작업을 하기 위해서, 새로운 프로젝트를 생성해서 작업을 하도록 합니다. 새로운 프로젝트의 이름은 AdvancedTester로 지어 주도록 합니다.

 

그리고 나서 기존의 initial test에 있던 py파일들을 다 가지고 오도록 합니다. 물론 불필요한 파일은 여기서 다 빼도록 했습니다.

 

먼저 이전의 코드를 보다보니, 아예 profit을 가지고 오는 코드가 없는 것은 아니었습니다. 물론 이게 100% 바로 활용이 가능한 int형식의 변수는 아닙니다.

 

 

그리고 나서 다른 py파일에 가서, 매수와 매도의 가격을 따로따로 기록을 하는지 안 하는지를 한번 보도록 했습니다. 일단 여기서는 pandas의 데이터 프레임을 생성해서 날짜까지 기록을 하고 있는 것을 확인할 수 있었습니다.

 

그리고 다시한번 살펴 보니까, 여기서 매수한 주식을 매도하면서 어떻게 차익을 계산하는 지에 대해서 한번 확인을 할 수 있었습니다.

 

그리고 나서 다음으로 계산한 것은, 일단 이 이익과 매수/매도 상황을 txt파일로 가지고 올 수 있는지 알아보기 위해서 pandas의 dataframe에서 to_csv()함수를 이용해서 가지고 올 수 있었습니다. 여기서 index= 는 False로 두도록 하고, header=는 None 그리고 가장 중요한 sep=는 어떻게 해서 데이터와 데이터를 구분할 것인지를 나타내는데, 제 경우에는 그냥 공백으로 띄우는 식으로 했습니다.

 

이제 이게 제대로 작동하는지 알아보기 위해서, 먼저 위 스크린샷에서 보이는 것처럼 일단 input()함수를 주석처리를 하도록 하고, 이외에 있는 자료를 가지고 오도록 합니다.

 

그리고 나서 다음으로 볼 수 있는 것으로는 위 스크린샷에서 볼 수 있는 것처럼 제대로 txt파일이 생성되는 것 까지는 확인을 할 수 있었습니다.

 

일단 이 자료를 한번 엑셀을 사용해서 가지고 왔습니다. 여기서 나오는 내용을 가지고 한번 비교해 보니, 제대로 profit이 나오는 것을 확인할 수 있기는 있었습니다.

 

즉, 지금까지는 그렇게 큰 문제가 없이 순조롭게 나오는 것을 확인할 수 있었습니다. 다만 문제가, 아직도 position sizing이라는 것에 대해서 한국어로 번역된 용어조차 없을 정도로 이게............ 정확하게 무엇인지 확인하는 것도 상당히 어려운 상황입니ㅏ. 그래서 당분간 포스팅의 속도가 느려질 듯 합니다.

반응형