300x250
지난글에 이어 일목균형표 데이터를 추가하여 차트를 그려보자.
1. 차트에 일목 균형표 추가하기 - *전체코드*
1) 데이터 가져오는 df는 알아서 진행하자. kiwoom api 통해 요청 후 받으면 된다.
2) 일목 균형표 데이터 생성은 ta 패키지를 설치한 후 진행해야한다.
3) 3-1 그래프 lengend 그리기
-> 일목균형표, 이동평균 2개 lenged 네이밍 하자.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
import mplfinance as mpf
from ta.trend import IchimokuIndicator
## 1. 일봉 데이터 확보
df = Kiwoom.get_price_data("005930") # 일봉데이터 가져와 df 에 넣기
print(df) # 데이터 프레임 출력
print(df.info()) # 데이터 정보 출력
# 1-1 일목균형표 데이터 생성
id_ichimoku = IchimokuIndicator(high=df['high'], low=df['low'], visual=True, fillna=True)
df['span_a'] = id_ichimoku.ichimoku_a()
df['span_b'] = id_ichimoku.ichimoku_b()
df['base_line'] = id_ichimoku.ichimoku_base_line()
df['conv_line'] = id_ichimoku.ichimoku_conversion_line()
## 2. 데이터 구조 변경
df['date'] = pd.to_datetime(df['date']) # 문자열 데이터를 시계열 타입으로 변경한다
print(df.info()) # 데이터 정보 출력
print(df)
df.set_index('date', inplace = True) # 데이터 프레임내 인덱스 설정
print(df)
## 추가. 색상 추가하기
mc = mpf.make_marketcolors(
up="r",
down="b",
volume="inherit" # 거래량 색상
)
## 데이터 선정(9월, 10월)
data1 = df.loc["2022-08":"2022-10"]
## 일목균형표 그래프 추가
added_plots = {"span_a" : mpf.make_addplot(data1['span_a']),
"span_b" : mpf.make_addplot(data1['span_b']),
"base_line" : mpf.make_addplot(data1['base_line']),
"conv_line" : mpf.make_addplot(data1['conv_line'])
}
s = mpf.make_mpf_style(
base_mpf_style="starsandstripes",
marketcolors=mc,
gridaxis='both', # horizontal, vertical, both
y_on_right=True, # False는 y축을 왼쪽에 표시
)
## 3. 그래프 그리기
fig, axes = mpf.plot(
data = data1,
type='candle',
style=s,
figratio=(15, 6),
mav=(20,240), # 이동평균 20일선 추가.
volume = True, # 거래량 그래프 추가
scale_width_adjustment=dict(volume=0.8, candle=1), #거래량 차트 비율 추가
returnfig=True,
addplot=list(added_plots.values())
)
## 3-1 그래프 lengend 그리기
axes[0].legend([None]*(len(added_plots)*20))
handles = axes[0].get_legend().legendHandles
axes[0].legend(handles=handles[2:],labels=['mav20','mav240'] + list(added_plots.keys()), loc=(0,1), ncol=10)
fig.show()
|
cs |
2. 결과 확인
300x250
'파이썬-키움(주식) > 그래프' 카테고리의 다른 글
python(vscode)/mplfinance/그래프 참고자료 (0) | 2023.01.01 |
---|---|
python(vscode)/주식 차트그리기 #3/거래량/이동평균/candle 차트 (0) | 2022.10.30 |
python(vscode)/주식 차트그리기 #2/candle 차트/봉 차트 그리기/ 키움 api/키움증권 (0) | 2022.10.30 |
python(vscode)/주식 차트그리기 #1/candle 차트/봉 차트 그리기/ 키움 api/키움증권 (0) | 2022.10.25 |