Способ получения позиций из истории

 

Вопрос, возможно, и глупый, но есть ли какие-то функции, которые позволяют работать с позициями во вкладки история?

Знаю, чем различаются ордера, позиции и сделки.

Просто подумал, что если во вкладке истории есть возможность фильтровать чисто "позиции", то в теории, их как-то можно достать кодом.


 
Nikita Chernyshov:

Вопрос, возможно, и глупый, но есть ли какие-то функции, которые позволяют работать с позициями во вкладки история?

Знаю, чем различаются ордера, позиции и сделки.

Просто подумал, что если во вкладке истории есть возможность фильтровать чисто "позиции", то в теории, их как-то можно достать кодом.


Можно, но через… сами знаете через чего. Например через ордера или через сделки.

Выбрать сделки за определённый период. Перебрать их в цикле читая тип сделки, открывающая или закрывающая позицию… И дальше по желанию, куда-то это всё вывести…

 
Nikita Chernyshov:

Вопрос, возможно, и глупый, но есть ли какие-то функции, которые позволяют работать с позициями во вкладки история?

Знаю, чем различаются ордера, позиции и сделки.

Просто подумал, что если во вкладке истории есть возможность фильтровать чисто "позиции", то в теории, их как-то можно достать кодом.

Можно в стиле MT4.

существуют готовые решения.

На скрине два представления рассматриваемой ситуации.


Верхний - штатная визуализация в виде одной строки, соответствующей всем исполнениям одного отложенного ордера (единый PositionID-идентификатор). Удобно, что одной строкой и встроено в GUI терминала. Но крайне скудно, не разобраться, что происходило.


Нижний (таблица) - это визуализация MT4-представления той же истории исполнения, но за счет нескольких иных сущностей: MT4-позиций, которые создает библиотека MT4Orders.

Хорошо видно, когда зарождались соответствующие позиции и каков их финансовый результат, включая другие подробности.


#include <MT4Orders.mqh>

void OnStart()
{
  const ulong Position = 0; // Введите тикет позиции.
  
  if (OrderSelect(Position, SELECT_BY_TICKET))
    OrderPrint();
}

Сравните распринтовку этого скрипта с тем, что показывает Терминал в истории в режиме позиций.

 
Alexey Viktorov #:

Можно, но через… сами знаете через чего. Например через ордера или через сделки.

Выбрать сделки за определённый период. Перебрать их в цикле читая тип сделки, открывающая или закрывающая позицию… И дальше по желанию, куда-то это всё вывести…

да, сейчас использую такое решение. Думал, может, чем проще есть, как в мт4)

 
fxsaber #:

Можно в стиле MT4.


Сравните распринтовку этого скрипта с тем, что показывает Терминал в истории в режиме позиций.

Спасибо за вашу библиотеку, надо будет попробовать)

Причина обращения: