Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 2485

 
Aleksandr Slavskii #:

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

Или можно её короче сделать?

Если делать короче, будет не так наглядно и менее понятно для новичка…

 
Artyom Trishkin #:
Время потянуть... 

Мне всё чаще вспоминается этот эпизод из фильма

 
Alexey Viktorov #:

А вы уверены, что эта сделка закрытие позиции?

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

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


В истории есть)

 
Aleksandr Slavskii #:

Зачем вам в коде магик и символ, если вы ищите сделку по тиккету?

Вот скрипт, на скорую руку, но работает. Думаю его достаточно, чтоб понять принцип.

Возможно использование на одном терминале разных инструментов и роботов. Чтобы не было ошибок пишу заранее.

 
Maksim Burov #:


В истории есть)

А в контекстном меню что выбрано?


 
Aleksandr Slavskii #:

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

Или можно её короче сделать?

Попробовал, но что не особо получилось. Можете добавить к коду тикет, с которого надо начать отчет профита( включая и его профит) по определенной валютной паре и магиком. Самый прикол в том, что мой код в тестере работает. 

 
Alexey Viktorov #:

А в контекстном меню что выбрано?


Вроде так же, как у Вас?

 
Maksim Burov #:

Вроде так же, как у Вас?

Дело не в том, как у меня. Дело в том, что тут отображены тикеты закрытых позиций. А видеть это можно исключительно глазами. Свойства позиций доступны только тогда, когда они открыты, в работе, так сказать… После закрытия позиции не существует. Тикет позиции не равен тикету сделки. И даже тикету ордера равен не всегда. Точнее сказать, нельзя закладываться на равенство тикетов ордера и позиции. И в документации написано

Тикет позиции. Уникальное число, которое присваивается каждой вновь открытой позиции. Как правило, соответствует тикету ордера, в результате которого она была открыта, за исключением случаев изменения тикета в результате служебных операций на сервере. Например, начисления свопов переоткрытием позиции. Для нахождения ордера, которым была открыта позиция, следует использовать свойство POSITION_IDENTIFIER

 
Maksim Burov #:

Попробовал, но что не особо получилось. Можете добавить к коду тикет, с которого надо начать отчет профита( включая и его профит) по определенной валютной паре и магиком. Самый прикол в том, что мой код в тестере работает. 

Мой код работает и отвечает на поставленный вами вопрос "как найти профит, зная тикет сделки".

Не работает он потому, что вы скармливаете ему тикет позиции.

Сделка и позиция это разные вещи.

 
Alexey Viktorov #:

И как это поможет?

Да у него может при переборе пропускает....