Как мне найти значение Commission пока не закрылось ни одной сделки?
Посмотреть сумму комиссий всех сделок, принадлежащих одной позиции, комиссию которой нужно узнать.
Так вот что по запросу комисии получается 0. Функция myPosition.Commission() заблокирована!
//+------------------------------------------------------------------+ //| Get the property value "POSITION_COMMISSION" | //+------------------------------------------------------------------+ double CPositionInfo::Commission(void) const { //--- property POSITION_COMMISSION is deprecated SetUserError(ERR_FUNCTION_NOT_ALLOWED); return(0); }
Спасибо за помощь!
Получилось таким образом:
//+------------------------------------------------------------------+ //| по идентификатору сделки | //+------------------------------------------------------------------+ double get_commission(const long deal_id) { return(HistoryDealGetDouble(deal_id, DEAL_COMMISSION)); }
Спасибо за помощь!
Получилось таким образом:
//+------------------------------------------------------------------+ //| по идентификатору сделки | //+------------------------------------------------------------------+ double get_commission(const long deal_id) { return(HistoryDealGetDouble(deal_id, DEAL_COMMISSION)); }
Обращаю внимание, что наличие функции Commission()
в классе CPositionInfo:
//+------------------------------------------------------------------+
//| Class CPositionInfo. |
//| Appointment: Class for access to position info. |
//| Derives from class CObject. |
//+------------------------------------------------------------------+
class CPositionInfo : public CObject
{
protected:
ENUM_POSITION_TYPE m_type;
double m_volume;
double m_price;
double m_stop_loss;
double m_take_profit;
public:
. . . .
double Commission(void) const;
. . . .
//+------------------------------------------------------------------+
//| Get the property value "POSITION_COMMISSION" |
//+------------------------------------------------------------------+
double CPositionInfo::Commission(void) const
{
//--- property POSITION_COMMISSION is deprecated
SetUserError(ERR_FUNCTION_NOT_ALLOWED);
return(0);
}
вводит в заблуждение, так как эта функция пустышка и всегда возвращает 0.
На мой взгляд ее стоит удалить из класса ведь строка кода, которая просится:
prof=m_position.Profit()+m_position.Swap()+m_position.Commission();
на самом деле не учитывает комиссию.
Не меняется.
К чему тогда был пост?
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Commission для открытой позиции
fxsaber, 2025.09.30 05:50
Позиция может быть частично закрыта.- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте, столкнулся с ситуацией, когда чтобы закрыть позицию с прибылью, я должен знать какую Commission берет брокер.
Однако
не смотря на это в терминале каким то образом отображается Commission по открытой сделке
Как мне найти значение Commission пока не закрылось ни одной сделки?