인버스 퍼페추얼의 P&L은 어떻게 계산할까요?
계약당 고정된 달러 액면가를 갖는 표준 인버스 퍼페추얼의 경우, 트레이딩 P&L은 가격의 역수를 이용해 계산합니다. 결과값은 정산 코인 단위로 나옵니다. 가격 변화에 고정된 BTC 수량을 곱하면 전혀 다른 상품이 되어버립니다.
가상의 BTC 인버스 계약이 $1의 액면가를 가진다고 가정해봅시다. BTC당 $50,000에 100,000계약을 매수하고, $55,000에 전량 청산합니다. 수수료와 펀딩을 제외하면:
Q = signed contract count; positive for a long
C = dollar face value per contract
P&L_BTC = Q × C × (1 / entry_price − 1 / exit_price)
= 100,000 × $1 × (1 / $50,000 − 1 / $55,000)
= 0.18181818 BTC
P&L_USD_at_exit = 0.18181818 × $55,000
= $10,000
이 포지션은 $100,000의 계약 액면가를 가집니다. BTC 환산값은 가격에 따라 달라지는데, 진입 시점에는 2 BTC, 청산 시점에는 약 1.818182 BTC입니다. 이렇게 변하는 환산값이 있기 때문에 저는 회계 코드 옆에 계약 명세를 항상 함께 두고 싶습니다. size라는 이름의 컬럼은 누군가 어떤 단위를 의도했는지 알아내느라 금요일 저녁을 통째로 날리게 되는 초대장과 같습니다.
거래소의 승수, 정산 통화, 반올림 규칙을 반드시 확인하세요. “인버스”는 손익 지급 방식을 설명하는 용어일 뿐, 모든 거래소에서 계약 1개가 곧 1달러를 의미한다고 보장하지는 않습니다.
트레이드가 벌어들인 금액보다 계좌가 더 많이 늘어나는 이유는 무엇인가요?
담보 자산에도 가격이 있기 때문입니다.
$50,000 상당의 1 BTC 담보로 시작해서 위 트레이드를 실행해봅시다. 입출금, 수수료, 펀딩은 없다고 가정하고, 마진은 전 구간에서 충분하다고 가정합니다. 청산 후 계좌는 1.18181818 BTC를 보유하게 됩니다. BTC당 $55,000이므로 이는 $65,000에 해당합니다.
| 항목 | 계산 | 달러 변화 |
|---|---|---|
| 원래 담보 | 1 BTC × ($55,000 − $50,000) | +$5,000 |
| 청산 시점 기준으로 평가한 파생상품 P&L | 0.18181818 BTC × $55,000 | +$10,000 |
| 총 계좌 에쿼티 | $65,000 − $50,000 | +$15,000 |
트레이드 원장과 계좌 에쿼티 커브는 서로 다른 질문에 답합니다. 리포트가 $15,000 전체를 시그널 P&L로 표기한다면, 상승장 동안 담보를 그대로 보유했던 효과까지 전략의 성과로 잘못 인정해주는 셈입니다.
반대의 경우도 중요합니다. 전략이 BTC를 계속 늘려가면서도 달러 에쿼티는 줄어들 수 있습니다. 두 차트 중 어느 쪽도 본질적으로 틀린 것은 아닙니다. 버그는 이 둘을 아무런 설명 없이 뒤바꿔 쓰는 데서 생깁니다.
백테스트 수익률은 BTC 기준으로 재야 할까요, USD 기준으로 재야 할까요?
전략을 비교하기 전에 보고 통화를 먼저 정하고, 두 가지 관점을 모두 항상 볼 수 있게 남겨두세요. 이 계좌의 경우 BTC 기준 수익률은 18.18%이고 달러 기준 수익률은 30%입니다. 둘은 같은 결과를 서로 다른 방식으로 측정한 값일 뿐입니다.
미국 주식, 스테이블코인 정산 선물, 코인 정산 계약을 함께 비교할 때는 보통 달러 계좌 에쿼티를 공통 보고 지표로 사용합니다. 반면 BTC 축적을 목표로 정의된 리서치 과제라면 BTC 기준 지표도 동등한 비중으로 다뤄야 합니다. 어떤 지표를 선택하느냐에 따라 수익률 분포, 드로다운, Sharpe 비율이 달라집니다.
패시브 담보 벤치마크를 함께 포함하세요. 이 예시에서는 처음의 1 BTC를 그대로 들고만 있었어도 달러 기준 10%의 수익률이 나왔을 것입니다. 계좌는 이 구간에서 해당 벤치마크를 20%포인트 앞섭니다. 이 차이는 이 예시를 설명해줄 뿐, 알파를 입증하거나 그 과정에서 취한 파생상품 익스포저를 조정해주는 것은 아닙니다.
필드 이름에 단위를 명시하세요. equity_btc, equity_usd, pnl_btc를 사용하세요. 단위 표기가 없는 equity 컬럼은 두 가지 계약 유형이 하나의 리포트에 함께 들어오는 순간 위험해집니다.
백테스트는 BTC로 지불된 수수료와 펀딩을 어떻게 기록해야 할까요?
실제 코인 이동이 발생한 시점에 그대로 기록하세요. BTC 수수료는 BTC 지갑을 줄이고, BTC 펀딩 수취는 지갑을 늘립니다. 해당 금액은 적용되는 계약 규칙과 과거 요율을 이용해 산출합니다.
그다음에는 거래 귀속과 계좌 평가를 구분하세요. BTC가 $50,000일 때 지불한 0.001 BTC 수수료는 지불 시점 기준 $50의 가치를 가집니다. 이후 BTC가 $55,000에 도달하면, 이 계좌는 해당 수수료를 지불하지 않은 동일한 계좌보다 $55 적게 보유하게 됩니다. 여기서 추가된 $5는 계좌를 떠난 코인에 대해 이후에 발생한 가격 변화분입니다.
두 수치 모두 유용할 수 있습니다. 과거 시점의 달러 환산 현금흐름을 시작 시점 달러 에쿼티에 그대로 더하기만 하면, 명시적으로 조정하지 않는 한 이 통화 효과를 놓치게 됩니다.
저는 코인 원장을 회계의 기준 소스로 삼고, 달러 평가액은 이로부터 파생시키는 방식을 선호합니다. 각 스냅샷 시점마다 지갑 잔고와 미실현 코인 P&L을 문서화된, 타임스탬프가 정확히 맞춰진 환산 가격을 사용해 평가하세요. 계약 마킹 가격과 보고용 환산 가격 사이에 의도적인 차이가 있다면 반드시 기록해두세요.
인버스 계약 회계 버그를 잡아내려면 어떤 테스트가 필요할까요?
저는 손으로도 답을 계산할 수 있을 만큼 아주 작은 합성 경로부터 시작합니다. 실제 시장 이력은 단위 오류를 그럴듯한 에쿼티 커브 안에 놀라울 정도로 잘 숨겨버립니다.
| 테스트 (비용 제외) | 예상 결과 |
|---|---|
| 동일한 가격으로 진입 및 청산 | BTC 기준 파생상품 P&L이 0 |
| 동일한 경로에서 포지션 부호만 반대로 | 파생상품 P&L의 부호가 정확히 반전 |
| 파생상품 포지션 없이 1 BTC만 보유; 가격이 $50,000에서 $55,000로 상승 | BTC 에쿼티는 1로 유지되고, 달러 에쿼티는 $5,000 상승 |
| 예시 포지션을 현재 마킹 가격으로 청산 | 미실현 P&L이 지갑으로 이동하되 총 에쿼티는 변하지 않음 |
마지막 테스트는 이중 계산을 잡아냅니다. 엔진이 실현 P&L을 반영하면서도 미실현분을 제거하는 것을 빠뜨리는 경우입니다. 부분 청산도 함께 테스트하세요. 청산된 계약만 P&L이 정산되어야 하며, 나머지 계약은 거래소의 회계 규칙에 따라 올바른 진입 원가를 그대로 유지해야 합니다.
인버스 전략에 대해 AI 리서치 에이전트는 무엇을 보고해야 할까요?
계약 수와 승수, 정산 통화, 초기 담보, 코인 현금흐름, 그리고 지정된 보고 통화 기준 에쿼티를 보고해야 합니다. 전략 커브와 함께 패시브 담보 커브도 나란히 제시하고, 그 차이를 명확히 정산해야 합니다.
자율 리서치 워크플로우라면, 저는 이 정산 과정을 백테스트를 승인하기 위한 필수 조건으로 두겠습니다. 옵티마이저는 넘겨받은 숫자가 무엇이든 그대로 순위를 매길 뿐입니다. 늘어나는 BTC 잔고가 트레이딩 시그널의 성과로 잘못 인정되고 있다면, 옵티마이저는 그 회계 오류를 아무렇지 않게 최적화해버릴 것입니다.
쓸모 있는 리포트라면 왜 이 트레이드가 $10,000를 벌었는데 계좌는 $15,000가 늘었는지, 마지막 정산 항목까지 남김없이 설명할 수 있어야 합니다. 그래야 다른 리서처가 실제로 검증할 수 있는 결과가 됩니다.
← 전체 글
