マニュアルに書かれていないOANDA fx Trade APIの仕様3つ
OANDA fx Trade APIで、マニュアル に詳細が書かれていない仕様がいくつかあったので、動かしてみて確認した内容をまとめておきます。
サマリ
- REST APIでは、stop と marketIfTouched で注文が可能
- 注文のレスポンスに含まれる、tradeOpened、tradesClosed、tradeReduced, orderOpened の違い
- tradeOpened、tradesClosed、tradeReduced のidは建玉(trade)のID
REST APIでは、stop と marketIfTouched で注文が可能
OANDA 取引ツールでは成行(market)、指値(limit) での注文ができますが、REST APIではこれらに加えて 逆指値(stop)、marketIfTouchedでの注文が可能です。
- 成行/指値/逆指値は、他の証券会社でも提供している一般的な注文方法なので、説明はこのあたりを参照 していただければわかるかと。
marketIfTouchedは、「価格が指定価格になったら成行きで発注する」注文方法です。
トレールストップなど、建玉の決済条件は注文方法とは別に指定できるようになっています。
- 指定できる条件は以下の3つです。
- 利益確定価格(takeProfit)
- 損切価格(stopLoss)、
- トレールストップのpip数(trailingStop))
- これらの決済条件は、注文方法(成行、指値..etc..)を問わず指定可能です。
- 指定できる条件は以下の3つです。
なお、OCOのような両建ての注文方法はありません。
注文のレスポンスに含まれる、tradeOpened、tradesClosed、tradeReduced, orderOpened の違い
注文(order)の結果に応じて、これらのレスポンスの内容が変わります。
- 注文が約定しなかった場合、新規注文が作成され、 orderOpened で注文の情報が返されます。
- 注文が約定し、新しい建玉ができた場合、 tradeOpened で作成された建玉の情報が返されます。
- 注文が約定し、既存の建玉が決済された場合、 全決済された建玉が tradesClosed、部分決済された建玉が tradeReduced で返されます。
tradeOpened、tradesClosed、tradeReduced のidは建玉(trade)のID
細かい話ですが、注文のレスポンス tradeOpened、tradesClosed、tradeReduced のidは建玉(trade)のIDになっています。 ちょっと紛らわしいので、念のため。
追記(2015-12-01)
OANDA FX trade APIを利用した、無料のFXシステムトレードフレームワーク「Jiji」をリリースしました!
使ってみて、ご意見など頂けるとうれしいです。