[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 599

 

Спасибо большое!

Я, конечно же, лазил и изучал эту тему, но без ваших подсказок не смог сам разобраться с очень сухой Справкой Документации к языку. А т.к. программирование я начал изучать только с этого языка, то "догадаться" (из-за той же пресловутой потери последовательности) о функционале свойств графических объектов мне пока сложновато. Поэтому и спрашиваю.

Общее направление понял - буду пробовать.

 
Как вывести метаэдитор из глюка? Желательно не выключая комп, желательно сохранив информацию- последние десять пятнадцать строк, что не были компилированы.
 
Chiripaha:

Спасибо большое!

Я, конечно же, лазил и изучал эту тему, но без ваших подсказок не смог сам разобраться с очень сухой Справкой Документации к языку. А т.к. программирование я начал изучать только с этого языка, то "догадаться" (из-за той же пресловутой потери последовательности) о функционале свойств графических объектов мне пока сложновато. Поэтому и спрашиваю.

Общее направление понял - буду пробовать.


Удачи.
 
Dimka-novitsek:
Как вывести метаэдитор из глюка? Желательно не выключая комп, желательно сохранив информацию- последние десять пятнадцать строк, что не были компилированы.


Нажмите не компилировать, а сохранить. я так всегда делаю в подобных случаях.

P.S. Комп выключать не обязательно, достаточно перезагрузить терминал. 

 
Dimka-novitsek:
Как вывести метаэдитор из глюка? Желательно не выключая комп, желательно сохранив информацию- последние десять пятнадцать строк, что не были компилированы.
Вы опять с "любимыми граблями" возитесь?! Ждать "развисания" Metaquotes-products > 2-3 minuts =  (да не обидится обладаель аватарки). ;)
 
Спасибо!
 

Всем привет,

подскажите пожалуйста как узнать максимальную цену, которая была после образования фрактала

 

 Вот торговая функция, которая открывает позиции:

 

//+-------------------------------------------------------------------------------------+
//| Открытие позиций                                                                    |
//+-------------------------------------------------------------------------------------+
bool Trade (int signal)
{
  double sl = 0, tp = 0;

  if(signal == SIGNAL_BUY && FindOrders() == 0)                                     // Если сигнал на покупку и открытых ордеров нет...
  {
    g_ticket = OpenBuy();                                                           // открываем лимитный ордер на покупку
  
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)  // Если ордер есть и он выбран..
    {
      if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
        sl = NormalizeDouble(OrderOpenPrice() - i_sl*Point,Digits);                 // Получаем значение стоп-лосса для выбранного ордера
      if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
        tp = NormalizeDouble(OrderOpenPrice() + i_tp*Point,Digits);                 // Получаем значение тейкпрофита для выбранного ордера
    }  
  }  
  else if(signal == SIGNAL_SELL && FindOrders() == 0)                               // Если сигнал на продажу и открытых ордеров нет..
  {
    g_ticket = OpenSell();                                                          // Открываем лимитный ордер на продажу
  
    if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)  // Если ордер есть и он выбран..
    {
      if(i_sl != 0)                                                                 // Если входной параметр стоп-лосса не равен 0, то..
         sl = NormalizeDouble(OrderOpenPrice() + i_sl*Point,Digits);                // Получаем значение стоп-лосса для выбранного ордера
      if(i_tp != 0)                                                                 // Если входной параметр тейкпрофита не равен 0, то..
         tp = NormalizeDouble(OrderOpenPrice() - i_tp*Point,Digits);                // Получаем значение тейкпрофита для выбранного ордера
    }
  }
  if(sl != 0 || tp != 0)                                                            // Если полученные значения sl и tp не равныы 0, то..
  {
    OrderModify(g_ticket,OrderOpenPrice(),sl,tp,OrderOpenTime() + 86400,Lime);      // Модифицируем ордер
    return(true);
  }
  return(true);
}

 Всё чётко и кратко. Постоянно выскакивает ошибка 130 в тестере, хотя эксперт работает, но всё-таки ошибка 130 периодически проскакивает. В чём может быть причина?

 В данный ф-ции используются ф-ции открытия позиций, вот они:

 

//+-------------------------------------------------------------------------------------+
//| Открытие длинной позиции                                                            |
//+-------------------------------------------------------------------------------------+
int OpenBuy()
{
  g_ticket = -1;
  string myNote = "сов баянул";
         
  g_ticket = OrderSend(Symbol(),OP_BUYLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Blue);
  if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
  
  return(g_ticket);
}
//+-------------------------------------------------------------------------------------+
//| Открытие короткой позиции                                                           |
//+-------------------------------------------------------------------------------------+
int OpenSell()
{
  g_ticket = -1;
  string myNote = "сов шортанул";

  g_ticket = OrderSend(Symbol(),OP_SELLLIMIT,0.1,GetPriceToInput(),3,0,0,myNote,myMagic,0,Red);
  if(g_ticket > 0 && OrderSelect(g_ticket,SELECT_BY_TICKET,MODE_TRADES) == true)
  
  return(g_ticket);
}

 Я думал, что что-то связано с стоплевел уровнем, добавлял проверку, но не то.. Пока что я его убрал, т.к. на Альпари этот уровень равен 0. Прошу подсказки, что нужно поправить, чтоб не было это ошибки.

 


 double min=Low[iLowest(NULL,PERIOD_M15,MODE_LOW,32,0)];

как записать в формате 1.30320 для EURUSD например?
 
if(OrderTakeProfit()!=0&&OrderTakeProfit()!=OrderOpenPrice()+2*kio*Point&&Bid>OrderOpenPrice()+50*kio*Point)
               OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderOpenPrice()+2*kio*Point,0);
всем бодрого время суток. подскажите что тут не так пишет Ошибку№1 как исправить?  спасибо!
Причина обращения: