Search

계좌와 주문

인텔리퀀트에서는 실제 환경과 유사한 계좌를 생성하여 시뮬레이션을 진행합니다.따로 설정하지 않아도 기본적으로 하나의 계좌가 생성되며, 필요하다면 스크립트에서 여러 계좌를 추가로 생성하여 시뮬레이션 할 수 있습니다.

기본 계좌에 주문내기

시뮬레이션이 시작되기 전에 자동으로 내부적으로 하나의 계좌를 생성합니다.이 계좌만 사용하신다면 별도의 계좌 설정을 하지 않아도 됩니다.기본적으로 제공하는 계좌의 최초 설정 금액은 시뮬레이션이 시작될 때 사용자가 지정할 수 있습니다.
다음과 같은 방법으로 주문을 낼 수 있습니다.
IQAccount.getDefaultAccount().buy('A035420', 1); IQAccount.getDefaultAccount().sell( 'A035420', 1);
JavaScript
복사
그러나 여러 종목을 포트폴리오를 구성하여 여러 종목에 분산 투자 하는 경우에는 위에서 처럼 직접 주문을 내기 보다는 Basket 객체를 통하여 주문 내는것을 권장 합니다.

예수금 및 잔고 조회

예수금은 다음과 같이 조회할 수 있습니다.
logger.debug('cash : ' + IQAccount.getDefaultAccount().cash);
JavaScript
복사
그리고 잔고는 다음과 같이 조회할 수 있습니다.
var eggs = IQAccount.getDefaultAccount().getEggs();
JavaScript
복사
여기서 리턴되는 eggs는 code, quantity, mean 3개의 값을 갖는 객체의 배열입니다.
for(var i=0; i < eggs.length; i++) { var egg = eggs[i]; logger.debug(i + "번째 egg. 종목코드" + egg.code + ", 수량:" + egg.quantity + ", 평균 매수 가격:" + egg.mean); }
JavaScript
복사

계좌 평가

예수금을 포함한 계좌의 잔고 평가 금액은 getTotalEquity() 함수를 이용하여 조회할 수 있습니다.

IQAccount

인텔리퀀트에서 계좌를 나타내는 Account 객체들은 IQAccount라는 객체를 통해 제공 됩니다.이 IQAccount에서 기본 계좌를 가져올 수 있고, 추가로 계좌를 등록할 수도 있습니다.

계좌의 추가

IQAccount.addAccount('1111-1111-20', 100000000);
JavaScript
복사
//1억의 예수금을 가진 계좌를 추가합니다.
전체 Account는 IQAccount.accounts 배열을 통해 가져올 수 있습니다.