안녕하세요?
일단 지난번 포스팅까지 어떻게 해서 작업을 이어가는데 성공했지만, 일단 하면서 제가 account risk니 position size하는 개념을 처음 접하다 보니, 가장 심각한 휴먼 에러를 이래저래 많이 일으키고 있습니다. 아무튼 계속해서 실험노트에 해당하는 이 포스팅을 올리는 것으로 기록은 기록으로 남기고, 언젠가 시간이 나면, 지식정리 창고에 정리를 하고자 합니다.
먼저 위 스크린샷에서 보이는 것처럼 제대로 position size가 작동을 하는지 안 하는지 알아보기 위해서, 일단 print함수를 써서 결과를 출력해 보려고 했지만, 무언가 에러가 나와서 실패 했습니다.
알고보니, 제대로 변수들을 넣지 않아서 제대로 된 계산이 이루어 지지 않아서 에러가 발생한 것 이었습니다. 이제 이 방법을 해결하기 위해서, 제대로 변수들을 넣어 주도록 합니다.
그리고 나서 다음으로 어떻게 할 수 있는 것이 있느냐 하면, 일단 self를 붙여 놓은 stoploss를 넣어주어서 변수를 채워 주도록 합니다.
제대로 자본금에 반영이 되는 것을 확인할 수 있기는 있었습니다. 이제 이를 바탕으로 해서 다음으로는 매수를 할 경우에 제대로 position size가 반영이 되는지 알아볼 차례입니다.
일단 위 스크린샷에서 볼 수 있는 것처럼 우선 print함수를 사용하는 것으로 데이터 프레임을 어떻게 해서 가지고 오도록 해 봅니다.
그런데 상황이 별로 좋지 않게도, 위 스크린샷에서 볼 수 있는 것처럼 일단 position size의 숫자가 너무 이상하게 작은 숫자가 나오는 것을 확인할 수 있었습니다.
이제서야 알 수 있었는 것이........... 일단 위 스크린샷에서 볼 수 있는 것처럼 stopLoss가 손절매를 위한 '가격'이 아니라는 것 입니다. 매수한 가격에서 얼마정도 떨어지는 지를 지정한 다음. 이 매수가격에서 이 수치만큼 빼 주어야 한다는 것 입니다.
이렇게 해서 뭐라고 해야 할까요? 일단 봐줄만한 숫자로 바뀌기는 했습니다만, 이렇게 소수점 이하로 계산이 되어서는 제대로 된 갯수를 구하기는 어렵다는 생각이 듭니다.
그래서 round라고 해서 반올림을 해주는 함수를 동원하도록 하고, 그 다음으로는 int함수를 동원해서 정수로 바꾸어 주도록 합니다. 이렇게 해서 한번 작업을 해 보면..........
이제서야 볼만한 position size로 바뀌어 져 있는 것을 볼 수 있었습니다. 일단 다음 포스팅에서 이게 어떻게 된 일인지 상세하게 설명을 드리겠습니다. 이게 순전히 제가 position size를 구하는 공식을 제대로 이해하지 못해서 발생한 현상이라고 할 수 있습니다.
'무모한 도전-주식 인공지능 만들기' 카테고리의 다른 글
Position Sizing을 위한 작업 -9- part2 (0) | 2020.05.26 |
---|---|
Position Sizing을 위한 작업 -9- part1 (0) | 2020.05.26 |
Position Sizing을 위한 작업 -7- (0) | 2020.05.25 |
Position Sizing을 위한 작업 -6- (0) | 2020.05.25 |
Position Sizing을 위한 작업 -5- (0) | 2020.05.24 |