ФОРТС Как узнать первоначальную цену покупки фьючерса - страница 3

 

pronych:
в своем роботе на апи сохраняю в файлы. но там истории нет.

Подскажите. Я хочу знать. 

Если истории нет, то естественно бесполезно в ней ковыряться. Это брокера надо тормошить или перейти к другому.

Все зависит от целей которой хотите добиться. Если позиция переоткрывыется (роловер, клиринг) и оставляет комментарий, то можно отсортировать по комментарию.

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

Можно добавить в коммент типа "Я ПЕРВЫЙ", "Я ВТОРОЙ", "Я ПОСЛЕДНИЙ" и т.д. А затем перебирать историю за нужный промежуток времени с помощью функций

   HistorySelect(StartTime,TimeCurrent()); // создадим список ордеров и сделок, находящихся в истории, за определенный промежуток времени

   TotalDeals=HistoryDealsTotal(); // количество сделок в истории

   for(i=TotalDeals-1; i>=0; i--)
     {
   // и т.д.
 
notused:
Меня также интересует подобный вопрос. Хотя он и не связан с FORTS (хотя для себя я всё выяснил, хочу только чтобы разработчики либо справку поправили, либо признали ошибки и исправили).
Это не ко мне, я ищу только пути решения не зависимо от того что правильно или неправильно в терминале.
 
Serj_Che:
Это не ко мне, я ищу только пути решения не зависимо от того что правильно или неправильно в терминале.
это мы уже проходили - нашли косяк, промолчали, а в один прекрасный день его нашёл кто-то ещё и разработчики всё исправили, а предыдущий код уже не работает (в лучшем случае, в худшем - теряем деньги)
 

Уважаеиый Serj Che!

Вы, вероятно, не внимательно просмотрели, приведённый мною выше код.

Там есть такая строчка:

ulong order_ticket = HistoryDealGetInteger( deal_ticket, DEAL_ORDER );

Сделки, которые совершаются клиентом ВСЕГДА имеют билет ордера( в отличии от других манипуляций со счётом)! 

Вы предлагаете делать то же самое, но через "Ирландию".... 

И ещё... Причём тут брокер? МТ-5 не правильно работает! 

 
Mikalas:

Уважаеиый Serj Che!

Вы, вероятно, не внимательно просмотрели, приведённый мною выше код.

Может и не внимательно, 

поставьте вместо HistorySelectByPosition( pos_id ); - HistorySelect(StartTime,TimeCurrent()); 

тогда проблем не должно быть.

по крайней мере у меня все работает как надо. 

 
Serj_Che:

Может и не внимательно, 

поставьте вместо HistorySelectByPosition( pos_id ); - HistorySelect(StartTime,TimeCurrent()); 

тогда проблем не должно быть.

по крайней мере у меня все работает как надо. 

Ну да, конечно....

А можно еще свою DLL написать и врапится напрямую к серверу брокера.

P/S Зачем же тогда ПЛАТФОРМА? 

 
Mikalas:

Ну да, конечно....

А можно еще свою DLL написать и врапится напрямую к серверу брокера.

P/S Зачем же тогда ПЛАТФОРМА? 

DLL вам не поможет. Я предложил нормальный рабочий вариант. 

Не устраивает - пользуйте QUIK

 
Serj_Che:

DLL вам не поможет. Я предложил нормальный рабочий вариант. 

Не устраивает - пользуйте QUIK. 

Да, не устраивает, но QUIK не буду использовать!

Сплю и вижу когда "переползу" на Plaza II.

Думаю, что к лету закончу свой проект http://cgate-core.ru

 
Serj_Che:

Может и не внимательно, 

поставьте вместо HistorySelectByPosition( pos_id ); - HistorySelect(StartTime,TimeCurrent()); 

тогда проблем не должно быть.

по крайней мере у меня все работает как надо. 

Mikalas кажется говорил о том, что некоторые трейды физически отсутствуют в истории metatrader5. Никакими манипуляциями с  HistorySelect Вы эту проблемы не решите.

Mikalas:

И ещё... Причём тут брокер? МТ-5 не правильно работает! 

Не факт. На форекс-счетах ни разу не видел пропадающей истории, по крайней мере по вине именно МТ5.


 
C-4:

Mikalas кажется говорил о том, что некоторые трейды физически отсутствуют в истории metatrader5. Никакими манипуляциями с  HistorySelect Вы эту проблемы не решите.

Он говорит, что после клиринга меняются ордера участвующие в совокупной позиции.