Скачать MetaTrader 5

Как узнать текущую стоимость портфеля акций?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Vasilii Polovnikov
376
Vasilii Polovnikov  

Добрый день, подскажите пожалуйста, как в mql5 узнать текущую ликвидационную стоимость портфеля акций?

ACCOUNT_ASSETS возвращает 0. Брокер Открытие. Реал.

Vasilii Polovnikov
376
Vasilii Polovnikov  
Vasilii Polovnikov:

Добрый день, подскажите пожалуйста, как в mql5 узнать текущую ликвидационную стоимость портфеля акций?

ACCOUNT_ASSETS возвращает 0. Брокер Открытие. Реал.


Решил вопрос.

Vitaly Muzichenko
7919
Vitaly Muzichenko  
Vasilii Polovnikov:

Решил вопрос.

Прекрасно!

Если не сложно, напишите решение, может кому пригодится. 

Vasilii Polovnikov
376
Vasilii Polovnikov  
Vitaly Muzichenko:

Прекрасно!

Если не сложно, напишите решение, может кому пригодится. 

Да, пожалуйста, 

double positionsBalance;

   string s;

   for(int i=0;i<=PositionsTotal();i++)

   {

      s=PositionGetSymbol(i);

      PositionSelect(s);

      positionsBalance+=PositionGetDouble(POSITION_VOLUME)*PositionGetDouble(POSITION_PRICE_OPEN)*

      SymbolInfoDouble(s,SYMBOL_TRADE_CONTRACT_SIZE);

   }

   positionsBalance+=AccountInfoDouble(ACCOUNT_BALANCE)+AccountInfoDouble(ACCOUNT_PROFIT);

Vasilii Polovnikov
376
Vasilii Polovnikov  
Vasilii Polovnikov:
Да, пожалуйста, 

double positionsBalance;

   string s;

   for(int i=0;i<=PositionsTotal();i++)

   {

      s=PositionGetSymbol(i);

      PositionSelect(s);

      positionsBalance+=PositionGetDouble(POSITION_VOLUME)*PositionGetDouble(POSITION_PRICE_OPEN)*

      SymbolInfoDouble(s,SYMBOL_TRADE_CONTRACT_SIZE);

   }

   positionsBalance+=AccountInfoDouble(ACCOUNT_BALANCE)+AccountInfoDouble(ACCOUNT_PROFIT);


Должен предупредить, что данный код решает проблему на сегодня, при текущем билде. Брокер Открытие. 

pivomoe
505
pivomoe  

А ты уверен PositionGetDouble(POSITION_VOLUME) возвращает количество акций ? Рискну предположить, что он возвращает количество лотов.

Vasilii Polovnikov
376
Vasilii Polovnikov  
pivomoe:

А ты уверен PositionGetDouble(POSITION_VOLUME) возвращает количество акций ? Рискну предположить, что он возвращает количество лотов.

Никто и не спорит. Посмотри внимательней и ты увидишь, что количество лотов умножается на количество акций в лоте.

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий