public: // Функции которые вызываются сразу после того, как был выставлен ордер или открыта позиция// Тикет позицииulong getPosition(){
return request.position;
}
...
В Кодобазу добавлять исходник смысла не вижу, так как по функционалу он похож на CTrade из стандартной
библиотеки. Можно писать свои классы на основе него и таким образом работать с торговыми функциями.
P.S.
Никогда бы не подумал, что OrderSend тикет позиции возвращает в запрос.
Как это не странно, но функция OrderSend возвращает позицию в запрос. Только что изменил код в своем торговом эксперте. Но, тем не менее, ошибка 4753 никуда не делась. Только теперь тикет позиции стал отображаться, при отладке, как #404, а на графике та же позиция показывается как #409. Таким образом, советник по прежнему теряет позиции, несмотря на то, что я получаю их из request.position.
Ни разу не остановился дебаг. Заодно показано, что Result.order равен тикету открываемой
позиции на хедже.
Ну, во первых, подобное случается только иногда. Во вторых, я применяю свой исходник, где использованы API MQL5, а не библиотека МТ4. В MQL4
таких багов нет, конечно же. Там только тикеты ордеров, а не тикеты ордеров, позиций и сделок.
Но как решить проблему с потерей позиции в MQL5? Вопрос остаётся открытым.
Ну, во первых, подобное случается только иногда. Во вторых, я применяю свой исходник, где использованы API MQL5, а не библиотека МТ4. В
MQL4 таких багов нет, конечно же. Там только тикеты ордеров, а не тикеты ордеров, позиций и сделок.
Но как решить проблему с потерей позиции в MQL5? Вопрос остаётся открытым.
Я понял. Но API MQL5 оптимизированы по времени выполнения. Что очень хорошо для оптимизации торговых роботов. А здесь идет
использование переделанных функций на подобии MQL4. Ни разу не использовал данную библиотеку.
Зачем тогда фантазируете?
Сравнение скорости где-то в обсуждении было, потерь там нет (а иногда и ускорение можно получить).
Ну и ладно. Значит я не зная, случайно получаю.
Ну тогда можно сделать так:
В Кодобазу добавлять исходник смысла не вижу, так как по функционалу он похож на CTrade из стандартной библиотеки. Можно писать свои классы на основе него и таким образом работать с торговыми функциями.
P.S. Никогда бы не подумал, что OrderSend тикет позиции возвращает в запрос.Ну и ладно. Значит я не зная, случайно получаю.
Посмотрел СБ, нет там изменений Request.position. Загадку не разгадал. Штатный OrderSend Request не меняет, т.к. компилируется
P.S. Никогда бы не подумал, что OrderSend тикет позиции возвращает в запрос.
Это не так.
Это не так.
Если верить исходному коду CTrade и примеру Алексея, то так оно и есть.
Осталось проверить...
Если верить исходному коду CTrade и примеру Алексея, то так оно и есть.
Осталось проверить...
Даже там указано
Даже там указано
Как это не странно, но функция OrderSend возвращает позицию в запрос. Только что изменил код в своем торговом эксперте. Но, тем не менее, ошибка 4753 никуда не делась. Только теперь тикет позиции стал отображаться, при отладке, как #404, а на графике та же позиция показывается как #409. Таким образом, советник по прежнему теряет позиции, несмотря на то, что я получаю их из request.position.
Как это не странно, но функция OrderSend возвращает позицию в запрос.
Проверочный код показал, что не меняет
Ни разу не остановился дебаг. Заодно показано, что Result.order равен тикету открываемой позиции на хедже.
Проверочный код показал, что не меняет
Ни разу не остановился дебаг. Заодно показано, что Result.order равен тикету открываемой позиции на хедже.
Ну, во первых, подобное случается только иногда. Во вторых, я применяю свой исходник, где использованы API MQL5, а не библиотека МТ4. В MQL4 таких багов нет, конечно же. Там только тикеты ордеров, а не тикеты ордеров, позиций и сделок.
Но как решить проблему с потерей позиции в MQL5? Вопрос остаётся открытым.
Ну, во первых, подобное случается только иногда. Во вторых, я применяю свой исходник, где использованы API MQL5, а не библиотека МТ4. В MQL4 таких багов нет, конечно же. Там только тикеты ордеров, а не тикеты ордеров, позиций и сделок.
Но как решить проблему с потерей позиции в MQL5? Вопрос остаётся открытым.
Вы как будто специально не видите. Это MQL5:
Я понял. Но API MQL5 оптимизированы по времени выполнения. Что очень хорошо для оптимизации торговых роботов. А здесь идет использование переделанных функций на подобии MQL4. Ни разу не использовал данную библиотеку.
Зачем тогда фантазируете?
Сравнение скорости где-то в обсуждении было, потерь там нет (а иногда и ускорение можно получить).