Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Где найти программиста? В сервисе Фриланс!
sdf373
41
sdf373 2015.06.22 20:18 

Подскажите  пожалуйста, как нужно что бы при каждом сигнале открывал новый ордер в том же направлении к  примеру Buy

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

if (Buy)  //Сигнал на покупку

{  if(OrderSelect(g, SELECT_BY_POS, MODE_TRADES))

  if ( OrderMagicNumber() == Mag ) return(0);

if(OrderSend(NULL, OP_BUY, 0.1, MarketInfo(NULL,MODE_ASK), 0 , Bid-110*Point*10, Ask+110*Point*10 ,NULL, Mag, 0, Blue ));

return(0); }

 или такой вариант

if (OrdersTotal()<1)  {

 if (Buy)  {  

  if(OrderSend(NULL,OP_BUY,0.1,MarketInfo(NULL,MODE_ASK),0,Bid-110*Point*10,Ask+110*Point*10,NULL,1,0,Blue));

   return(0); }       }

 

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

а те открытые позиции  сами закроются при своих стопах

Vitalie Postolache
11084
Vitalie Postolache 2015.06.22 20:37  

вот это убрать надо

if (OrdersTotal()<1)

а вообще, считать надо только свои ордера, а не все подряд

sdf373
41
sdf373 2015.06.22 21:07  

Убрав эту строку сова при каждом тике открывает

Здесь что то другое нужно сделать? 

Vitalie Postolache
11084
Vitalie Postolache 2015.06.22 23:28  
Конечно. Например, ввести определённое расстояние в пипсах до следующего ордера. Или определённое время с открытия предыдущего ордера запрещать торговлю.
khorosh
8045
khorosh 2015.06.23 22:21  
И ещё открывать на одном баре только 1 позицию.
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий