Скачать MetaTrader 5

Проблема с множественным воставлением BuyStop

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
DarkAngel
107
DarkAngel  

Здравствуйте! В советнике прописанно открытие и BuyStop и SellLimit....Но открывает Только BuyStop и много штук..А SellLimit не открывает! Как решить?

if (Hour()==4 && Minute()==00 && Кризис_1989==true)
            {
            OrderSend(Symbol(), OP_BUYSTOP, DefaultVolumeA, GetTakeProfitBuy(), 3, Ask, GetTakeProfitBuyA(), NULL,MN,0,Blue); 
           OrderSend(Symbol(), OP_SELLLIMIT, DefaultVolumeB, GetSELLILIMIT(), 3, GetTakeProfitBuyB(), GetStopLossSell(), NULL,MN,0,Blue); 
            return(0);
            }

 В тестере всё работает нормально, а на реале такое выдаёт! И ещё почемуто раньше времени открывает сделки?! Вот лог с реал счёта:

03:57:42 '1050419': instant order buy 0.10 AUDUSD at 1.0414 sl: 1.0401 tp: 1.0426
03:57:43 '1050419': order buy 0.10 AUDUSD opening at 1.0414 sl: 1.0401 tp: 1.0426 failed [Not enough money]
03:57:43 '1050419': pending order buy stop 0.20 AUDUSD at 1.0426 sl: 1.0414 tp: 1.0436
03:57:43 '1050419': request was accepted by server
03:57:44 '1050419': request in process
03:57:44 '1050419': order was opened : #232907250 buy stop 0.20 AUDUSD at 1.0426 sl: 1.0414 tp: 1.0436
03:57:52 '1050419': instant order buy 0.10 AUDUSD at 1.0415 sl: 1.0402 tp: 1.0427
03:57:52 '1050419': order buy 0.10 AUDUSD opening at 1.0415 sl: 1.0402 tp: 1.0427 failed [Not enough money]
03:57:52 '1050419': pending order buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:57:53 '1050419': request was accepted by server
03:57:53 '1050419': request in process
03:57:53 '1050419': order was opened : #232907256 buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:57:58 '1050419': instant order buy 0.10 AUDUSD at 1.0413 sl: 1.0400 tp: 1.0425
03:57:59 '1050419': order buy 0.10 AUDUSD opening at 1.0413 sl: 1.0400 tp: 1.0425 failed [Not enough money]
03:57:59 '1050419': pending order buy stop 0.20 AUDUSD at 1.0425 sl: 1.0413 tp: 1.0435
03:58:00 '1050419': request was accepted by server
03:58:01 '1050419': request in process
03:58:01 '1050419': order was opened : #232907264 buy stop 0.20 AUDUSD at 1.0425 sl: 1.0413 tp: 1.0435
03:58:01 '1050419': instant order buy 0.10 AUDUSD at 1.0415 sl: 1.0402 tp: 1.0427
03:58:02 '1050419': order buy 0.10 AUDUSD opening at 1.0415 sl: 1.0402 tp: 1.0427 failed [Not enough money]
03:58:02 '1050419': pending order buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:58:02 '1050419': request was accepted by server
03:58:03 '1050419': request in process
03:58:04 '1050419': order was opened : #232907267 buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:58:07 '1050419': instant order buy 0.10 AUDUSD at 1.0415 sl: 1.0402 tp: 1.0427
03:58:07 '1050419': order buy 0.10 AUDUSD opening at 1.0415 sl: 1.0402 tp: 1.0427 failed [Not enough money]
03:58:07 '1050419': pending order buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:58:07 '1050419': request was accepted by server
03:58:08 '1050419': request in process
03:58:08 '1050419': order was opened : #232907269 buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:58:13 '1050419': instant order buy 0.10 AUDUSD at 1.0416 sl: 1.0403 tp: 1.0428
03:58:14 '1050419': order buy 0.10 AUDUSD opening at 1.0416 sl: 1.0403 tp: 1.0428 failed [Not enough money]
03:58:14 '1050419': pending order buy stop 0.20 AUDUSD at 1.0428 sl: 1.0416 tp: 1.0438
03:58:14 '1050419': request was accepted by server
03:58:15 '1050419': request in process
03:58:15 '1050419': order was opened : #232907275 buy stop 0.20 AUDUSD at 1.0428 sl: 1.0416 tp: 1.0438
03:58:23 '1050419': instant order buy 0.10 AUDUSD at 1.0415 sl: 1.0402 tp: 1.0427
03:58:23 '1050419': order buy 0.10 AUDUSD opening at 1.0415 sl: 1.0402 tp: 1.0427 failed [Not enough money]
03:58:24 '1050419': pending order buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
03:58:24 '1050419': request was accepted by server
03:58:24 '1050419': request in process
03:58:25 '1050419': order was opened : #232907292 buy stop 0.20 AUDUSD at 1.0427 sl: 1.0415 tp: 1.0437
Vladimir Paukas
4099
Vladimir Paukas  
a.DarkAngel:

