Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1334

 
Alexey Viktorov:

Всегда есть нулевая сделка, по времени первая с типом IN и последняя с типом OUT и все они имеют один POSITION_IDENTIFIER. Вот если было несколько закрытий частями, то это надо внимательно проверять. Я не пробовал, но всё решаемо и в этом я не сомневаюсь. По любому прибыль в пунктах считается в зависимости от объёма, следовательно считать надо по объёму открытия и закрытия.Только вон надо ли оно кому-то считать в пунктах если доливались и закрывали частями…

Я противник универсальности функций, поэтому за ненадобностью не изобретаю всякую чушь которую бредовые СМСки могут занести в мозг.

Алексей, безо всяких задних мыслей, хочу узнать Ваше мнение:

"прибыль в пунктах считается в зависимости от объёма" .... я на самом деле не понял это высказывание. 

Я так понимаю, прибыль в ПУНКТАХ - это прибыль в пунктах. Никакого отношения ни к объёму, ни к валюте не имеющая.

В то же время я понимаю, что ... многие воспринимают ПРИБЫЛЬ именно в некоторой валюте.

Из этих МОИХ непоняток вопрос: а не проще ли MQ сделать удобоваримую конвертацию пунктов в валюту?

Это бы избавило ВСЕХ - от написания функций конвертации и от вопросов к MQ подобного рода.

Буду рад, если Вы поясните где я не прав. )))

 
Сергей Таболин:

Алексей, безо всяких задних мыслей, хочу узнать Ваше мнение:

"прибыль в пунктах считается в зависимости от объёма" .... я на самом деле не понял это высказывание. 

Я так понимаю, прибыль в ПУНКТАХ - это прибыль в пунктах. Никакого отношения ни к объёму, ни к валюте не имеющая.

В то же время я понимаю, что ... многие воспринимают ПРИБЫЛЬ именно в некоторой валюте.

Из этих МОИХ непоняток вопрос: а не проще ли MQ сделать удобоваримую конвертацию пунктов в валюту?

Это бы избавило ВСЕХ - от написания функций конвертации и от вопросов к MQ подобного рода.

Буду рад, если Вы поясните где я не прав. )))

Мой опыт в отношении прибыли в пунктах складывается только из прочитанного. Я сам этого не делал никогда, видимо по той-же причине непонимания. Ну писали что 1 пункт лотом 0.01 и 1 пункт лотом 1 нельзя сравнивать. Что-то типа своп забирает много, если убытки пересиживать. А кто какую цель преследовал мне неизвестно.
 
Всем привет! А можно в МТ5 как-нить отключить сетку в стакане со сделками-шариками?
 

Хочу продавать когда цена коснется верхней полосы Боллинджера и закривать на средней полосе и покупать когда цена коснется нижней полосы и закривать на средней. Для етого прописал:

double LB, UB, ma;

double Price= iClose(NULL, 0, 0);


LB = iBands(NULL, PERIOD_M15, Bands_period, Bands_deviation, 0, PRICE_CLOSE, MODE_LOWER, 0);

UB = iBands(NULL, PERIOD_M15, Bands_period, Bands_deviation, 0, PRICE_CLOSE, MODE_UPPER, 0);

ma = iMA(NULL, PERIOD_M15, 20, 0, 0, PRICE_CLOSE, 0);

 

if(OrderType()==OP_BUY)   

           {

               if (Price>= ma)

               {

               Ticket=OrderClose(OrderTicket(),OrderLots(),Bid,50,Violet);

               return(0);

               }

if(total==0) 

     {

      if(Price <= LB)

        {

        Ticket=OrderSend(Symbol(), OP_BUY,Lots,Ask,50,0,"Длинная позиция",16384,0,Red);

        return(0);

        }

     

Почему при тестировании не открывает и не закрывает в местах где жолтые стрелки на рисунке:

 
Nataliia Darsavelidze:
Здравствуйте! В настройках  графика есть опция "показывать торговую историю". Как она реализована в коде? Не могу  убрать её программно. Спасибо.

Возможно, кому-то пригодится:

//+------------------------------------------------------------------+
void DEL_OBJ_AUTOTRADE()
  {
   int seek_obj=ObjectsTotal(0,-1,-1);
   for(int posobj=seek_obj; posobj>=0; posobj--)
     {
      if(StringSubstr(ObjectName(0,posobj,-1,-1),0,9)=="autotrade")
        {
         if(ObjectDelete(0,ObjectName(0,posobj,-1,-1))) {;}
        }
     }
  }
//+------------------------------------------------------------------+
 
Nataliia Darsavelidze:

Возможно, кому-то пригодится:

ObjectsDeleteAll(0,"autotrade");
 
Vitaly Muzichenko:

Там очень длинные имена. Это удаление по части имени

 
Nataliia Darsavelidze:

Там очень длинные имена. Это удаление по части имени

грамотно с префиксом создаете объекты и потом по ним и удаляете

void OnDeinit(const int reason)
  {
   ObjectsDeleteAll(0,prefix,0);
name=prefix+"Deal:"+string(ticket);     //трассер
            name2=prefix+"Price:"+string(ticket);   //цена сверху
            if(entry==DEAL_ENTRY_IN)
              {
               ObjectCreate(0,name,OBJ_ARROW_LEFT_PRICE,0,time,price,0,0);
 
Fast235:

грамотно с префиксом создаете объекты и потом по ним и удаляете

Это автоматом созданные. История торговли.

 
Nataliia Darsavelidze:

Там очень длинные имена. Это удаление по части имени

Вы проверяли?

Причина обращения: