注文の発行

http://kaburobo.jp/howto/makerobot.html#2

注文の発効は、SimpleStockOrderクラスを作成し、必要な情報をセットし、
InvestmentAgent#order(SimpleStockOrder)で注文発効となります。

SimpleStockOrderでセッタであれこれセットするのが、
面倒な場合は、以下のようにコンストラクタで全部つっこむことができます。

long money = agent.getPortfolio().getAvailableMoney();

SimpleStockOrder order = new SimpleStockOrder(
        stock, 
        StockOrder.BUY,   //tradeType : BUY or SELL
        StockOrder.MONEY, //unitType  : MONEY or NUMBER
        money,            //quantity  : 金額 or 株数
        0);               //limit     : 指値、0は成り行き
agent.order(order);
  • tradeTypeでBUYにして、quantityにマイナスの値を入れると ×-1 のSELLと同じ
  • quantityは金額でも株数でも必要資金以上は購入できない。なので、買えるだけ買う場合、適当に大きな値をつっこんどくのでも買える。
  • 空売りは単に持っていない株を売ればよい(売った分の資金がロックされるので資金分しか売れない)
  • 空売りは単に保有株がマイナスの状態となる。カブロボ上は、現物、信用といった取引種別は存在しない。