GetOpenPositions
Posted by Mohammad Rahhal, Last modified by Rawan Al Hourani on 18 December 2018 12:07 PM

Syntax 

GetOpenPositions (AccountId As Long)

Description

The GetOpenPositions operation is used to return a List (of Position(s)) which holds a given account open positions.

Request Parameters

Name Description  Required
AccountId
  • The intended account identifier.
  • Type: Long.
  • Default: None.
  • Constraints: Must be a valid account ID, and accessible by logged in client.
Yes


Response Elements

Name Description 
Result

This operation returns a given account open positions upon success as a list of type position.
The following are the Position data members:

  • ClosePrice: Close position price.
  • ProfitLoss: Profit or loss value.
  • PositionValue: Position value.
  • Commission: Commission value.
  • Interest: Position Interest value.
  • OpenPrice: Position open price.
  • ManagedTKTID: Manage Order number.
  • CurrentPrice: Current position price.
  • Symbol: Trading symbol ID.
  • SL: Stop loss value.
  • TP: Take profit value.
  • SymbolName: Trading symbol name.
  • BuySell:
            1: Which means buy type.
           -1: Which means sell type.
  • RefPrice: Reference symbol price.
  • Note: Position note.
  • delItems: Deliver Items.
  • ID: Position ticket Identifier.            
  • Time: Position opened time.
  • Amount: Position amount. 
  • IsFreezed : Detected if the open position is freezed or not

Otherwise an explicit error code is returned.

Type: JSON object as List (of Position)


Sample

Download sample as text file.

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>GetOpenPositions</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<script>
$(document).ready(function () {
var urlStr = "http://173.249.35.43/webtrader/webservice.svc";
jQuery.support.cors = true;
$("#progress").ajaxStart(function () { $(this).css("display", "block"); });
$("#progress").ajaxComplete(function () { $(this).css("display", "none"); });
$("#resultAction").ajaxError(function (result) { $(this).html('An error occured'); });



function onSuccessResultt(dataResult) {
var result = eval(dataResult);
var rst = ""
if (result[0].ID > 0) {
for (var i = 0; i < result.length; i++) {
rst += "TicketID : " + result[i].ID + "<br/>"
rst += "Time : " + result[i].Time + "<br/>"
rst += "Amount : " + result[i].Amount + "<br/>"
rst += "OpenPrice : " + result[i].OpenPrice + "<br/>"
rst += "Symbol : " + result[i].Symbol + "<br/>"
rst += "BuySell : " + result[i].Symbol + "<br/>"
rst += "SL : " + result[i].SL + "<br/>"
rst += "TP : " + result[i].TP + "<br/>"
rst += "--------------------------------------------------" + "<br/>"
$("#resultAction").html(rst)
}
}
else {
$("#resultAction").html("Error Code : " + result[0].ID + "<br/>" );
}
}



function onSuccessResult(response) {
response = eval('(' + response + ')')
if (response.UserId == -1 || response.UserId == -207) {
$("#resultData").html("Invalid username or password");
}
else if (response.UserId == -231) {
$("#resultData").html("You must have at least one account");
}
else if (response == null || response == "" || response.UserId < 0) {
$("#resultData").html("Error while login.Please try later");
}
else {
$("#resultData").html("SuccessResult ... UserId is :" + response.UserId);
}
}
function onErrorResult(result) {
alert('Service call faild : ' + result.status + ' ' + result.statusText);
}
$("#btnLogin").click(function () {
$.getJSON(urlStr + "/Login?username=" + $("#txtusername").val() + "&password=" + $("#txtpassword").val() + "&callback=?" , onSuccessResult);
});
$("#btnAction").click(function () {
$.getJSON(urlStr + "/GetOpenPositions?AccountId=" + $("#txtAccountId").val() + "&callback=?", onSuccessResultt);
});
});
</script>
<body>
<table border="1px"><tbody>
<tr>
<td>
Username: <input type="text" id="txtusername" value=""/>
Password: <input type="text" id="txtpassword" value=""/>
<button id="btnLogin"> Login </button>
</td>
</tr>
<tr>
<td>AccountId : <input type="text" id="txtAccountId" value ="" /> </td>
<td><button id="btnAction">GetOpenPositions </button>
</td>
</tr>
</tbody>
</table>
<div id="resultData">
</div><div id="resultAction">
</div><div style="display:none" id="progress">Loading ... </div>
</body>
</html>
</button>
</td>
</tr>
</tbody>
</table>
<div id="resultData">
</div><div id="resultAction">
</div><div style="display:none" id="progress">Loading ... </div>
</body>
</html>

 

 


See Also


VertexFX WCF Service Index

(2 vote(s))
Helpful
Not helpful

Comments (0)
Post a new comment
 
 
Full Name:
Email:
Comments:
CAPTCHA Verification 
 
Please enter the text you see in the image into the textbox below (we use this to prevent automated submissions).

Help Desk Software by Hybrid Solutions