전략 알고리즘을 분석용으로 작성하여 백테스팅 할 때와 달리, 실전투자에 적용할 때 주의할 점을 정리해 보겠습니다. 아래 사항을 반드시 따라 주셔야 스크립트가 정상적으로 작동하니 꼭 숙지해 주시기 바랍니다.
1. iQ Live 알고리즘 등록/변경의 당일 적용 기준은 오후 6시
iQ Live에 등록한 알고리즘을 자동 실행하는 시간은 매 거래일 장마감 후 오후 6시경입니다. 만일 알고리즘을 새로 등록하거나, 소스코드 업데이트, 투자금액 변경 등을 당일 실행 때부터 적용하고자 한다면, 반드시 오후 6시 이전에 등록/수정을 완료해 주어야 합니다.
2. 복수계좌 사용 주의
아래 규칙을 지켜야만 복수계좌 사용한 전략의 iQ Live 등록이 가능합니다.
a.
블록 알고리즘은 복수계좌를 지원하지 않습니다. 스크립트 알고리즘으로 작성한 경우에만 사용 가능합니다..
b.
onComplete() 함수에서 iQ Live에 포트폴리오를 등록할 때, 하나의 Account에 속한 Basket들만 등록해야 합니다.
onComplete(): 전략이 최종날짜(iQ Live에서는 장 마감된 당일)까지 시뮬레이션 방식으로 실행된 후 마지막 호출되는 함수
쉽게 말하면, 계좌 A에 담긴 종목과 계좌 B에 담긴 종목 포트폴리오를 섞어서 등록하면 안 된다는 뜻입니다.
3. 시뮬레이션 설정 (매매가격 가정 설정) 주의
IQEnvironment.simulationMethod = SimulationMethod.day
// 매매 시뮬레이션을 위한 매매가격 가정에 대한 설정 옵션
//(블록 알고리즘에서는 거래가격 가정 : 당일 종가)
Java
복사
이 옵션을 사용하시면 안 됩니다.
SimulationMethod.day는 "당일 종가에 바로 거래가 완료됐다"고 가정하는 백테스트 전용 설정입니다.
iQ Live는 매일 오후 6시에 알고리즘을 실행해서 새로운 포트폴리오가 추출되는지를 체크하고 다음 거래일에 종목들을 매매하는 리밸런싱 실행 여부를 사용자 알림 또는 나무증권 자동주문 서비스에 전달하고 있습니다.
그런데 이 옵션이 켜져 있으면 포트폴리오 변경 종목 매매까지 이미 완료된 것으로 처리하는 바람에, 실제로는 다음 거래일에 매매를 해야 함에도 불구하고 사용자 또는 나무증권에게 리밸런싱을 해야 한다는 알림이나 통보를 주지 않습니다.
쉽게 말하면 이렇습니다:
결국 포트폴리오 변경이 필요한 상황을 제대로 알려 주지 않는 오작동이 발생합니다.
알고리즘에서 이 설정을 사용 중이라면 이 부분을 삭제하거나 주석 처리해 주세요.

