The Relationship between news and stocks 7
2022. 7. 22. 00:32ㆍProject/뉴스기사로 인한 주가 등락 예측
728x90
반응형
회의록
- 4가지로 라벨링 고민
- 전날 종가 다음날 고가
- 당일 시작가 종가
- 당일 시작가 고가 -> 이렇게 되면 무조건 상승이거나 유지 라벨만 나오게 됨
- 전날 종가 다음날 종가
코드
AWS 서버 MySQL에서 데이터 불러오기
import pandas as pd
import pymysql
conn = pymysql.connect(
user = 'stocks',
passwd = 'Stocks!',
host = "-",
port = 3306,
db = 'Data',
charset = 'utf8'
)
cur = conn.cursor()
cur.execute('''
SELECT DISTINCT * FROM Stock_Price
''')
result = cur.fetchall()
df = pd.DataFrame(result, columns=['stock_id', 'date', 'closing_price', 'market_price', 'high_price', 'low_price'])
df = df.sort_values(ascending=False, by=['stock_id', 'date']).reset_index(drop=True)
당일 시가와 당일 종가 비교
from tqdm import tqdm
import datetime
for i in tqdm(range(0,len(df),75)):
for j in range(75):
if df.loc[i+j][1] == datetime.date(2022,3,31):
df.loc[i+j, 'label1'] = -1
continue
if df.loc[i+j][3] <= df.loc[i+j][2]:
df.loc[i+j, 'label1'] = 1
elif df.loc[i+j][3] > df.loc[i+j][2]:
df.loc[i+j, 'label1'] = 0
전날 종가와 당일 시가 비교
from tqdm import tqdm
import datetime
for i in tqdm(range(0,len(df),75)):
for j in range(75):
if df.loc[i+j][1] == datetime.date(2022,3,31):
df.loc[i+j, 'label2'] = -1
continue
if df.loc[i+j][3] < df.loc[i+j+1][2]:
df.loc[i+j, 'label2'] = 0
elif df.loc[i+j][3] >= df.loc[i+j+1][2]:
df.loc[i+j, 'label2'] = 1
728x90
반응형
'Project > 뉴스기사로 인한 주가 등락 예측' 카테고리의 다른 글
The Relationship between news and stocks 9 (0) | 2022.07.26 |
---|---|
The Relationship between news and stocks 8 (0) | 2022.07.22 |
The Relationship between news and stocks 6 (0) | 2022.07.22 |
The Relationship between news and stocks 5 (0) | 2022.07.22 |
The Relationship between news and stocks 4 (0) | 2022.07.19 |