본문 바로가기

Quant

퀀트 전략 업데이트 (8) : Vive coding

삐져나온 머리를 살짝 잘랐다가, 바가지 머리가 돼서 또 한쪽을 더 자르다가
쥐 파먹은 머리가 됐다가... 어쩔 수 없이 미용실에 갔다. 쪕...

chatGPT 신규 기능인데 신기하다..

Backtrader 적용에 생각보다 시간이 걸렸다.
기존에 사용했던 매수/매도 전략을 모두 그대로 반영해야 했고,
해당 라이브러리에서 제공하는 클래스와 메소드를 인지하고 예외에 대해서도 대응해야 했기에 코드가 길어졌다.
 
결론부터 말하면 backtrader 라이브러리 적용은 매우 좋은 선택이었다.
 

1. 시간 단축은 애매

- 아직은 효과가 미미하다. 단일 일자로만 백테스팅을 했고, 복잡도를 낮추기 위해 모든 dataframe을 연결하지 않고 일자별로 dataframe을 분리하고, indicator도 내장 함수를 활용하지 않고 계산 후 입력했다.
 

2. 백테스팅 로직 이해도 상승

- 혼자서 짠 백테스팅 로직이 backtrader에서 제공하는 플로우/데이터 필드와 거의 동일해서 로직을 파악하는데는 시간이 오래 걸리지 않았다.
- 그 외에 내가 생각한 것과 다르게 계산되는 것들이 있었는데, 내 도메인 지식의 부족함으로 인해 생긴 공백을 라이브러리가 메꿔준다.
 
 

backtrader trades result

 

legacy trades result

 
전략을 공개하지는 않지만, Backtrader로 기존 로직과 동일하게 구현하는데 성공했다.
이제 코드를 조금 다듬고 전체 백테스팅을 하면 된다.


Backtrader 적용은 그러려니 해도, 그 적용 과정에서 LLM을 활용한 vive coding을 했는데 놀란 부분이 많다..

vive coding. 처음에는 그냥 ai 써서 코딩하는건데 무슨 스근한 이름도 붙이고 깝죽거리나 했지만, 써보니 깝죽거릴만하다...
 
1. RAG 기능으로 링크 기반 라이브러리 학습 가능
2. Multi turn
3. code interpreter 기능 제공
...
 
이런 기능 덕에 내가 굳이 복잡도가 높은 라이브러리 매뉴얼을 하나씩 안 봐도 되고, 직접하는 것보다 더 빠르고 깔끔하게 코드를 제공해준다.
 
5년 전 텍스트 입력으로 HTML 코드를 제공해주는 서비스가 등장했을 때도 개발자 사이에서 파급력이 컸고, 그 여파로 Publisher 라는 직업이 멸종됐다.
이제 Vive coding 서비스의 등장으로 페이스북에서도 중니어 미만 개발자는 이제 다 AI로 대체한다고 한다.
 
아직은 단일 프로세스 / 단일 파일에 대해서만 적용을 해주고, 전체 컨텍스트를 파악하는 기능은 비교적 떨어지는 거 같지만 이것도 조만간이다... 뭐 먹고 살지..
 
 
 
 

728x90