Positions.Check
Посылает на сервер запрос на проверку достаточности средств для открытия позиции
int Positions.Check(symbolName, positionType, volume, closePrice, out margin, out profit)
Входные параметры
Параметр | Тип | Описание |
symbolName | string | Название символа |
positionType | PositionType | Buy или Sell |
volume | double | Объем позиции в лотах |
closePrice | double | Цена закрытия позиции в котируемой валюте |
margin | оut double | В параметре можно задать переменную, в которую будет записан вычисленный размер залога в валюте счета |
profit | оut double | В параметре можно задать переменную, в которую будет записан вычисленный размер прибыли в валюте счета |
Возвращаемое значение
0 |
Проверка достаточности средств успешно прошла |
Если в out параметр Margin передано название переменной, то в эту переменную будет записан размер средств, необходимых для обеспечения открытых позиций на счете
Если в out параметр Profit передано название переменной, то в эту переменную будет записан размер вычисленной прибыли
Пример:
string symbolName = "EURUSD";
double volume = 0.1;
double bidprice= Symbols.Find(symbolName).Quote.Bid;
double margin;
double profit;
int result;
result = Positions.Check(symbolName, PositionType.Buy, volume, bidprice, out margin, out profit);
if (result == 0) {
line = " Positions.Check(" + symbolName + ", PositionType.Buy, " + volume.ToString() + ", " + bidprice.ToString()
+ ", out margin, out profit):";
line = line + " result: " + result.ToString() + ", margin: " + margin.ToString() + ", profit: " + profit.ToString();
using (StreamWriter sw = new StreamWriter(mOnStartLog, true))
sw.WriteLine(DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss:fff") + line + Environment.NewLine);
}