Showing
1 changed file
with
102 additions
and
22 deletions
... | @@ -137,39 +137,119 @@ for i in range(len(Stock_data)): | ... | @@ -137,39 +137,119 @@ for i in range(len(Stock_data)): |
137 | del Stock_data[i][7] #시가 총액 삭제 | 137 | del Stock_data[i][7] #시가 총액 삭제 |
138 | for i in range(len(Stock_data)): | 138 | for i in range(len(Stock_data)): |
139 | del Stock_data[i][7] #상장주식 수 삭제 / 결과:'일자', '종가', '등락률', '시가', '고가', '저가', '거래량' | 139 | del Stock_data[i][7] #상장주식 수 삭제 / 결과:'일자', '종가', '등락률', '시가', '고가', '저가', '거래량' |
140 | -print(Stock_data) | 140 | +#print(Stock_data) |
141 | 141 | ||
142 | def Calpercentage(a,b): #시초가 대비 고점/저점 비율 | 142 | def Calpercentage(a,b): #시초가 대비 고점/저점 비율 |
143 | return abs(a-b)/a*100 | 143 | return abs(a-b)/a*100 |
144 | +####아래로 수정 필요 (미완성)#### | ||
144 | 145 | ||
146 | +i=0 | ||
147 | +for k in range(len(Setlist)): | ||
148 | + if( Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교 날짜가 같다면 | ||
149 | + if Calpercentage(Stock_data[i][3],Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때 | ||
150 | + for j in range(1,len(Setlist[k])): | ||
151 | + if Setlist[k][j][1] == 0: | ||
152 | + Setlist[k][j][1] = 1 | ||
153 | + else: | ||
154 | + Setlist[0][j][1] += 1 | ||
155 | + elif Calpercentage(Stock_data[i][3],Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때 | ||
156 | + for j in range(1,len(Setlist[k])): | ||
157 | + if Setlist[k][j][1] == 0: | ||
158 | + Setlist[k][j][1] = -1 | ||
159 | + else: | ||
160 | + Setlist[0][j][1] -= 1 | ||
161 | + else: | ||
162 | + if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면 | ||
163 | + for j in range(1,len(Setlist[k])): #어제뉴스는 호재 취급 | ||
164 | + if Setlist[k][j][1] == 0: | ||
165 | + Setlist[k][j][1] = 1 | ||
166 | + else: | ||
167 | + Setlist[k][j][1] += 1 | ||
168 | + elif Stock_data[i+1][2] < 0: | ||
169 | + for j in range(1,len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급 | ||
170 | + if Setlist[k][j][1] == 0: | ||
171 | + Setlist[k][j][1] = -1 | ||
172 | + else: | ||
173 | + Setlist[k][j][1] -= 1 | ||
174 | + i+=1 | ||
175 | + else: | ||
176 | + if Calpercentage(Stock_data[i][3], Stock_data[i][4]) > 2: # 당일 시가 대비 고가가 2퍼 높을때 | ||
177 | + for j in range(1, len(Setlist[k])): | ||
178 | + if Setlist[k][j][1] == 0: | ||
179 | + Setlist[k][j][1] = 1 | ||
180 | + else: | ||
181 | + Setlist[k][j][1] += 1 | ||
182 | + elif Calpercentage(Stock_data[i][3], Stock_data[i][5]) < -2: # 당일 시가 대비 저가가 2퍼 낮을 때 | ||
183 | + for j in range(1, len(Setlist[k])): | ||
184 | + if Setlist[k][j][1] == 0: | ||
185 | + Setlist[k][j][1] = -1 | ||
186 | + else: | ||
187 | + Setlist[k][j][1] -= 1 | ||
188 | + else: | ||
189 | + if Stock_data[i + 1][2] > 0: # 다음날 주가 등락률이 양수면 | ||
190 | + for j in range(1, len(Setlist[k])): # 어제뉴스는 호재 취급 | ||
191 | + if Setlist[k][j][1] == 0: | ||
192 | + Setlist[k][j][1] = 1 | ||
193 | + else: | ||
194 | + Setlist[k][j][1] += 1 | ||
195 | + elif Stock_data[i + 1][2] < 0: | ||
196 | + for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급 | ||
197 | + if Setlist[k][j][1] == 0: | ||
198 | + Setlist[k][j][1] = -1 | ||
199 | + else: | ||
200 | + Setlist[k][j][1] -= 1 | ||
201 | + i+=1 | ||
202 | + | ||
203 | +#print(Setlist) | ||
204 | +df_Setlist = pd.DataFrame(Setlist) | ||
205 | +df_Setlist.to_excel(Stockfilename+' KNU_New.xlsx',sheet_name='sheet1') | ||
206 | + | ||
207 | +''' | ||
145 | for i in range(len(Stock_data)-1): | 208 | for i in range(len(Stock_data)-1): |
146 | for k in range(len(Setlist)): | 209 | for k in range(len(Setlist)): |
147 | - if( Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교 | 210 | + if (Stock_data[i][0].split('/') == Setlist[k][0].split('.')[:3]): # 날짜 비교 |
148 | - if Calpercentage(Stock_data[i][3],Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때 | 211 | + if Calpercentage(Stock_data[i][3], Stock_data[i][4]) > 2 : #당일 시가 대비 고가가 2퍼 높을때 |
149 | - for j in range(1,len(Setlist[k])): | 212 | + for j in range(1, len(Setlist[k])): |
150 | - if Setlist[0][j][1] == 0: | 213 | + if Setlist[k][j][1] == 0: |
151 | - Setlist[0][j][1] = 1 | 214 | + Setlist[k][j][1] = 1 |
152 | else: | 215 | else: |
153 | - Setlist[0][j][1] += 1 | 216 | + Setlist[k][j][1] += 1 |
154 | - elif Calpercentage(Stock_data[i][3],Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때 | 217 | + elif Calpercentage(Stock_data[i][3], Stock_data[i][5]) < -2 : #당일 시가 대비 저가가 2퍼 낮을 때 |
155 | - for j in range(1,len(Setlist[k])): | 218 | + for j in range(1, len(Setlist[k])): |
156 | - if Setlist[0][j][1] == 0: | 219 | + if Setlist[k][j][1] == 0: |
157 | - Setlist[0][j][1] = -1 | 220 | + Setlist[k][j][1] = -1 |
158 | else: | 221 | else: |
159 | - Setlist[0][j][1] -= 1 | 222 | + Setlist[k][j][1] -= 1 |
160 | else: | 223 | else: |
161 | if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면 | 224 | if Stock_data[i+1][2] > 0: # 다음날 주가 등락률이 양수면 |
162 | - for j in range(1,len(Setlist[k])): #어제뉴스는 호재 취급 | 225 | + for j in range(1, len(Setlist[k])): #어제뉴스는 호재 취급 |
163 | - if Setlist[0][j][1] == 0: | 226 | + if Calpercentage(Stock_data[i+1][3], Stock_data[i+1][5]) < -2 : |
164 | - Setlist[0][j][1] = 1 | 227 | + for j in range(1, len(Setlist[k])): |
228 | + if Setlist[k][j][1] == 0: | ||
229 | + Setlist[k][j][1] = -1 | ||
230 | + else: | ||
231 | + Setlist[k][j][1] -= 1 | ||
165 | else: | 232 | else: |
166 | - Setlist[0][j][1] += 1 | 233 | + if Setlist[k][j][1] == 0: |
234 | + Setlist[k][j][1] = 1 | ||
235 | + else: | ||
236 | + Setlist[k][j][1] += 1 | ||
167 | elif Stock_data[i+1][2] < 0: | 237 | elif Stock_data[i+1][2] < 0: |
168 | - for j in range(1,len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급 | 238 | + if Calpercentage(Stock_data[i+1][3], Stock_data[i+1][4]) > 2 : |
169 | - if Setlist[0][j][1] == 0: | 239 | + for j in range(1, len(Setlist[k])): |
170 | - Setlist[0][j][1] = -1 | 240 | + if Setlist[k][j][1] == 0: |
171 | - else: | 241 | + Setlist[k][j][1] = 1 |
172 | - Setlist[0][j][1] -= 1 | 242 | + else: |
173 | -print(Setlist) | 243 | + Setlist[k][j][1] += 1 |
244 | + else: | ||
245 | + for j in range(1, len(Setlist[k])): # 음수면 어제 뉴스는 악재 취급 | ||
246 | + if Setlist[k][j][1] == 0: | ||
247 | + Setlist[k][j][1] = -1 | ||
248 | + else: | ||
249 | + Setlist[k][j][1] -= -1 | ||
250 | + else: | ||
251 | + | ||
174 | 252 | ||
253 | +print(Setlist) | ||
175 | 254 | ||
255 | +''' | ... | ... |
-
Please register or login to post a comment