주말에도 주가를 본다
이날은 주말이었다.
주식 시장이 안 열린 날에 주가를 어떻게 보는지 정리했다.
그리고 헤드리스 서버에서 브라우저 없이 웹 데이터를 가져오는 방법도 정리했다.
한국 정규장은 주말에 안 돈다.
근데 주말에도 주가 방향을 가늠하고 싶을 때가 있다.
특히 금요일에 대폭락이 있었으면, 주말 내내 불안하다.
주말에 변동하는 건 두 가지다.
하나는 해외예탁증서 기반 추정가다.
한국 기업의 주식이 해외에서 거래되는데, 이걸 기준으로 국내 시세를 추정한다.
코스피랩 같은 사이트에서 제공한다.
다른 하나는 야간선물이다.
코스피200 야간선물이 거래된다.
손물 같은 사이트에서 실시간으로 볼 수 있다.
야간선물은 다음 날 코스피 시초가의 선행지표로 자주 쓰인다.
참고지표일 뿐이다
근데 둘 다
참고지표일 뿐이다.
추정가가 시초가를 결정하지 않는다.
단일 지표로 방향을 예측하면 안 된다.
참고로만 봐야 한다.
헤드리스 서버에서 스크래핑
데이터를 수집하려고 브라우저를 띄웠다.
근데 서버에 디스플레이가 없다.
Chrome이 디스플레이 초기화 실패로 즉시 종료됐다.
헤드리스 서버에서 브라우저 자동화를 쓸 수 없을 때의 fallback 체인을 정리했다.
1단계: jina.ai reader
브라우저를 안 쓰고 웹페이지를 가져오는 방법이다.
jina.ai reader 프록시에 URL을 넘기면, HTML을 마크다운으로 변환해서 준다.
브라우저가 필요 없다.
2단계: 도메인 확인
근데 400 에러가 났다.
원인은 도메인 오타였다.
코스피랩을 kosbilab으로 잘못 적은 거다.
fetch 에러는 도메인 오타 신호일 수 있다.
“왜 안 되지”라고 하기 전에 도메인을 먼저 확인해야 한다.
3단계: 검색 엔진 우회
구글은 리다이렉트를 차단했다.
DuckDuckGo HTML 엔드포인트로 우회했다.
검색으로 정확한 도메인을 찾고 거기서 데이터를 가져왔다.
fallback 체인의 교훈
브라우저가 안 되면 reader 프록시를 쓴다.
reader가 안 되면 도메인을 확인한다.
도메인이 틀리면 검색으로 찾는다.
각 단계마다 실패 원인이 다르고 해결 방법도 다르다.
하나가 실패했다고 전체가 실패한 게 아니다.
마무리
이날의 핵심은 “안 될 때 우회하는 법”이었다.
주말에 정규장이 안 열리면, 해외 추정가랑 야간선물로 방향을 가늠한다.
근데 이건 참고일 뿐이다.
참고지표를 투자 지표로 착각하면 안 된다.
브라우저가 안 되면 reader 프록시를 쓴다.
도메인이 틀렸으면 검색으로 찾는다.
각 실패에 맞는 우회가 있다.
“안 된다”고 포기하지 말고 왜 안 되는지 원인을 찾고 그 원인에 맞는 우회를 적용해야 한다.