[АРХИВ]Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 5. - страница 17
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Привет ! Вопрос в следующем как узнать что объект удален в ручную если о объекте мы знаем только его описание . то есть есть объект с неизвестным именем , к данному объекту прикреплен тейк профит, если обьект удален удалить тейк профит , при этом имя обьекта мы не знаем ....
Может есть возможность как то изменить имя объекта ????
Помогите пожалуйста доработать советник!!!Я хочу,что-бы по приходу сигнала открывался один ордер,по приходу следующего ещё один и т.д.,независимо от того есть открытые ордера или нет.
Подскажите,что неправильно!!!
тупик.....
if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }
Print(flag,flagg);
Ма_1 - короткая
Ма_2 - длинная
при Ma_1>Ma_2 сигналит news.wav без остановки, и принтует 0 1 (т.е flag=0 flagg=1)
но как так может быть, что при flagg=1 выполняется условие (Ma_1>Ma_2 && flagg==0) и проходит {PlaySound("news.wav") ???
А посмотрите на такой вариант, без глобальных переменных.
тупик.....
if(Ma_1>Ma_2 && flagg==0) {PlaySound("news.wav"); flagg=1; flag=0; }
if(Ma_1<Ma_2 && flag==0) {PlaySound("ok.wav"); flag=1; flagg=0; }
Print(flag,flagg);
Ма_1 - короткая
Ма_2 - длинная
при Ma_1>Ma_2 сигналит news.wav без остановки, и принтует 0 1 (т.е flag=0 flagg=1)
но как так может быть, что при flagg=1 выполняется условие (Ma_1>Ma_2 && flagg==0) и проходит {PlaySound("news.wav") ???
Распечатайте состояние флагов отдельно для каждого условия. У вас получается так потому, что в условиях не учитывается состояние второго флага.
P.S. И удобнее, чтобы не путаться распечатывать Print("flag=",flag,"flagg=",flagg);
Вот так у меня, на демке стоит робот. Я уж детально е помню, как придумал написать.
if(Profit>AccountBalance()*koefitsientudaleniya){
int Total=OrdersTotal();
for( i=OrdersTotal()-1;i>=0;i--){
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol() != Symbol()) continue;
if (OrderMagicNumber() != 450) continue;
if(OrderType()==OP_SELL) {
OrderClose(OrderTicket(),OrderLots(),Ask,6,Red);Print(" i " , i," GetLastError()CloseOP_SELL ", GetLastError() );}
if(OrderType()==OP_BUY) {
OrderClose(OrderTicket(),OrderLots(),Bid,6,Red);Print(" i " , i," GetLastError()CloseOP_BUY ", GetLastError() );}}} // Если профит больше некой задуманой нами виличины, закрываем все ордера!
//----
Ну или пусть старшие товарищи посоветуют..