본문 바로가기

Quant

(50)
주도 테마 & 대장주 로직 업데이트 (2) 백테스팅이 생각만큼 쉽지 않고, 개선을 해도 수익률은 아직 마이너스만 나온다.그래도 닿을 수 있다는 희망이 보였다. 다시 기어서라도 도전한다. 백테스팅 분석 해당 일자에는 특정 테마가 계속 순환하는 양상을 보이고, 해당 테마가 변경되는 동안 대장주도 계속 변경된다.이재명 주 -> 2차전지 -> 지주사 -> ... 인포스탁에서 결과는 아래와 같다.- 정치/인맥(이재명& 김문수& 한동훈 등)/ 일자리/취업/ 출산 등 -尹 대통령 탄핵심판을 하루 앞두고 상승- 자동차/2차전지 등 -美 상호관세 발표 속 트럼프 대통령, 한국 자동차 비관세 장벽 비판 등에 하락매매를 한다면, 이재명주만 매매를 했어야 하고, 2차전지는 잡지 말았어야 한다.2025-04-04 09:20:00A025950동신건설BUY67400.01..
주도 테마 & 대장주 로직 업데이트 (1) 부처님 오신 날 맞이해서 가족들이랑 절 갔다왔다.나는 굳이 따지면 무교인데. 집은 불교이고, 세례명도 받았고 이슬람 이름도 있다.버프는 많이 받으면 좋으니까... 주도테마 로직을 교체하고, 일자별 백테스팅을 하며 로직을 업데이트 하다가특정 일자의 교체가 전체적으로 영향을 주는 경우가 빈번하여 더 직관을 살려 거시적인 프로세스의 개선이 필요함을 체감했다. 무엇을 살 것인지 정하는 것에서 시작했다면, 그것보다 더 근본적인 어떤 스타일로 매매할 것인지 정한다.원하는 매매 스타일은 데이 트레이딩이며, 주도테마 & 대장주가 파악되었다면 그것만 1~2번 매매하는 것이다. 그래서 지금 테마 교체, 대장주 교체 횟수를 체크해보니 아래와 같이 매우 빈번한 날도 있다.테마 교체보다 대장주 변경에 주목한다. 동일한 테마라..
정치테마 업데이트 기능 & 화면 개발 최근 링크드인, 이력서, 포트폴리오를 업데이트하면서 했던 업무들을 정리해봤다.돌이켜보니 잘하는 방법을 몰라서 열심히 하기만 했던 날들이었다. 작년에 실리콘 밸리 출장 전에 오픈소스 릴리즈 일정 맞추려고 근 4달 동안 야근 +76시간 찍으면서,주말도 평일도 회사 숙직실에서 먹고 자고 했던 것도,새벽 2시에 선배 허락받고 사무실에서 매일 소리 지른 것도,파트원들이랑 번아웃 테스트한 것도 생각난다.누가 삼성 꿀이라 했나...25.4.7 분석을 살펴보니 디버깅 할 작업량이 꽤 있다. 1. 대장주 교체 타이밍 이슈 체크주도 테마 교체- 09:25(자동차 부품) -> 09:30(엔젤 산업)2025-04-07 09:30:00자동차부품A065500오리엔트정공BUY13970.0715899997260.00.0None202..
주도 테마 선정 로직 업데이트 사수였던 선배가 육아 휴직을 하다가 이직을 했다.코딩빼고 다 가르쳐주던 좋은 선배였는데, 또 못본 사이에 열심히 사신 거 같아서 멋지다. 신입 때 내가 회식을 1차까지만 해봤다는 애기에 깜짝 놀라서, 새벽 4시까지 7차로 코인 노래방 데려가던 누나인데회사 생활을 돌이켜보면 뭐 개발했는지는 보다는 이런 것만 생각난다 ㅋ.ㅋ1. MongoDB Atlas issuepymongo.errors.OperationFailure: cannot create a new collection -- already using 500 collections of 500, full error: {'ok': 0, 'errmsg': 'cannot create a new collection -- already using 500 collec..
퀀트 전략 업데이트 (11) : Validate output data 자전거 타고 양재천을 출퇴근하는데 10~15분 정도 걸린다.요즘처럼 벚꽃이 피거나 가을에 단풍이 이쁠 때는 출퇴근 길이 양재천이라 좋다.서울 직장인 중에 가장 행복하게 출퇴근 하는 사람이 아닐까 싶다. 투자 전략 수익 극대화보다 이를 위한 백테스팅 안정화 로직이 우선이다.현재 시스템이 안정적인이 체크 후에 수익 극대화 전략 창출 -> Trading bot 실행으로 간다.  1. 전체 백테스팅 결과와 하루치 백테스팅 결과 대조통합 백테스팅 결과와 하루치 백테스팅 결과를 대조했을 때,일부 일자에서 5분 단위(1 row)로 매수 타이밍이 안 맞는 경우는 있지만 그 외의 경우는 데이터가 정확하다. backtrader 동작 원리를 더 자세하게 뜯어보는 것도 좋지만,5분봉 기준 백테스팅도 1분 단위로 실행하는 실제..
퀀트 전략 업데이트 (10) : Validate input data 요즘 주식 시장도 그렇고 정세가 뒤숭숭하다.트럼프 황제 폐하의 땡깡으로 미장도 스근하게 내려가고, 어제는 윤석열 전하가 폐위되고 국장도 정치 테마주만 움직인다. 이럴 때일수록 스윙 매매가 어렵고, 단타 매매를 빨리 개발해야겠다는 생각이 들고,위기. 위험도 있지만 기회도 있으니 잘 대비해서 기회를 잡으라는 떠나간 세바스찬 소장님의 말씀이 떠오른다.하루치 백테스팅 로직 완성 이후통합 데이터 백테스팅을 돌렸는데, 돌아는 가는데 결과가 이상하다.어떻게 수익이 저렇게 찍히지 하면서 디버깅을 해보니 매수/매도 전략과 백테스팅 클래스에는 문제가 없다.  input으로 사용하는 dataframe이 중복되는 datetime이 있고, validation 로직이 없어 이를 체크하지 못했던게 문제였다.validation 로직..
퀀트 전략 업데이트 (9) : Apply Backtrader 주말에 스포엑스를 갔다왔다.9년 전에 처음 광희 형이 데려갔을 때는 신기하기도 하고 다이빙 업체도 빠이팅이 넘쳤는데 매년 다를 것도 없고, 할인도 강사가랑 차이가 없다.갯민숭달팽이 스티커 받은게 유일한 소득이라 이제 앞으로 갈 일은 없을거 같다.라이브러리를 도입했더라도 기존 코드를 대체하는 건 어렵다.내가 기존에 작성한 전략에 맞게 커스터마이징을 하며 대체하느라 삽집을 꽤 많이했다.   그와 병행하여 데이터 파이프라인 안정화 작업도 진행했다.작업한 건 많은데, 이미 겪었던 오류를 다시 파악해서 해결하고공개하고 싶지 않은 전략 코드라 블로그에 적을 게 오늘은 별로 없다..
퀀트 전략 업데이트 (8) : Vive coding 삐져나온 머리를 살짝 잘랐다가, 바가지 머리가 돼서 또 한쪽을 더 자르다가쥐 파먹은 머리가 됐다가... 어쩔 수 없이 미용실에 갔다. 쪕...Backtrader 적용에 생각보다 시간이 걸렸다.기존에 사용했던 매수/매도 전략을 모두 그대로 반영해야 했고,해당 라이브러리에서 제공하는 클래스와 메소드를 인지하고 예외에 대해서도 대응해야 했기에 코드가 길어졌다. 결론부터 말하면 backtrader 라이브러리 적용은 매우 좋은 선택이었다. 1. 시간 단축은 애매- 아직은 효과가 미미하다. 단일 일자로만 백테스팅을 했고, 복잡도를 낮추기 위해 모든 dataframe을 연결하지 않고 일자별로 dataframe을 분리하고, indicator도 내장 함수를 활용하지 않고 계산 후 입력했다. 2. 백테스팅 로직 이해도 상..