Тикет закрытой позиции как в мт4, как найти? как вытащить тикет закрытой позиции, по тикету сделки? РЕШЕНО! - страница 3

 
Vladislav Andruschenko:

например 

вот тут ордер бай, сделка IN потом ордер SELL сделка OUT

визуально вполне понятно что закрылось BUY

 а как это превраить в код

 

может кто уже юзал такую проблему.  

Я же привёл пример кода ранее. https://www.mql5.com/ru/forum/62832#comment_1828331

Добавте переменные для OUT и всё 

Тикет закрытой позиции как в мт4, как найти? как вытащить тикет закрытой позиции, по тикету сделки?
Тикет закрытой позиции как в мт4, как найти? как вытащить тикет закрытой позиции, по тикету сделки?
  • www.mql5.com
Тикет закрытой позиции как в мт4, как найти? - - Категория: эксперты форекс, торговые роботы и советники
 
Михаил:

Я же привёл пример кода ранее. https://www.mql5.com/ru/forum/62832#comment_1828331

Добавте переменные для OUT и всё 

у Вас функция проверки цены открытой позиции по сделкам? 

почему бы это не выяснить 

POSITION_PRICE_OPEN

Цена позиции 

 

А если позиция закрыта, то по ёё ранее взятому идентификатору (когда она была открыта),

мы делаем всё тоже самое, но только в истории 

 

а если позиция  закрыта не полностью, а закрыта лишь ее часть?

 
Vladislav Andruschenko:

у Вас функция проверки цены открытой позиции по сделкам? 

почему бы это не выяснить 

POSITION_PRICE_OPEN

Цена позиции 

Днло в том, что на ФОРТС есть клиринги и то, что Вы приводите, это

искусственная цена позиции, а я беру реальную без учёта клирингов 

 
спасибо. буду знать. 
 
Vladislav Andruschenko:

хорошо, есть 3 сделки по разным ценам, 

1,1 1,2 1,3

общая в мт5 = 1,2

октырваем еще одну сделку OUT - какую из этих сделок закрыли?  

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

Делаем бутерброд:  хлеб, масло, сыр. А потом раз и пол бутерброда отрезали, у каждой половины есть хлеб, масло и сыр.

 
Dmitry Fedoseev:

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

Делаем бутерброд:  хлеб, масло, сыр. А потом раз и пол бутерброда отрезали, у каждой половины есть хлеб, масло и сыр.

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

ведро наполненное водой. чашка - сделка, черпает или добавляет воду.  

 
Dmitry Fedoseev:

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

Делаем бутерброд:  хлеб, масло, сыр. А потом раз и пол бутерброда отрезали, у каждой половины есть хлеб, масло и сыр.

С бочкой более нагляднее.. :)

P/S А почему, при частичном закрытии, совокупная цена не меняется? 

 

Если нужно переделать логику работы с ордерами из МТ4 в МТ5 максимально приближенно, то лучше это делать следующим образом:

1. Позиция не должна оперировать SL и TP, т. к. считаем, что она образована несколькими ордерами, каждый из которых может иметь свой SL и TP.

2. В качестве "указателя" количества ордеров по текущему символу выступает пара отложенных ордеров: один стоповый (эквивалент SL), второй - лимитный (эквивалент ТР). Эти ордера имеют одинаковый объем. За соответствием этих ордеров, придется следить (при срабатывании одного ордера соответствующий необходимо удалить). Были бы ОСО-ордера, тогда дело существенно упростилось бы.

 

В итоге открытие ордера в МТ4 это в МТ5 Buy или Sell с нулевыми SL и TP плюс установка двух отложенных ордеров.

Закрытие ордера это, опять же, Buy или Sell с нулевыми SL и TP плюс удаление соответствующих отложенных ордеров.

Структура позиции - это совокупность отложенных ордеров. В дальнейшем для определения того факта, какой же "ордер МТ4" закрылся, потребуется просматривать только историю ордеров.