사용툴
- CREON API(대신증권) & Python3 & MySQL(MariaDB) & NodeJS & Discord API
- CREON API 연결 및 주문 처리 -> Python3
- KRX 및 NAVER를 통한 주가 데이터 저장 -> Python3
- DB저장 -> MySQL(MariaDB 11)
- 분석 로직 -> NodeJS
지표
- 이동평균선 5일, 10일, 20일
- 거랭량 평균 5일, 10일
- Bollinger Band 20
- 추세지표 Commodity Channel Index, CCI 14
- CCI = (M-m) / (d*0.015)
- M(평균가격) = (당일의 고가 + 당일의 저가 + 당일의 종가) / 3
- m = M의 n일 단순이동평균(n은 14일)
- d = 절대값(lM-ml)의 n일 단순이동평균 = (IM-ml) / n
- 0.015는 CCI가 -100 ~ +100 범위를 크게 벗어나지 않게 하기 위한 상수
- CCI가 -100(과매도) 아래에서 위로 상승할 때, 매수
- CCI가 100(과매수) 위에서 아래로 하락할 때, 매도
- 기준선 0을 기점으로 상향 돌파 매수, 하향 돌파 매도
- 상대강도지표 Relative Strength Index, RSI 14
- RSI = 100 * n일간의 주가 상승폭 합계 / (n일간의 주가 상승폭 합계 + n일간의 주가 하락폭 합계)
- RSI > 50 매수 우세, 이하는 매도 우세
- RSI > 70 과매수 -> 매도신호
- RSI < 30 과매도 -> 매수신호
- 단순 수치보다는 방향성을 보고 매수/매도
- 볼린저 밴드 지표 : %b
- %b = (종가 – 볼린저 하단)/(볼린저 상단 – 볼린저 하단)
- %b == 1 볼린저 밴드 상단
- %b == 0.5 볼린저 밴드 중앙
- %b == 0 볼린저 밴드 하단
- %b < 0.2 에서 매수 고려, 0.8 이상에서 매도 고려
- 현금흐름지표, Money Flow Index 10
- MFI = 100 – (100/(1+Positive Money Flow/Negative Money Flow))
- Typical Price = (high + low+ close) / 3
- PMF -> sum of TP * Volume
- NMF -> sum of TP * Volume
- MFI <20 에서 매수 고려, 80 이상에서 매도 고려
- 일중 강도율, Intraday Intensity Percent II% 21
- 일중 강도(ii) = 거래량 * (2*종가-고가-저가) / (고가-저가)
- 일중 강도율(percentII) = 100*일중강도의 21일합 / 거래량의 21일 합
- 존 볼린저가 사용한 일중 강도율 & 매집 분산율(AD%) 중 하나이다.
- 매수 : 주가가 하단 볼린저 밴드 부근에서 W형 패턴을 나타내고, 강세 지표가 확증할 때 매수 (%b가 0.05보다 작고, II%가 0보다 크면 매수)
- 매도 : 상단 볼린저 밴드 부근에서 일련의 주가 태그가 일어나며, 약세 지표가 확증할 때 매도 (%b가 0.95보다 크고 II%가 0보다 작으면 매도)
구현 예정