成行オーダーは現在提示されているマーケット価格で発注します。
成行オーダーはIEngine.submitOrderメソッドを使って行います。
成行オーダーでの発注
以下の例では、ユーロドルを1,000通貨の成行オーダー(買い)を行います。
IOrder order = engine.submitOrder(
"MyMaketBuyOrder",
Instrument.EURUSD,
OrderCommand.BUY,
0.001
);
以下の例では、ユーロドルを1,000通貨の成行オーダー(売り)を行います。
IOrder order = engine.submitOrder(
"MyMarketSellOrder",
Instrument.EURUSD,
OrderCommand.SELL,
0.001
);
サンプルソースコード:
MarketOrder.java
スリップページ設定での成行オーダー
上記の2つの発注方法では、デフォルト値の5pipsのスリップページが適用されます。
IEngineを用いる事でスリップページを指定する事が可能です。
submitOrderメソッドは価格とスリップページのパラメータを持っています。
パラメータの価格に0を設定した場合、最後に受信した成行価格が使われます。
以下の例では、ユーロドルを1,000通貨の成行オーダー(スリップページの許容範囲は2pips)します。
double price = 0;
int slippage = 2;
engine.submitOrder(
"OrderLabel",
Instrument.EURUSD,
OrderCommand.BUY,
0.001,
price,
slippage
);
スリップページの分解能が1pipsになっていますが、海外では最小単位を1pipsと言っている場合があるので、日本の業者で言う所の0.1pipsか否か検証する必要有り。