본문 바로가기

분류 전체보기225

Walk Forward Optimization (전진 최적화) 방법에 대한 생각 Not Anchored와 Anchored를 두고 많은 고민과 시행착오를 거쳤지만 지금은 Not Anchored 방식으로만 최적화된 전략을 운영하고 있지는 않다. 아래는 실제로 Platinum 선물을 가지고 간단한 돌파 로직을 적용한 전략의 Equity curve다. Not Anchored 방식의 전진 최적화 방법을 적용할 경우에 벌어질 일들을 시점별로 상상해 봤다. 우연히 A구간에서 성과가 좋은 전략을 만들었다. A구간에서 얼마만큼의 기간을 In-sample data와 Out-of-sample data로 나눌 것이냐? 이런 고민은 사실 무의미하다. 이 전략은 A구간 동안 꾸준히 수익을 난다. 극단적으로 저런 구간이 나온다면 어차피 전진최적화 따위 하지 않더라도 수익이 난다. 이제 B구간에 돌입하게 된다... 2024. 5. 10.
"너는 ...해서 잘 모르겠지만" 나는 직장 생활을 할 때 항상 새로운 사람들을 만날 일이 많았다. 첫 직장에서는 매년 신입사원들만 많게는 20~30명이 입사하고는 했고 매년 새로운 고객들을 만나 명함을 주고받았다. 두 번째 직장에서는 그룹의 기획팀에 있다 보니 계열사의 많은 현업 담당자분들을 만날 수 있었다. 세 번째 직장에서는 아쉽게도 신입사원은 구경하기조차 어려웠지만 첫 번째 직장보다 더 많은 고객들을 만날 수 있었다. 극에 가까운 I인 나는 힘겹게 E에 가까운 가짜의 나를 보여줘야 했고 거짓 E를 흉내 내며 몸에 맞지 않은 옷을 입은 채 주중 내내 사람들과 대화하고 회식을 마치고 주말이 되어 가까스로 평소의 I로 돌아온 나는 기진맥진해서 흔히 주말 내내 아무것도 할 수가 없는 생활이 반복되었다. 그렇게 사람들을 대하다 보니 자연스.. 2024. 5. 10.
Heating Oil 전략 개발 #2 Heating Oil 1번 전략보다 거의 비슷한데 조금 더 안정적인 듯한 느낌.돌파전략을 구상했는데 수익이 안정화되는 파라미터를 따라가다 보니 필터값들이 모두 충족되었을 때 진입하는 형식이 되어버렸다. 2024. 5. 7.
Copper 전략 개발 #2 (Long/Short) 기존 전략보다 거래 횟수가 많은 전략을 생각했다. 최대한 추세가 안전하게 형성된 상황에만 진입하는 것으로 필터를 적용했는데 괜찮은 성과가 나왔다. 사실 Short전략은 만들 생각이 없었는데 Long전략을 뒤집어서 적용해 보니 의외로 우상향 하는 그래프가 나왔다. 2024. 5. 6.
[Python] Qtimer의 시작과 종료할 시간 설정하기 ChatGPT에게 물어본 코드를 조금 수정했다. import sysfrom PyQt5.QtCore import QTimer from PyQt5.QtWidgets import QApplicationfrom datetime import *def start_main_timer(): program_init_time = datetime.now() # 1초 간격으로 타이머 실행 main_timer = QTimer() main_timer.setInterval(1000) main_timer.timeout.connect(timer_action) # 타이머의 시작 시간과 종료시간을 설정 (코드 실행시간으로부터 10초 후 실행, 이후 1분 경과시 종료) start_time = progr.. 2024. 5. 3.
[Python] os.walk - 하위폴더 내의 모든 파일 리스트 검색하기 https://docs.python.org/3/library/os.html#os.walk os — Miscellaneous operating system interfacesSource code: Lib/os.py This module provides a portable way of using operating system dependent functionality. If you just want to read or write a file see open(), if you want to manipulate paths, s...docs.python.org  import ossummary_filelist = []for path, dir, files in os.walk(".."): for filename .. 2024. 5. 3.
24번째 캠핑 오늘은 계획에 없던 캠핑을 왔다.  사실은 주말 동안 전략 코드들을 업데이트한 것들이 꽤나 많이 있고 매매 프로그램과 위험관리 프로그램까지 대대적인 공사를 했던 탓에 내일 새벽까지 모니터링이 불가피한 상황이었다. 어제 밤새도록 돌려놨던 시뮬레이션 결과를 아침에 확인했는데 한숨만 나왔다. 쳐다보기도 싫어서 오늘 테스트하기로 했던 전략들의 시뮬레이션 배치파일을 돌려놓고 캠핑장을 예약하고 장을 보고 급하게 캠핑장으로 왔다.  이제 5월이면 캠핑 7개월차가 된다. 기간은 짧지만 오늘로서 24번째 캠핑을 맞이했다. 나름 굉장히 숙련된(?) 캠퍼라고 자부하고 있다. 거의 일주일에 한 번 꼴로 캠핑을 다녔는데 그동안의 캠핑라이프에 대해서 잠깐 이야기해보려고 한다.  나는 원래 잠은 집에서 자야한다는 확고한 철학을 가.. 2024. 4. 29.
전체 포트폴리오 조정 지수선물만으로 가득 찬 포트폴리오에 새 전략군들을 추가해야겠다고 생각했다.CME 쪽 시세이용료를 더 내는 만큼 꼭 추가하고 싶은 상품군들의 전략들을 있었고 이들을 개발하고 추가하는데 거의 한 달 반이 걸려서 1차적으로 오늘 마무리 됐다.  Heating Oil 전략은 좀 더 보완이 필요해서 적용하지 않았고 Nikkei 225 Dollar와 Euro FX의 전략 개발은 천천히 진행할 생각이다. 그보다 현재는 급하게 찍어내다시피 한 다른 전략들의 추가적인 최적화 작업도 필요하다.    코스닥 150과 코스피 200은 부진한 전략들 약 40%를 정리했고 남아있는 전략들의 비중도 손익의 변동성을 고려해서 줄일 수밖에 없었다. 아울러 여유자금을 넣어두던 ETF전략들을 일시적으로 중지하기로 했고 그 자금으로 차라리.. 2024. 4. 27.
Palladium 전략 개발 [Equity Curve]  [연도별/월별 손익]  대충 예상은 했지만 전략의 수익률도 그렇고 변동성도 화끈한 편이다.MDD 5% 안쪽으로 들어오는 파라미터가 별로 없다.5% 미만의 MDD를 원한다면 수익이 반토막이 난다.익스포져 기준의 5% 정도 손실은 그냥 견뎌야 한다는 거다. 2024. 4. 24.