こんにちは、rockyです。
今回はOANDA APIで売買ポジションを取得して、ログで確認するところまでを行ってみたいと思います。

全体図だと以下となります。※更新しました
前回はOANDA APIで注文する方法を紹介していて、内容としては似通っているので、サクッといきたいと思います。
GoogleAppsScript(GAS)エディタの使い方やOANDA APIの(初期)設定については前の記事で紹介しているので、参考にしてください。
GASでポジション取得してみよう
7,8行目のxxxはOANDA Webサイトから取得して置換、11行目のxxxはポジションを取得する通貨ペアを入れてください。
例えば、ユーロ/ドルの場合はEUR_USDです。
さっそくスクリプトをコピペして、実行してみましょう。
/*
* getPositions
*/
function getPositions(){
/** 変数定義 **/
//APIトークン
var Authorization = 'Bearer xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
var accountID = 'xxx-xxx-xxxxxxxx-xxx';
var FQDN = 'api-fxpractice.oanda.com'; //デモFQDN
//APIパラメータ
var instrument = "xxx_xxx" ; //通貨ペア
/** position用URL **/
var url = "https://" + FQDN + "/v3/accounts/"+ accountID +"/positions/" + instrument;
/** header情報 **/
var headers = {
'Content-Type': 'application/json',
'Authorization': Authorization
};
/** GETするためのOPTIONを設定 **/
var options = {
"headers": headers,
"muteHttpExceptions": true
};
//POST(失敗したらメール送る)
var response = UrlFetchApp.fetch(url, options);
var responseCode = response.getResponseCode();
var responseText = response.getContentText();
var responseData = JSON.parse(responseText);
Logger.log("responseCode:"+responseCode);
Logger.log("responseText:"+responseText);
//ポジション取得できなかったら処理終了する。200:正常 404:ポジションなし その他:異常
if(responseCode == 200 || responseCode == 404){
Logger.log("【正常終了】");
}else{
Logger.log("【異常終了】" + responseText);
}
}
ログの確認
[表示]ー>[ログ]からログを確認してみます。
以下のように【正常終了】していれば問題ないです。
【異常終了】していた場合は前回記事でトラブルシュートについて書いているので、確認してみてください。
次回
今回は以上です。次回はポジション決済について書きたいと思います。
コメントを残す