GET /v1/accounts/:account_id/transactions
$curl -X GET "http://api-sandbox.oanda.com/v1/accounts/12345/transactions?instrument=EUR_USD&count=1"
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 196 X-Result-Count: 50
{ "transactions" : [ { "id" : 175427739, "accountId" : 6531071, "time" : "2014-02-12T21:16:46Z", "type" : "ORDER_CANCEL", "orderId" : 175427728, "reason" : "CLIENT_REQUEST" } ] }
アカウントに対するイベントの種類によって、返信されるトランザクションのタイプが異なります。 それぞれのトランザクションのタイプによって、設定されるフィールドが異なります。 以下のフィールドは最も一般的なフィールドです:
MARKET_ORDER_CREATE , STOP_ORDER_CREATE, LIMIT_ORDER_CREATE, MARKET_IF_TOUCHED_ORDER_CREATE,
ORDER_UPDATE, ORDER_CANCEL, ORDER_FILLED, TRADE_UPDATE, TRADE_CLOSE, MIGRATE_TRADE_OPEN,
MIGRATE_TRADE_CLOSE, STOP_LOSS_FILLED, TAKE_PROFIT_FILLED, TRAILING_STOP_FILLED, MARGIN_CALL_ENTER,
MARGIN_CALL_EXIT, MARGIN_CLOSEOUT, SET_MARGIN_RATE, TRANSFER_FUNDS, DAILY_INTEREST, FEE
このタイプのトランザクションは、ユーザーが指定単位の特定の銘柄を現在の市場レートで取引することに成功した時に作成されます。
MARKET_ORDER_CREATEタイプのトランザクションは、関連するチケット情報も含んでいます。
{ "id" : 176403879, "accountId" : 6765103, "time" : "2014-04-07T18:31:05Z", "type" : "MARKET_ORDER_CREATE", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1.25325, "pl" : 0, "interest" : 0, "accountBalance" : 100000, "tradeOpened" : { "id" : 176403879, "units" : 2 } }
このタイプのトランザクションは、ユーザーが自分の口座に対するストップ注文の発注に成功した時に作成されます。 ストップ注文は、銘柄の市場レートが指定された価格と同じか不利になった場合に、銘柄を指定単位売買する注文です。
{ "id" : 176403886, "accountId" : 6765103, "time" : "2014-04-07T19:20:05Z", "type" : "STOP_ORDER_CREATE", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1, "expiry" : 1398902400, "reason" : "CLIENT_REQUEST" }
このタイプのトランザクションは、ユーザーが自分の口座に対するリミット注文の発注に成功した時に作成されます。 リミット注文は、銘柄の市場レートが指定された価格と同じか有利になった場合に、銘柄を指定価格で指定単位売買する注文です。
{ "id" : 176403880, "accountId" : 6765103, "time" : "2014-04-07T18:34:32Z", "type" : "LIMIT_ORDER_CREATE", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1, "expiry" : 1398902400, "reason" : "CLIENT_REQUEST" }
このタイプのトランザクションは、ユーザーが自分の口座に対するマーケット・イフ・タッチド注文の発注に成功した時に作成されます。 マーケット・イフ・タッチド注文は、銘柄の市場レートが指定された価格と同じかその価格を超えた場合に、銘柄を成行で指定単位売買する注文です。 この注文は、以前は”OANDAリミット・オーダー”という名前でした。
{ "id" : 176403882, "accountId" : 6765103, "time" : "2014-04-07T18:40:42Z", "type" : "MARKET_IF_TOUCHED_ORDER_CREATE", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1, "expiry" : 1398902400, "reason" : "CLIENT_REQUEST" }
このタイプのトランザクションは、ユーザーが自分の口座に対するリミット注文、ストップ注文、マーケット・イフ・タッチド注文の変更に成功した時に作成されます。
{ "id" : 176403883, "accountId" : 6765103, "time" : "2014-04-07T19:07:13Z", "type" : "ORDER_UPDATE", "instrument" : "EUR_USD", "units" : 3, "price" : 1, "expiry" : 1398902400, "reason" : "REPLACES_ORDER" }
このタイプのトランザクションは、注文が以下の理由でクローズされる際に作成されます: CLIENT_REQUEST, TIME_IN_FORCE_EXPIRED, ORDER_FILLED, MIGRATION. 注文の約定は以下の理由で無効になる可能性があります: INSUFFICIENT_MARGIN, BOUNDS_VIOLATION, UNITS_VIOLATION, STOP_LOSS_VIOLATION, TAKE_PROFIT_VIOLATION, TRAILING_STOP_VIOLATION, MARKET_HALTED, ACCOUNT_NON_TRADABLE, NO_NEW_POSITION_ALLOWED, INSUFFICIENT_LIQUIDITY.
{ "id" : 176403881, "accountId" : 6765103, "time" : "2014-04-07T18:37:27Z", "type" : "ORDER_CANCEL", "orderId" : 176403880, "reason" : "CLIENT_REQUEST" }
このタイプのトランザクションは、注文が約定した時に作成されます。
ORDER_FILLEDタイプのトランザクションは、関連するチケット情報も含んでいます。
{ "id" : 175685908, "accountId" : 2610411, "time" : "2014-04-14T20:32:34Z", "type" : "ORDER_FILLED", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1.3821, "pl" : 0, "interest" : 0, "accountBalance" : 100000, "orderId" : 175685907, "tradeOpened" : { "id" : 175685908, "units" : 2 } }
このタイプのトランザクションは、ユーザーがチケットの更新に成功した時に作成されます。
{ "id" : 176403884, "accountId" : 6765103, "time" : "2014-04-07T19:09:38Z", "type" : "TRADE_UPDATE", "instrument" : "EUR_USD", "units" : 2, "side" : "", "stopLossPrice" : 1.1, "tradeId" : 176403879 }
このタイプのトランザクションは、ユーザーがチケットの決済に成功した時に作成されます。
{ "id" : 176403885, "accountId" : 6765103, "time" : "2014-04-07T19:11:14Z", "type" : "TRADE_CLOSE", "instrument" : "EUR_USD", "units" : 2, "side" : "sell", "price" : 1.25918, "pl" : 0.0119, "interest" : 0, "accountBalance" : 100000.0119, "tradeId" : 176403879 }
このタイプのトランザクションは、ユーザーの別のDivisionへの移動によりチケットが決済された場合に作成されます。
{ "id" : 176403885, "accountId" : 6765103, "time" : "2014-04-07T19:11:14Z", "type" : "MIGRATE_TRADE_CLOSE", "instrument" : "EUR_USD", "units" : 2, "side" : "sell", "price" : 1.25918, "pl" : 0.0119, "interest" : 0, "accountBalance" : 100000.0119, "tradeId" : 176403879 }
このタイプのトランザクションは、ユーザーの別のDivisionへの移動後チケットが再度オープンされた場合に作成されます。
{ "id" : 175685908, "accountId" : 2610411, "time" : "2014-04-14T20:32:34Z", "type" : "MIGRATE_TRADE_OPEN", "instrument" : "EUR_USD", "units" : 2, "side" : "buy", "price" : 1.3821, "tradeOpened" : { "id" : 175685908, "units" : 2 } }
MIGRATE_TRADE_OPENタイプのトランザクションは、関連するチケット情報も含んでいます。
このタイプのトランザクションは、ユーザーのアカウントに対するテイクプロフィット注文が約定した時に作成されます。
{ "id" : 175685954, "accountId" : 1491998, "time" : "2014-04-15T14:12:47Z", "type" : "TAKE_PROFIT_FILLED", "units" : 10, "tradeId" : 175685930, "instrument" : "EUR_USD", "side" : "sell", "price" : 1.38231, "pl" : 0.0001, "interest" : 0, "accountBalance" : 100000.0001 }
このタイプのトランザクションは、ユーザーのアカウントに対するストップロス注文が約定した時に作成されます。
{ "id" : 175685918, "accountId" : 1403479, "time" : "2014-04-14T20:41:41Z", "type" : "STOP_LOSS_FILLED", "units" : 10, "tradeId" : 175685917, "instrument" : "EUR_USD", "side" : "sell", "price" : 1.3821, "pl" : -0.0003, "interest" : 0, "accountBalance" : 99999.9997 }
このタイプのトランザクションは、ユーザーのアカウントに対するトレーリングストップロス注文が約定した時に作成されます。
{ "id" : 175739353, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "TRAILING_STOP_FILLED", "units" : 10, "tradeId" : 175739352, "instrument" : "EUR_USD", "side" : "sell", "price" : 1.38137, "pl" : -0.0009, "interest" : 0, "accountBalance" : 99999.9992 }
このタイプのトランザクションは、ユーザーのアカウントに対してマージンコール(追証)が発生中の時に作成されます。
{ "id" : 175739360, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "MARGIN_CALL_ENTER" }
このタイプのトランザクションは、ユーザーのアカウントに対してのマージンコール(追証)が解消した時に作成されます。
{ "id" : 175739360, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "MARGIN_CALL_EXIT" }
このタイプのトランザクションは、ユーザーのアカウントにおける清算証拠金が必要証拠金の50%以下になった場合にシステムによって自動的に作成されます。 MARGIN_CLOSEOUTは、全ての決済注文をキャンセルし、ポジションの反対売買を行うことを意味します。
{ "id" : 176403889, "accountId" : 6765103, "time" : "2014-04-07T19:11:14Z", "type" : "MARGIN_CLOSEOUT", "instrument" : "EUR_USD", "units" : 2, "side" : "sell", "price" : 1.25918, "pl" : 0.0119, "interest" : 0, "accountBalance" : 100000.0119, "tradeId" : 176403879 }
このタイプのトランザクションは、ユーザーがこのアカウント対する証拠金率を変更した場合に作成されます。 ※日本では証拠金率の変更は不可能なので、このトランザクションは実際には発生いたしません。
{ "id" : 175739360, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "SET_MARGIN_RATE", "rate" : 0.02 }
このタイプのトランザクションは、ユーザーがアカウントに対して入出金をした場合に作成されます。 入金の場合は金額は正の数字となり、出金の場合は負の数字となります。
{ "id" : 176403878, "accountId" : 6765103, "time" : "2014-04-07T18:29:25Z", "type" : "TRANSFER_FUNDS", "amount" : 100000, "accountBalance" : 100000, "reason" : "CLIENT_REQUEST" }
このタイプのトランザクションは、アカウントに対してその日のポジションと口座残高による金利の調整(入金、出金)を行った場合にシステムにより自動的に作成されます。 前日に残高もしくは未決済のポジションがあるアカウントに対して米国東部標準時午後4時に毎日自動的に作成されます。 このトランザクション自体は毎日必ずしも午後4時きっかりに作成されるとは限りませんが、金利の入出金は前日の午後4時の時点のポジションと残高をベースに計算されます。
{ "id" : 175739363, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "DAILY_INTEREST", "instrument" : "EUR_USD", "interest" : 10.0414, "accountBalance" : 99999.9992 }
このタイプのトランザクションは、何らかの料金を徴収する必要がある場合にシステムにより自動的に作成されます。
{ "id" : 175739369, "accountId" : 1491998, "time" : "2014-04-15T15:21:21Z", "type" : "FEE", "amount" : -10.0414, "accountBalance" : 99999.9992, "reason" : "FUNDS" }
トランザクションはcountとmaxIdパラメータによりページ割りができます。 一つのクエリで最大50件のトランザクションが返信されます。 もしトランザクションの件数がデフォルトもしくは指定された件数を上回っていた場合は、Linkヘッダと一緒にmaxIdが次のまだ未送信のトランザクションのIDに設定されたURLが返信されます。
GET /v1/accounts/:account_id/transactions/:transaction_id
curl -X GET "http://api-sandbox.oanda.com/v1/accounts/12345/transactions/1170980"
HTTP/1.1 200 OK Content-Type: application/json Content-Length: 269
{ "id" : 1170980, "accountId" : 12345, "time" : "2014-02-12T20:02:45Z", "type" : "TRADE_CLOSE", "instrument" : "EUR_USD", "units" : 1000, "side" : "sell", "price" : 1.35921, "pl" : 1.93, "interest" : 0, "accountBalance" : 1000026.0723, "tradeId" : 175427703 //Closed trade id }
指定のアカウントのトランザクションの完全な履歴をリクエストできます。
リクエストが成功した場合、Location
ヘッダにリクエスト完了後に取得可能なファイルのURLがレスポンスに含まれます。
ファイルの作成が完了するまでは、URLへのアクセスに対してはHTTP 404のレスポンスとなります。 作成完了後、URLは一定時間アクセス可能です。
GET /v1/accounts/:account_id/alltransactions
$curl -X GET "http://api-sandbox.oanda.com/v1/accounts/12345/alltransactions"
HTTP/1.1 202 Accepted Content-Type: application/json Content-Length: 0 Location: https://fxtrade.oanda.com/53e58d3509cef65f33998c879dcccbd9.json.zip