результат файла лога
Поза выбрана profit = 280.5 type= 0 vol=0.6
type = 0 ??????
при тестировании эксперта
POSITION_TYPE_BUY | Покупка =0 |
Продажа =1 |
MQL4 так ....
- www.mql5.com
оно и в MQL5 не изменилось, покупка = 0, продажа = 1, далее уже идут соответствующие отложенные ордера, хотя наверно у отложенных ордеров свои индексы и тоже начинаются с нуля, не проверял, поэтому точно утверждать не могу.
В данном случае это идентификаторы свойств позиции - ENUM_POSITION_TYPE.
Если говорить об ENUM_POSITION_TYPE то там только этоИдентификатор |
Описание |
POSITION_TYPE_BUY |
Покупка |
POSITION_TYPE_SELL |
Продажа |
За подобные свойства ордеров отвечает другой идентификатор - ENUM_ORDER_TYPE. В нем тоже все нумеруется с 0
Идентификатор |
Описание |
ORDER_TYPE_BUY |
Рыночный ордер на покупку |
ORDER_TYPE_SELL |
Рыночный ордер на продажу |
ORDER_TYPE_BUY_LIMIT |
Отложенный ордер Buy Limit |
ORDER_TYPE_SELL_LIMIT |
Отложенный ордер Sell Limit |
ORDER_TYPE_BUY_STOP |
Отложенный ордер Buy Stop |
ORDER_TYPE_SELL_STOP |
Отложенный ордер Sell Stop |
ORDER_TYPE_BUY_STOP_LIMIT |
По достижении цены ордера выставляется отложенный ордер Buy Limit по цене StopLimit |
По достижении цены ордера выставляется отложенный ордер Sell Limit по цене StopLimit |
результат файла лога
Поза выбрана profit = 280.5 type= 0 vol=0.6
type = 0 ??????
при тестировании эксперта
Правильней так (чтобы лишних вопросов не возникало)
if(PositionSelect(symbol)==true) { double profit = PositionGetDouble(POSITION_PROFIT); double vol = PositionGetDouble(POSITION_VOLUME); ENUM_POSITION_TYPE type = PositionGetInteger(POSITION_TYPE); FileWrite(fileHandle,"Поза выбрана profit = "+profit+" type= "+type+" vol="+vol); } //Если запись ведется в XLS, наверное правильней это так сделать (по крайней мере у меня так) if(PositionSelect(symbol)==true) { String SymbolPos = PositionGetString(POSITION_SYMBOL); double profit = PositionGetDouble(POSITION_PROFIT); double vol = PositionGetDouble(POSITION_VOLUME); ENUM_POSITION_TYPE type = PositionGetInteger(POSITION_TYPE); FileWrite(fileHandle,TimeTradeServer(),SymbolPos,type,vol,profit); }
Правильней так (чтобы лишних вопросов не возникало)
Я бы уточнил так:
ENUM_POSITION_TYPE type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
Я бы уточнил так:
ENUM_POSITION_TYPE type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
Меня в этой истории смущает следующее:
Таким образом, 0 возвращается как минимум в двух различных ситуациях.- www.mql5.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
результат файла лога
Поза выбрана profit = 280.5 type= 0 vol=0.6
type = 0 ??????
при тестировании эксперта