Скачать MetaTrader 5

Необходимо прописать цикл - страница 2

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
anton
191
anton  
Roman.:
См. еще раз - внёс кое-какие правки в название переменных.

заранее извеняюсь за возможно глупые вопросы, но я новичок...

1)а почему "for(int counter = OrdersHistoryTotal()-2;" начинается с -2, а не -1 (то есть последнего закрытого ордера)?

2) возможно необходимо так if (isCloseLastPosByTake(NULL,-1,-1) ==False) {Ваш код} // т.к. необходимо считать сумму прибыли, если последний ордер не Тейк Профит, то есть False?

Роман
7939
Роман  
okvseok:

заранее извеняюсь за возможно глупые вопросы, но я новичок...

1)а почему "for(int counter = OrdersHistoryTotal()-2;" начинается с -2, а не -1 (то есть последнего закрытого ордера)?

2) возможно необходимо так if (isCloseLastPosByTake(NULL,-1,-1) ==False) {Ваш код} // т.к. необходимо считать сумму прибыли, если последний ордер не Тейк Профит, то есть False?

1. Потому что у Вас в первом посте вопрос: " вызвать значение денежной суммы всех сделок до последнего тейк профита."

2. Сами разбирайтесь, как Вам считать и при каком условии, функция есть - ещё раз прочтите её описание и используйте, как Вам надо и по какому именно условию.

Роман
7939
Роман  

okvseok:

возможно необходимо так if (isCloseLastPosByTake(NULL,-1,-1) ==False) {Ваш код} // т.к. необходимо считать сумму прибыли, если последний ордер не Тейк Профит, то есть False?

Эта функция возвращает TRUE, если последний закрытый по ТР.

"Флаг поднят - True - сработал TakeProfit. Флаг опущен - False - позиция была закрыта по другой причине."

anton
191
anton  
Roman.:

Эта функция возвращает TRUE, если последний закрытый по ТР.

"Флаг поднят - True - сработал TakeProfit. Флаг опущен - False - позиция была закрыта по другой причине."


спасибо огромное за помощь!!!
anton
191
anton  
а чтобы отсчет пошел от последнего ордера надо так "for (i=k-1; i<k; i>=0; i--)"?
Роман
7939
Роман  
okvseok:
а чтобы отсчет пошел от последнего ордера надо так "for (i=k-1; i<k; i>=0; i--)"?
for(int counter = OrdersHistoryTotal()-1; counter >= 0; counter--)
anton
191
anton  
Roman.:


а в функции isCloseLastPosByTakе прописано так: for (i=0; i<k; i++). то есть здесь идет отсчет с начала истории, а не с конца?
Роман
7939
Роман  
okvseok:

а в функции isCloseLastPosByTakе прописано так: for (i=0; i<k; i++). то есть здесь идет отсчет с начала истории, а не с конца?

Да. ТАк. Это Ким И.В. в своё время делал. Одно другому не мешает при верном подходе.

Вы делайте, как Вам надо и всё.

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