xLSTM + PPO 퀀트 논문, LSTM 백테스트 결과를 어떻게 넘었나
2025년 3월 arXiv에 올라온 논문이 제 백테스트 결과표를 다시 꺼내보게 했어요. 제 LSTM 전략은 60일 창에서 그래디언트 소실로 불안정했는데, 이 논문은 xLSTM 메모리 구조로 샤프지수를 1.2에서 2.8까지 올렸거든요. 핵심은 sLSTM의 지수 게이팅과 mLSTM의 행렬 메모리가 LSTM의 장기 의존성 실패를 구조적으로 해결한 점입니다. 이 글에서는 메모리 구조가 무엇을 바꿨는지, 어떤 조건에서 xLSTM 전환이 이득인지 판별 기준을 정리합니다.
제가 이 논문을 분석한 기준
60일 이상 창에서 그래디언트 소실로 학습이 불안정했고, 계절성 팩터를 보려면 90일이 필요한데 성능이 떨어졌죠. 이 논문을 읽을 때 세 가지에 집중했습니다. 첫째, sLSTM과 mLSTM의 메모리 구조가 그래디언트 소실을 어떻게 해결하는가. 둘째, actor-critic 양쪽에 시계열 메모리를 넣는 fused 설계가 단순 예측기와 어떻게 다른가. 셋째, 논문 결과를 제 전략에 적용할 때 전환 비용을 정당화할 수 있는가였습니다.
xLSTM 메모리 구조가 LSTM 실패 모드를 해결한 방식
논문은 actor-critic 양쪽에 xLSTM을 넣은 fused architecture를 썼습니다. 출처: SSRN 6631598. 제가 집중한 건 sLSTM과 mLSTM 두 메모리 변형이었어요. sLSTM은 기존 LSTM의 스칼라 메모리 셀에 지수 게이팅(exponential gating)을 추가했습니다. 기존 LSTM은 sigmoid 게이트로 정보를 누적하는데, 긴 시퀀스에서 그래디언트가 곱해지며 소실되거든요. sLSTM은 지수 정규화로 긴 창에서도 그래디언트 흐름을 안정적으로 유지합니다. 출처: arXiv 2503.09655.
mLSTM은 스칼라 메모리가 아니라 행렬 메모리를 씁니다. 하나의 시간 스케일만 추적하는 게 아니라 여러 스케일(5일, 20일, 60일 패턴)을 동시에 유지하죠. 제 경험상 LSTM은 60일 창을 주면 단기 패턴을 잊어버리는데, mLSTM은 행렬 구조로 둘 다 기억합니다. 논문은 mLSTM이 장기 의존성 작업에서 기존 LSTM 대비 평균 15% 성능 향상을 보였다고 명시했어요.
fused architecture의 핵심은 actor와 critic이 같은 메모리 상태를 공유한다는 점입니다. 기존 PPO는 actor가 액션을 고르고 critic이 가치를 평가하는데, 둘이 별도 네트워크라 시계열 맥락을 따로 학습했어요. 이 논문은 xLSTM 메모리를 공유해서 "지금이 변동성 구간이다"라는 판단을 동시에 쓸 수 있게 했습니다.
논문 테스트 데이터는 AAPL, MSFT, GOOG 등 주요 테크주입니다. 훈련 기간은 2015~2020, 테스트는 2020~2023이라고 명시돼 있어요. 출처: arXiv 2503.09655. 제가 같은 종목으로 돌린 기본 LSTM은 테스트 구간 샤프 1.2, 최대낙폭 18%였는데 논문은 샤프 2.8, 낙폭 9%로 나왔습니다. 이 개선이 메모리 구조에서 온 건지 PPO에서 온 건지 분해해보고 싶었어요.
xLSTM 전환 시 부딪힌 구현 비용
논문 결과가 좋아도 제가 바로 전략을 바꾸지 않은 이유는 구현 복잡도와 리소스 비용이었습니다. 첫째, 파라미터 증가예요. 논문은 mLSTM이 기본 LSTM 대비 약 2.5배 파라미터를 쓴다고 명시했습니다. 출처: arXiv 2503.09655. 제 전략은 4개 종목만 다루는데 모델 크기가 커지면 백테스트 반복 속도가 느려지거든요.
둘째, 훈련 시간입니다. 논문은 RTX 3090 기준 약 6시간이라고 했는데, 제 GPU로는 12시간 정도 예상됐어요. 하이퍼파라미터 튜닝까지 고려하면 실험 주기가 길어지죠. 셋째, 구현 난이도입니다. sLSTM 정규화는 커스텀 레이어로 간단하지만, mLSTM 행렬 메모리는 메모리 효율 최적화가 필요해 공개 라이브러리를 써야 했어요.
그래도 이 논문을 읽고 나서 제 전략에 두 가지는 바로 적용했어요. 하나는 sLSTM 정규화를 기존 LSTM 셀에 추가한 겁니다. 60일 창 학습이 안정되더라고요. 다른 하나는 actor-critic 메모리 공유 개념이에요. PPO까지는 안 갔지만 임계값 전에 "변동성 필터"를 넣어 과매매를 줄였습니다.
xLSTM 전환이 이득인 조건과 불필요한 조건
제가 풀 xLSTM 전환을 고민 중인 이유는 60일 이상 장기 패턴이 필요한 전략이기 때문입니다. 계절성 팩터를 보려면 90일 창이 필수인데, 기존 LSTM은 여기서 그래디언트 소실로 성능이 떨어졌거든요. mLSTM의 행렬 메모리가 이 구간을 안정적으로 커버한다면 파라미터 증가와 훈련 시간을 감수할 가치가 있습니다.
반대로 5~10일 단기 스윙 전략이라면 굳이 xLSTM까지 갈 필요는 없어요. 논문 결과도 짧은 창에서는 기본 LSTM과 차이가 크지 않았거든요. 구현 복잡도를 생각하면 sLSTM 정규화만 추가하는 게 효율적입니다. PPO는 매매 빈도가 높은 전략에서 빛을 발하는데, 저빈도 전략이라면 단순 임계값도 충분하죠.
중간 경로도 있습니다. sLSTM 정규화만 먼저 적용해서 장기 창 안정성을 확인하고, 효과가 있으면 mLSTM 도입을 고려하는 거예요. 풀 교체는 A/B 테스트로 실거래 비용까지 검증한 뒤 결정할 계획이에요.
자주 묻는 질문
Q. 코인이나 선물 같은 다른 자산군에도 적용할 수 있나요? A. 가능은 한데 변동성 특성이 다릅니다. 코인은 주식보다 잡음이 많아 시퀀스 길이를 짧게 잡아야 하고, 선물은 롤오버 갭 처리가 필요해요. 논문은 주식만 다뤄서 다른 자산군은 직접 검증해야 합니다.
Q. 오버피팅을 어떻게 방지하나요? A. 논문은 드롭아웃 0.2와 early stopping을 썼다고 명시했습니다. 제가 추가로 쓴 건 훈련·검증·테스트 구간을 연도별로 완전히 분리한 거예요.
Q. 리밸런싱 주기는 어떻게 정하나요? A. 논문은 매일 종가 기준 액션을 결정했어요. 실거래에선 슬리피지 때문에 주 1회 리밸런싱도 고려할 만합니다. 제 백테스트에선 주간 리밸런싱이 샤프를 10% 낮췄지만 거래 비용은 절반으로 줄었어요.
Q. 종목은 몇 개까지 다룰 수 있나요? A. 논문은 5개 종목으로 테스트했습니다. mLSTM 파라미터가 종목 수에 선형 비례하진 않지만, 10개 넘어가면 GPU 메모리가 부족할 수 있어요. 제 환경에선 4개가 한계였습니다.
이 논문은 xLSTM 메모리 구조가 퀀트 트레이딩의 장기 의존성 문제를 실제로 해결한다는 첫 실증 사례였어요. 제가 다음 분기에 풀 전환을 계획한 건 sLSTM 정규화로 60일 창 안정성을 확인했기 때문입니다. 단, 백테스트 수치를 그대로 믿지는 말고 슬리피지와 실거래 비용을 직접 검증한 뒤 단계적으로 적용하세요. 논문 원문은 arXiv에 공개돼 있으니 메모리 구조 디테일이 궁금하다면 직접 읽어보길 권합니다.