Сделки открывать в 00.00 - страница 2

 
PapaYozh писал(а) >>

Если есть отложенный ордер и он попал на 0-ую позицию, то OrderSelect(0,SELECT_BY_POS,MODE_TRADES) будет возвращать false, и Ваш советник понаоткрывает ордеров.

Извиняюсь, не "понаоткрывает", а "понаставит", не обратил внимание, что выставляется отложенник.

Соответственно, если совсем ордеров нет, то тоже "понаставит". И только если есть открытый ордер и у него 0-ая позиция, то советник ничего не поставит.

 
Именно, тогда у же лучше
if(OrdersTotal()<1){OrderSend();}
 
PapaYozh писал(а) >>

Если есть отложенный ордер и он попал на 0-ую позицию, то OrderSelect(0,SELECT_BY_POS,MODE_TRADES) будет возвращать false, и Ваш советник понаоткрывает ордеров.

YuraZ прав.

отложеник становитса 0, и советник больше не открывает ордеров

 
YuraZ писал(а) >>

а если у меня по какой либо паре или по этой же висит профитный ордер и цель не достигнута

а я по пути собираюсь еще работать по этой паре или по другим

тогда 0-го нет и ваш метод не годится

вопрос тут в том что это не корректно так писать

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

чем ваша

Согласен, но не во всем. Задача была открывать ордер в 00, но там не говорилось что будут ищо ордера. Если брать во внимание открытые ордера не этим советником - такая тактика не годитса!

Я написал пример, простой, для одноторгового советника!

 
MOLET писал(а) >>

Тест с демо!

Все как всегда, нормально работает.

Действительно ордер будет выбираться среди открытых и отложенных, тормознул по поводу OrderSelect. Но вероятно существует неоднозначная ситуация, когда открытые и/или отложенные ордера есть, а OrderSelect(0,SELECT_BY_POS,MODE_TRADES) вернет false. Посмотрите пример к OrdersTotal

 
MOLET >>:

Согласен, но не во всем. Задача была открывать ордер в 00, но там не говорилось что будут ищо ордера. Если брать во внимание открытые ордера не этим советником - такая тактика не годитса!

Я написал пример, простой, для одноторгового советника!

тут как раз и надо! писать так что бы все работало и в любом случае!

я отвечал инертно глядя на первый пост где проверки на нулевой ордер не было !

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


при добавлении условия вашего на проверку да верно открылся бы один ордер

но при наличии одного из открытых профитных ВАШ алгоритм дает осечку

а писать надо так что бы осечек не было


потому лучше усложнить проверку другой логикой!


---

Поймите работа с ордерами не бывает простой!

 
PapaYozh писал(а) >>

Тестировать приятнее своих, так что остается только первое.

Действительно ордер будет выбираться среди открытых и отложенных, тормознул по поводу OrderSelect. Но вероятно существует неоднозначная ситуация, когда открытые и/или отложенные ордера есть, а ордер Select(0,SELECT_BY_POS,MODE_TRADES) вернет false. Посмотрите пример к OrdersTotal

Согласен! Этот случай не учитывался заране, так, как хотел навести простой пример как можно сделать открыти отложеника в 00.

Насчет учота других ордеров, считаю что лудше сделать контроль открытих ордеров в 00 и записи в глоб. перем. и последующего расмотрения в советнике.

 
YuraZ писал(а) >>

---

Поймите работа с ордерами не бывает простой!


Как-то мне всегда проще работать с ордерами, чем с другими "инструментами".

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