PYTHON/etc contents

파이썬으로 당일 상승률 계산하기

  • -

계산을 위한 코드를 제작하기에 앞서 실제 주식 시장 내에서는 상승률을 계산하는 기준으로 전일 종가를 사용한다. 따라서 코드 작성 시에는 특정 값의 비교를 하는 기준은 전일 종가가 되어야 한다.

아래의 코드처럼 함수의 이름에 있는 vix는 변동성을 의미하며, cal은 계산을 의미하는 calculator의 약자이다. 변동성을 계산하기 위한 것으로 cal_vix라는 이름을 지었다.
이 함수로 받아올 변수로는 low(당일 저가), high(당일 고가), yester_close(전일 종가) 세 개를 설정했다.

[참고] low는 입력하지 않아도 된다.

def cal_vix(low, high, yester_close):

 

그렇다면 이제 전일 종가와 당일 고가를 기준으로 변동성을 분석해보도록 하자.
상승률을 계산하는 방법은 의외로 단순한데, 고가에서 전일 종가를 뺀 값(차액)과 전일 종가를 비교하면 된다.
그 후 차액(differ_value)전일 종가(yester_close)로 나누면 상승률(vix)이 나오게 되는데,
여기서의 상승률(vix)는 소수점 자리로 나오게 된다. 따라서 상승률을 정수의 형태로 얻고 싶다면
vix = differ_value/yester_close에서 양쪽에 괄호를 덧붙인 후 *100을 계산하면 상승률을 정수로 얻을 수 있다.

def cal_vix(low, high, yester_close):

    differ_value = high - yester_close
    vix = differ_value/yester_close
    # vix = (differ_value/yester_close) * 100

    return vix

 

함수를 통해 결과값 받아오는 방법

위의 코드를 보면 함수를 정의한 후 그 함수 내에서 여러 가지 계산 절차들을 거친 후에
return vix 라는 코드를 통해 상승률을 반환해주고 있다.
이 경우, vix라는 값을 사용하는 방법은 아래와 같다.

a = cal_vix(0, 1230, 1000)
print(a)

즉, def cal_vix를 실행하면 그 결과값으로 vix라는 변수가 나오게 되므로
a = cal_vix(low, high, yester_close)라는 코드를 통해 vix라는 변수를 a에라는 변수에 저장하는 것이다.
이후 print(a)를 실행하게 되면 입력한 값의 상승률이 나오게 된다.

실행 결과

 

상승률을 소수점 두자리 수까지만 표시하기

위의 예시는 고가와 전일 종가가 단순하게 표현되어 있어서 상승률 계산에 큰 문제가 없었지만,
실제 주식시장에서의 고가와 전일 종가의 값은 정수이긴 하지만 1365원, 10300원, 113000원 등등 상승률을 직접 계산해보면 소수점까지 길게 나오는 경우들이 있다.
이 경우 소수점이 여러 자리일 경우 round()를 통해 소수점 몇 번째 자리까지만 표시하도록 할 것인지 지정해줄 수 있다.

사용 방법은 round(표시할 변수, 표시할 자리 수)의 형태로 사용하게 되는데
앞서 살펴봤던 함수 내에서처럼 상승률을 정수로 표현하는 경우와 소수점으로 표현하는 경우 두 가지가 있었던 만큼 round()를 사용하는 데에 있어서도 표시할 자리의 수를 다르게 입력하여야 한다.
뒤의 값이 2인 경우에는 소수점 둘째 자리까지만 표시하며, 4인 경우에는 마찬가지로 소수점 넷째 자리까지만 표시한다.

간단한 예를 들기 위해 현재 상승률이 입력되어 있는 변수는 vix이고 소수점 둘째 자리까지 표시하고 싶다고 가정해보자.
만약 현재의 상승률이 vix = 23.2932라면, 이 경우에는 round(vix, 2)를 사용해야 23.29라는 값이 도출되며,
반대로 상승률이 vix = 0.232932라면 round(vix, 4)를 사용해야 0.2329라는 값이 도출된다.

728x90
반응형

'PYTHON > etc contents' 카테고리의 다른 글

PyCharm 모듈 설치 방법  (0) 2021.06.17
Pandas to_excel 사용 방법  (0) 2021.06.02
파이썬 자료의 형태  (0) 2020.10.03
파이썬 연산자의 종류와 주의사항  (0) 2020.10.03
파이참(Pycharm) 사용 환경 설정 방법  (0) 2019.01.15
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.