Доработка ботов (советников, индикаторов) vol. 2

Доброго дня, всем. Господа программисты, помогите в шаблон вставить функции переноса в безубыток и частичного закрытия ордера. БУ по наступлении условий (достижении уровня), только этот уровень буду брать с индикатора, а не задавать в настройках...и обе функции работать дожны в паре...то есть цена достигла уровня (значение берем с индикатора через iCustom), советник тут же закрыл часть ордера (задается в настройках как % от лота) и перенес в БУ. Достигли следующего уровня (с того же индикатора) выполнилась функция полного закрытия ордера. Сама пытался вставить из других советников, не работает...Выручайте други))) время исправлять карму пришло)))
 

Вложения

Уважаемые программисты!
Добавьте пожалуйста в советники функцию максимально допустимого спреда при торговле(от 0 включительно).
Заранее благодарен!
Уважаемые программисты!
Обратите пожалуйста внимание на мой пост
 
Уважаемые программисты!
Добавьте пожалуйста в советники функцию максимально допустимого спреда при торговле(от 0 включительно).
Заранее благодарен!
Если спред больше указанного - открывать ордера не будет
 

Вложения

Здравствуйте уважаемые программисты! Попробовал написать советник по каналу без перерисовки. Он почему то не хочет открывать ордера на покупку, открывает только на продажу и не по линиям канала, а как то по своему. Голову уже сломал, ни чего не получается сам учусь, опыта нет. Помогите пожалуйста и если можно подскажите, где не правильно у меня в коде.
 

Вложения

Здравствуйте уважаемые программисты! Попробовал написать советник по каналу без перерисовки. Он почему то не хочет открывать ордера на покупку, открывает только на продажу и не по линиям канала, а как то по своему. Голову уже сломал, ни чего не получается сам учусь, опыта нет. Помогите пожалуйста и если можно подскажите, где не правильно у меня в коде.
Ошибка здесь
Код:
   if (Bid >= PriceHigh && CountBuy() > 0)                                                  // Для
   {                                                                                        // закрытия
      for(int i = OrdersTotal() -1; i>= 0; i--)                                             // ордеров
      {                                                                                     // по
         if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))                                    // скользящим
         {                                                                                  // средним
            if (OrderMagicNumber() == Magic && OrderType() == OP_BUY)
                if(!OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Black))
                   Print("Ошибка закрытия ордера на покупку!");              
         }
      }
   }
if (Bid >= PriceHigh && CountBuy() > 0)
 
Ошибка здесь
Код:
   if (Bid >= PriceHigh && CountBuy() > 0)                                                  // Для
   {                                                                                        // закрытия
      for(int i = OrdersTotal() -1; i>= 0; i--)                                             // ордеров
      {                                                                                     // по
         if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))                                    // скользящим
         {                                                                                  // средним
            if (OrderMagicNumber() == Magic && OrderType() == OP_BUY)
                if(!OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Black))
                   Print("Ошибка закрытия ордера на покупку!");             
         }
      }
   }
if (Bid >= PriceHigh && CountBuy() > 0)
Попробовал переделал всё тоже самое, ни чего не изменилось. Также одни sell открывает и по линиям канала не работает. Помогите!!!!!
 
Так я так и сделал, а у меня всё равно ерунда какая то. Совсем не так, как у вас.
Загрузи то, что я выложил и попробуй
P.S. еще один момент, поставь первый бар, т.к. на нулевом баре показания прыгают
Код:
   PriceHigh = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 1);
   PriceLow  = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 1);
 
У тебя в коде стоит "<=" а надо ">="
И все работает
Посмотреть вложение 480049
Неплохой советник получился!
Не могли бы вы добавить контроль спреда в TMA_Fair2(как вы добавили в CyberiaTraderSpread перед этим),и MoneyManagment(работает при lot=0.00),как это реализовано в советнике Nevalyashka_ (2)?
Заранее благодарен!
 

Вложения

А, что сделать в советнике, что бы он с разными индексами валют работал? Я в другом терминале хочу попробовать, а там валюты с индексом m.
 
А, что сделать в советнике, что бы он с разными индексами валют работал? Я в другом терминале хочу попробовать, а там валюты с индексом m.
Там везде стоит текущий символ, так что суффиксы и приставки не должны влиять.
 
Загрузи то, что я выложил и попробуй
P.S. еще один момент, поставь первый бар, т.к. на нулевом баре показания прыгают
Код:
   PriceHigh = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 1);
   PriceLow  = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 1);
Загрузи то, что я выложил и попробуй
P.S. еще один момент, поставь первый бар, т.к. на нулевом баре показания прыгают
Код:
   PriceHigh = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 1, 1);
   PriceLow  = iCustom(NULL, 0, "TMA_Fair", TimeFrame, HalfLength, Price, ATRMultiplier, ATRPeriod, Interpolate, 2, 1);
Терминал перегрузил и котировки подгрузил и всё заработало. Спасибо за участие.
 
Неплохой советник получился!
Не могли бы вы добавить контроль спреда в TMA_Fair2(как вы добавили в CyberiaTraderSpread перед этим),и MoneyManagment(работает при lot=0.00),как это реализовано в советнике Nevalyashka_ (2)?
Заранее благодарен!
контроль спреда в TMA_Fair2
 

Вложения

Посмотрели (2196) Посмотреть

Отслеживают (1863) Посмотреть

Назад
Верх