持株・資産2 所持金、所有株

Portfolioクラスから所持金や所有株が取得できる。

Portfolio portfolio = agent.getPortfolio();

System.out.println(
        "avalilableMoney=" + portfolio.getAvailableMoney()
        + ",money=" + portfolio.getMoney()
);


Iterator iter = portfolio.getHoldings().values().iterator();
while(iter.hasNext()){
    Holding hold = (Holding)iter.next();
    System.out.println(
        "stock=" + hold.getStock()
        + ",price=" + hold.getPrice()
        + ",number=" + hold.getNumber()
    );
}

getAvailableMoney()の方は新規売買可能金額で、
getMoney()は空売りでロックかかってる分も含んだ単純な金額を返す。


getHoldings()はキーがStockで値がHoldingのMapを返す。
単純に持ち株を操作したいときは、上のようにMap#values()を使うと簡単。
Holding#getStock()で株情報も取得できる。