Значит, скорее всего, автоторговля советниками запрещена в этом ДЦ
Общество телепатов уже решает эту проблему....
...
.......
.......завершено 99%
О!!! говорят, решили и отправили ответ по своим каналам...
А как начсет мордашки и разрешения в параметрах терминала. Стоят?
И еще сделайте пожалуйста вывод номера кода ошибки.
Мне интересно кто-нибудь знает? если торговля запрещена, можно "как-нибудь" всёравно торговать роботу? кроме взлома или декомпиляции терминала и т.д... Не нужно рассказывать способ, просто есть ли такая возможность вообще?
Не проще ли сменить ДЦ?
Код без ошибок. Автоторговля разрешена - звонили в ДЦ. Разрешения есть.
extern string t="Параметры ордеров"; extern int Profit=200; extern int StopLoss=100; extern int TrailingStop=50; extern string t2="Магическое число ордера"; extern int MAGIC=0;//1987088 //+------------------------------------------------------------------+ int start() { int cnt, total; total=OrdersTotal(); for(cnt=0;cnt<total;cnt++) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); if(OrderType()<=OP_SELL && OrderSymbol()==Symbol()&& OrderMagicNumber()==MAGIC ) { if(OrderType()==OP_BUY) { tral1(); orders1(); return(0); } else { tral2(); orders2(); return(0); } } } return(0); } //+------------------------------------------------------------------+ void orders1 () { RefreshRates(); if(OrderStopLoss()==0) { OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble((Bid-Point*StopLoss),Digits),NormalizeDouble((Ask+Point*Profit),Digits),0,Green); return(0); } } void orders2 () { RefreshRates(); if(OrderStopLoss()==0) { OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble((Ask+Point*StopLoss),Digits),NormalizeDouble((Bid-Point*Profit),Digits),0,Red); return(0); } } //+------------------------------------------------------------------+ void tral1 () { RefreshRates(); if(NormalizeDouble(Bid-OrderOpenPrice(),Digits)>NormalizeDouble(Point*TrailingStop,Digits)) { if(OrderStopLoss()<NormalizeDouble(Bid-Point*TrailingStop, Digits)) { OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble((Bid-Point*TrailingStop),Digits),OrderTakeProfit(),0,Green); return(0); } } } void tral2 () { RefreshRates(); if(NormalizeDouble((OrderOpenPrice()-Ask),Digits)>NormalizeDouble((Point*TrailingStop),Digits)) { if((NormalizeDouble(OrderStopLoss(),Digits)>NormalizeDouble((Ask+Point*TrailingStop),Digits))) { OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble((Ask+Point*TrailingStop),Digits),OrderTakeProfit(),0,Red); return(0); } } } //+------------------------------------------------------------------+
Kharin, хватит тупить.
sergeev, в коде нет ошибок.
StatBars, есть возможность копировать прогой на Делфи действия на МТ4 где запрет автоторговли, советника на МТ4, на котором можно торговать советникам.
Нет. Ситуация такая - Есть ДЦ где торговля экспертам запрещена и нужно чтобы именно здесь робот торговал!
Знает ли кто-нибудь такой способ, поволяющий это сделать?
Нет. Ситуация такая - Есть ДЦ где торговля экспертам запрещена и нужно чтобы именно здесь робот торговал!
Знает ли кто-нибудь такой способ, поволяющий это сделать?
Например, через ДЛЛ имитировать ручную работу в терминале. Ведь советник запускается, и не работают только торговые функции?
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Сделал советник, он должен ставить на открытую в ручную позу тейк и стоп. И потом тралить позу.
Несколько раз переделывал код, но не работает.
В журнале пишет при установке советника на график что советник запущен, потом когда позу сделать ручками -- пишет МТ4 в журнале: запрещена торговля.