Здравствуйте! В советнике прописанно открытие и BuyStop и SellLimit....Но открывает Только BuyStop и много штук..А SellLimit не открывает! Как решить?

В тестере всё работает нормально, а на реале такое выдаёт! И ещё почемуто раньше времени открывает сделки?! Вот лог с реал счёта:

Сначала пишется цена, потом слипаж, стоплосс, а потом уже тейкпрофит.

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

Anatoli Kazharski
58626
Anatoli Kazharski  
a.DarkAngel:

Здравствуйте! В советнике прописанно открытие и BuyStop и SellLimit....Но открывает Только BuyStop и много штук..А SellLimit не открывает! Как решить?

В тестере всё работает нормально, а на реале такое выдаёт! И ещё почемуто раньше времени открывает сделки?! Вот лог с реал счёта:


[Not enough money] - Недостаточно средств.
DarkAngel
107
DarkAngel  
paukas:

Сначала пишется цена, потом слипаж, стоплосс, а потом уже тейкпрофит.

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



В ордере всё прописанно правильно! Просто заместо названия StopLoss функции я изменил название на TakeProfit....От изменения названия функции, решение в функции не меняется!
DarkAngel
107
DarkAngel  
tol64:

[Not enough money] - Недостаточно средств.


Я знаю что недостаточно, но вопрос не в этом! Buystop должен всёравно УСТАНАВЛИВАТЬСЯ а когда нет средств он удаляется
Anatoli Kazharski
58626
Anatoli Kazharski  
a.DarkAngel:


Я знаю что недостаточно, но вопрос не в этом! Buystop должен всёравно УСТАНАВЛИВАТЬСЯ а когда нет средств он удаляется
В таком случае информации недостаточно, чтобы понять причину.
DarkAngel
107
DarkAngel  
paukas:

Сначала пишется цена, потом слипаж, стоплосс, а потом уже тейкпрофит.

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



А почему OP_SELLLIMIT не открывает? И не выдаёт ошибок! Всё правильно в функции написанно:

Пример:

double GetStopLossBuy() 
  {     
    return (Bid - AStopLoss*Point);
  } 

И если я изменил в функции название решение не поменялось:

double GetTakeProfitBuy() 
  {     
    return (Bid - AStopLoss*Point);
  } 

В этой функции реализованно всё также:
OrderSend(Symbol(), OP_SELLLIMIT, DefaultVolumeB, GetSELLILIMIT(), 3, GetTakeProfitBuyB(), GetStopLossSell(), NULL,MN,0,Blue)
DarkAngel
107
DarkAngel  
tol64:
В таком случае информации недостаточно, чтобы понять причину.


А что нужно?
Рустам
3597
Рустам  

Весь код, ибо в этом бардаке только так разобраться и можно. это если у кого возникнет желание...

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

DarkAngel
107
DarkAngel  
FAQ:
Весь код, ибо в этом бардаке только так разобраться и можно. это если у кого возникнет желание...


Это не бардак а защита от школьников)))
Рустам
3597
Рустам  

Оппа, не школьник нашелся...

Или это защита от самого себя?

123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий