파이썬(10)
-
[파이썬] int, hex, bytes 형 간 변환
>>> num = 1234567890000753221 >>> num 1234567890000753221 >>> hex_n = hex(num) >>> hex_n '0x112210f476993245' int형 변수를 선언하고, 이를 hex() 함수에 넣어주면 16진수 형태의 변수로 바뀐다. 그렇다면 이 변수의 type은 무엇일까? >>> type(hex_n) 'str' 형이다. >>> bytes.fromhex(hex_n.lstrip('0x')) b'\x11"\x10\xf4v\x992E' str 타입의 hex 값을 bytes 형 변수로 바꿔주려면 가장 왼쪽의 '0x'를 제거해줘야한다. 이를 bytes.fromhex() 함수에 넣으면 최종적으로 bytes 형 변수가 출력된다.
2021.07.19 -
4-2. [트레이딩 전략 구현] 볼린저 밴드 매매 기법 : 추세 추정 매매 기법
지금까지 볼린저 밴드, %b, 밴드폭이라는 지표를 살펴보았다. 이 외에도 실제로 투자를 할 때 참고해야할 여러가지 지표가 존재한다. 이번 장에서는 다른 지표에 대해서도 살펴보고 지표를 참고하여 매매 기법을 구현해보도록 하겠다. 추세 추종(Trading Following) Trend following or trend trading is a trading strategy according to which one should buy an asset when its price trend goes up, and sell when its trend goes down, expecting price movements to continue 출처 : https://en.wikipedia.org/wiki/Trend_foll..
2021.06.13 -
4-2. [트레이딩 전략 구현] 볼린저 밴드 지표 : %b, 밴드폭(bandwidth)
%b 볼린저 밴드 지표와 함께 사용되는 유용한 지표 중 하나가 %b이다. %B quantifies a security's price relative to the upper and lower Bollinger Band. There are six basic relationship levels: %B is below 0 when price is below the lower band %B equals 0 when price is at the lower band %B is between 0 and .50 when price is between the lower and middle band (20-day SMA) %B is between .50 and 1 when price is between the upper a..
2021.06.13 -
4-1. [트레이딩 전략 구현] 볼린저 밴드 지표
볼린저 밴드는 기술적 분석에서 사용되는 지표 중 하나로, 20일간의 이동 평균선과 이를 기준으로 형성된 상단선과 하단선으로 구성되어 있다. 주가의 상대적인 고점, 저점을 판단하는 기준으로 사용된다. - 상단 볼린저 밴드 : 중간 볼린저 밴드 + 2*표준편차 - 중간 볼린저 밴드 : 20일간 이동 평균선 - 하단 볼린저 밴드 : 중간 볼린저 밴드 - 2*표준편차 해당 프로젝트에서는 볼린저 밴드의 기준을 20일, 2배로 설정하였다. 이를 구현해보자. import matplotlib.pyplot as plt from Investar.MarketDB import MarketDB class bollingerBand: def get_bollinger_band(self, company, start_date): ###..
2021.06.13 -
3-2. [트레이딩 전략 구현] 샤프 지수(Sharpe Ratio)
샤프 지수(Sharpe Ratio)는 측정된 위험 단위당 수익률을 계산한다. 포트폴리오 수익률에서 무위험률을 뺀 뒤, 포트폴리오 수익률 표준편차로 나눈다. 효율적 투자선 내에서 위험률 대비 가장 높은 수익률을 얻을 수 있는 지점을 찾아보자. class efficient_frontier: def __init__(self, stock_list, start_date, end_date): self.daily_ret = [] self.annual_ret = [] . . . self.sharpe_ratio = [] #샤프지수 변수를 추가 . 클래스 멤버에 샤프지수를 나타내는 변수를 추가한다. def monte_carlo_sim(self, stock_list): for _ in range(20000): . . . s..
2021.06.12 -
3-1. [트레이딩 전략 구현] 효율적 투자선 구하기
주식 포트폴리오를 짤 때 전략 없이 종목을 구성하는 것이 아닌, 전략적으로 구성한다면 더 좋은 수익률을 거둘 수 있다. 그러한 지표 중 하나가 효율적 투자선(Efficient Frontier)이다. What Is Efficient Frontier? The efficient frontier is the set of optimal portfolios that offer the highest expected return for a defined level of risk or the lowest risk for a given level of expected return. Portfolios that lie below the efficient frontier are sub-optimal because they d..
2021.06.12