| / | Форум |
|
KING
09.05.2008 23:30
Qnt=0; for(int i=0; i<OrdersTotal(); i++) // По рыночн. и отлож. ордерам { if (OrderType() == OP_BUY || OrderType() == OP_SELL) //.. открытый ордер Qnt++; // Колич. ордеров CurrentOrders[Qnt][9]=OrderOpenTime(); // Время открытия ордера } Первое я нашел все открытые ордера. for (int i=1; i<=Qnt; i++) { Alert("Время открытия ордера =",CurrentOrders[i][9]); }Потом вывел из массива время открытия ордеров. Какое время мне покажет, если это были отложенный ордера, который открылись и стали рыночными? И какую строчку написать чтобы закрыть этот ордер, при условии что Time[0]>(время открытия ордера + livetime), где livetime время в секундах, а время открытия ордера - время вывода ордера на рынок, а не время выставления отложенного ордера??? |
|
Особенности и ограничения тестирования торговых стратегий в MetaTrader 4 Эта статья поможет больше узнать об особенностях и ограничениях тестера торговых стратегий в MetaTrader 4... |
|
SK.
10.05.2008 00:28
В этом рассждении есть несколько ошибок. 1. Время открытия ордера не имеет никакого отношения к вопросу закрытия. Общий смысл такой: если ордер должен быть закрыт, то он должен быть закрыт независимо от того, открыт ли он 5 мин. назад или месяц назад и независимо от того, был ли он открыт в результате преобразования отложенного в рыночный или просто открыт. Открывать и закрывать ордера следует в соответствии с торговыми критериями ('Автоматическое закрытие и открытие позиции'). В некоторых случаях необходимо закрыть ордер незадолго до так называемой точки бифуркации, т.е. перед выходом новостей (прогноз может не сработать). В этом случае необходимо сравнивать текущее время и заданное время новостей, и закрыться, например, не позднее, чем за 5 мин.
В целом рассуждение правильное. Но по мере углубления в вопрос становится очевидно, что любая программа, предназначенная для реальной торговли, должна содержать блок учёта ордеров. См. http://book.mql4.com/ru/samples/expert, http://book.mql4.com/ru/build/orders и 'Учёт ордеров в большой программе'.
Кратко, общий порядок закрытия должен быть такой: а. закрытие встречных рыночных б. закрытие остаточных рыночных, причём, в порядке стоимости (чем больше лотов, тем раньше, независимо от места открытия) в. удаление отложенных в порядке приоритета (сначала те, что ближе, потом те, кот. со стопами и т.д.) |
|
Integer
10.05.2008 00:38
KING писал (а):
Какое время мне покажет, если это были отложенный ордера, который открылись и стали рыночными? Время срабатывания, т.е. время когда отложенный превратился в рыночный. |
|
Integer
10.05.2008 00:40
KING писал (а):
И какую строчку написать чтобы закрыть этот ордер, при условии что Time[0]>(время открытия ордера + livetime), где livetime время в секундах, а время открытия ордера - время вывода ордера на рынок, а не время выставления отложенного ордера???
Так и написать: Time[0]>OrderOpenTime()+livetime |
|
KING
10.05.2008 04:33
Integer писал (а):
KING писал (а):
И какую строчку написать чтобы закрыть этот ордер, при условии что Time[0]>(время открытия ордера + livetime), где livetime время в секундах, а время открытия ордера - время вывода ордера на рынок, а не время выставления отложенного ордера???
Так и написать: Time[0]>OrderOpenTime()+livetime Integer писал (а):
KING писал (а):
Какое время мне покажет, если это были отложенный ордера, который открылись и стали рыночными? Время срабатывания, т.е. время когда отложенный превратился в рыночный. Спасибо за ответы на вопросы. |
|
edivio
22.03.2009 01:55
Добрый день. Как правильно написать в код эксперта так, чтобы он работал только через определенное время. На пример, он должен закрываться через 1 час и 20 минут от открытие ордера и открыть новый через 20 минут после закрытия последнего ордера. |
|
MaximuS60
26.01.2010 10:48
Есть у меня один не плохой советник, но ему не хватает одной "мелочи",
так как в нем ордера в минусе просиживаются, накапливая "негатив". По
моим анализам заметил что хорошо было бы если ордера (которые в минусе)
закрывались после 1-1,5 сутки простаивания.
Я так понимаю для этого нужен эксперт, который закрывал бы эти ордера. Может кто помочи? |
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий