주제별 원본 삽화: ChainView BTC866 주제별 원본 도해 · ChainView BTC866 Editorial · CC BY 4.0
그때 알 수 있던 자료
과거 시점의 매매 판단에는 그 시점까지 공개된 자료만 사용할 수 있습니다. 나중에 수정된 지표나 확정된 분기 수치를 이전 날짜에 넣으면 미래 정보가 새어 들어갑니다. 이벤트 발생 시각과 실제 자료 공개 시각을 나누고 공급자의 수정 이력을 저장하세요. 가격 종가로 신호를 만든 뒤 같은 종가에 즉시 전량 체결했다고 가정하는 경우에도 시점 순서가 맞는지 확인해야 합니다.
사라진 자산도 포함
현재 살아남은 코인과 거래소만 고르면 상장 폐지나 서비스 종료로 손실을 본 경로가 빠집니다. 당시 이용할 수 있었던 투자 대상을 날짜별로 구성하고 이름 변경과 이전 계약도 추적하세요. 자료가 없는 실패 자산을 수익률 영으로 대체하면 위험을 작게 보일 수 있습니다. 처분 불가능 상태와 회수 금액에 관한 가정을 명시하고 결과에 미친 영향을 따로 분석해야 합니다.
실행 가능한 가격
수수료와 스프레드, 주문 크기와 지연, 시장 깊이를 반영합니다. 체결되지 않은 주문을 모두 원하는 가격에 매매한 것으로 처리하면 매끈한 곡선이 만들어집니다. 교육용으로 주문량을 늘릴 때 체결 가격과 미체결 비율이 바뀌도록 해 보세요. 출금 중단이나 지역별 이용 제한도 실제 전략 수행에 영향을 주며 데이터에 있는 가격이 언제나 개인이 거래할 수 있는 가격은 아닙니다.
선택과 평가 분리
많은 매개변수를 시험한 뒤 가장 좋은 결과만 보여 주면 우연한 패턴을 전략으로 오해하기 쉽습니다. 시험 횟수와 선택 기준을 남기고 학습에 사용하지 않은 구간에서 평가합니다. 외부 평가 결과를 보고 다시 조정했다면 그 구간은 더 이상 완전히 독립적이지 않습니다. 기간과 시장 조건을 바꿨을 때 결론이 얼마나 흔들리는지도 공개하고 불리한 결과를 숨기지 않습니다.
재현 가능한 보고서
데이터 버전, 결측 처리, 수수료와 환산 통화, 코드 설정과 사용 가능 시점을 함께 보존합니다. 결과에는 최고 수익뿐 아니라 낙폭과 거래 빈도, 회전율과 비용 민감도를 보여 주세요. 과거 곡선이 좋아도 미래 수익을 실현할 수 있다는 증거는 아닙니다. 모델 가정이 깨지는 상황을 구체적으로 적고 실거래 위험 한도와 연구 결과를 분리해야 합니다.
결과 선택의 흔적
성과가 가장 좋았던 매개변수만 발표하면 실제로 몇 번 실패했는지 독자가 알 수 없습니다. 실험 목록과 선택 이유를 남기고 모든 시험이 같은 자료를 얼마나 반복 사용했는지 표시하세요. 상장 전 가격이나 나중에 알려진 주소 라벨을 과거 판단에 넣는 실수도 점검합니다. 지연을 조금 늘리거나 수수료를 바꿨을 때 이익이 사라지는 전략은 그 민감도를 숨기지 않아야 합니다. 재현 보고서에는 잘 나온 그래프뿐 아니라 데이터 제공 중단과 체결 불가 상황을 어떻게 처리했는지까지 포함하는 편이 유용합니다.



