낮에 증거금 부족으로 주문이 안 들어갔다.
바로 확인한 후에 예수금을 채워 넣고 포지션 진입에 성공했지만 차라리 안 들어가는 게 좋을 뻔했다.
그런데 KRX에 가서 확인해 보니 수시 변경이 있었다.
https://regulation.krx.co.kr/contents/RGL/06/06020800/RGL06020800.jsp
다른 증권사는 어떤지 모르겠지만 키움증권 OpenAPI로는 증거금률 조회가 안 되는 것 같다.
월말 정기조정 때마다 수작업으로 업데이트를 했는데 이번처럼 수시 변경에는 대응하기가 어렵다.
결국 위 게시판의 글들을 크롤링하는 코드를 만들었다.
하루에 한 번씩 실행해서 새 글이 올라오면 텔레그램으로 알림을 보내놓는 걸로...
import requests
import pandas as pd
from datetime import *
session = requests.Session()
session.headers.update({
'Referer': 'https://regulation.krx.co.kr/contents/RGL/06/06020800/RGL06020800.jsp',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36'
})
# 1. 초기 페이지 호출
session.get('https://regulation.krx.co.kr/contents/RGL/06/06020800/RGL06020800.jsp')
# 2. OTP
url_ajax = 'https://regulation.krx.co.kr/contents/COM/GenerateOTP.jspx'
payload = {
'bld': 'RGL/06/06020800/rgl06020800_01',
'name': 'list',
'_': int(datetime.now().timestamp() * 1000)
}
res_otp = session.post(url_ajax, data=payload)
otp = res_otp.text.strip()
# 3. AJAX 호출 URL
ajax_url = 'https://regulation.krx.co.kr/contents/RGL/99/RGL99000001.jspx'
fromdate = (datetime.now() - timedelta(days=30)).strftime('%Y%m%d')
todate = datetime.now().strftime('%Y%m%d')
payload_list = {
'fromdate': fromdate,
'todate': todate,
'pagePath': '/contents/RGL/06/06020800/RGL06020800.jsp',
'curPage': 1,
'pageSize': 10,
'code': otp
}
res = session.post(ajax_url, data=payload_list)
data = res.json()
df = pd.DataFrame(data['DS1'])
df['chg_dd'] = pd.to_datetime(df['chg_dd'], format='%Y/%m/%d')
df['contn'] = df['contn'].str.replace(r'\s+', ' ', regex=True).str.strip()
print(df)
# 4. 최근 게시글 추출
now = datetime.now()
now = now.replace(hour=0, minute=0, second=0, microsecond=0)
filtered_df = df[df['chg_dd'] >= now - timedelta(days=1)]
if len(filtered_df) > 0:
data = filtered_df[['chg_dd', 'contn']].to_dict(orient='records')
for item in data:
text = f"{item['chg_dd'].strftime('%Y-%m-%d')}: {item['contn']}"
print(text) # 문자열 추출
'시스템트레이딩' 카테고리의 다른 글
거짓말이겠지? (0) | 2025.04.21 |
---|---|
변동성 (1) | 2025.04.01 |
공매도 금지 효과? (0) | 2025.03.06 |
S&P500 새 전략 (0) | 2025.03.02 |
몇몇 전략들의 근황 (0) | 2025.02.02 |