Ответить
24.10.2017, 09:22
Аватар для RV_aka_rvn
RV_aka_rvn RV_aka_rvn вне форума Активный участник
Регистрация: 20.05.2016 / Сообщений: 218
Поблагодарили 53 раз(а) / Репутация: 54
Так отодвиньте дальше SL от цены при модификации - тем самым выясните что код рабочий. Перед тем как произвести модификацию ордера проверить на соответствие значения MODE_STOPLEVEL, величина значения может плавать.
ВСЁ! Поймал я её за за... Сейчас прогнал на тех ДЦ, всё чисто, проверил воскресные и сегодняшние прогоны и нашёл в чём собака порылась, на одном графике где выпадала 145 ошибка (а я только по журналу смотрел) были: Ошибки рассогласования графиков 4, сейчас 0, видно котировки подгрузились что ли... Теперь всё и везде по нулям! Видно заработался или старый стал... По деньгам кстати тоже разница, почти в 100 баков (ладно хоть демо). Совет всем- следите за котировками и чтобы ошибок всегда было 0, тогда будете уверены, что на реале такого не будет (как в тестере)... Спасибо mobidikу за советы
24.10.2017, 09:26
Аватар для RV_aka_rvn
RV_aka_rvn RV_aka_rvn вне форума Активный участник
Регистрация: 20.05.2016 / Сообщений: 218
Поблагодарили 53 раз(а) / Репутация: 54
Стоплевел здесь совсем не при делах. Надо проверять SymbolInfoInteger(_Symbol, SYMBOL_TRADE_FREEZE_LEVEL)
Тоже интересная мысль, по-умолчанию у меня он равен 3
Нашёл в чём дело, в кривых котировках, нельзя гонять совы и работать на одном терминале, для проверок надо ставить второй терминал с "правильными" котировками для тестов

Последний раз редактировалось RV_aka_rvn; 24.10.2017 в 09:33.
24.10.2017, 16:46
Аватар для RV_aka_rvn
RV_aka_rvn RV_aka_rvn вне форума Активный участник
Регистрация: 20.05.2016 / Сообщений: 218
Поблагодарили 53 раз(а) / Репутация: 54
Короче здесь ничего не при делах...И дело было не в бобине! У меня такая же фигня на другой паре вывалилась...
Сделал я такую интересную конструкцию, проверку не на Ask (так как это величина расчётная), а вот так:
(Bid+(MarketInfo(Symbol(),MODE_SPREAD*Point)
И... прокатило! Без ошибки 145 Только стоплосс остался висеть в первом случае на 65 пунктов, второй раз на 68 пунктов вместо 35 от цены (в сумме в 133 пункта-мой трал в 35+35 п.), сработали тейкпрофиты... Только и она не работает (это безубыток)
Прокатило, когда я шаг поставил 5, поставлю ка я дополнительно стоплевел, отпишусь, если что

Последний раз редактировалось RV_aka_rvn; 24.10.2017 в 17:31.
24.10.2017, 17:27
Аватар для fs256
fs256 fs256 на форуме Местный знаток
Регистрация: 28.01.2014 / Адрес: Архангельск / Сообщений: 182
Поблагодарили 575 раз(а) / Репутация: 580
Короче здесь ничего не при делах...И дело было не в бобине! У меня такая же фигня на другой паре вывалилась...
Сделал я такую интересную конструкцию, проверку не на Ask (так как это величина расчётная), а вот так:
(Bid+MarketInfo(Symbol(),MODE_SPREAD)
И... прокатило! Без ошибки 145 Только стоплосс остался висеть в первом случае на 65 пунктов, второй раз на 68 пунктов вместо 35 от цены (в сумме в 133 пункта-мой трал в 35+35 п.), сработали тейкпрофиты... Только и она не работает (это безубыток)
Прокатило, когда я шаг поставил 5, поставлю ка я дополнительно стоплевел, отпишусь, если что
Т.е. MarketInfo(_Symbol,MODE_ASK)
24.10.2017, 18:40
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Сделал я такую интересную конструкцию, проверку не на Ask (так как это величина расчётная), а вот так:
(Bid+(MarketInfo(Symbol(),MODE_SPREAD*Point)
И... прокатило! Без ошибки 145 Только стоплосс остался висеть в первом случае на 65 пунктов, второй раз на 68 пунктов вместо 35 от цены (в сумме в 133 пункта-мой трал в 35+35 п.), сработали тейкпрофиты... Только и она не работает (это безубыток)
Прокатило, когда я шаг поставил 5, поставлю ка я дополнительно стоплевел, отпишусь, если что
Привет! У меня в трале (попунктном) изначально идет проверка на стоплевел и нормализация нового стоплосса:
PHP код:
void TrailingStop(int s_ticket,double trldist)
  {
   
double newstop=0;
   
double stoplevel=MarketInfo(_Symbol,MODE_STOPLEVEL);
   if(
trldist<=stopleveltrldist=stoplevel+1;
   if(!
OrderSelect(s_ticket,SELECT_BY_TICKET,MODE_TRADES))
     {
      Print(
"Трейлинг невозможен - не найден ордер тикет ",s_ticket);
      return;
     }
//-----------------------------------------------------------
   
if(OrderType()==OP_BUY)
     {
      if((
OrderStopLoss()==0.0) || (OrderStopLoss()<OrderOpenPrice()))
        {
         if(
Bid>(OrderOpenPrice()+(trldist+TrlLevel)*_Point))
            
newstop=NormalizeDouble(Bid-TrlLevel*_Point,_Digits);
        }
      else
         if(
Bid>(OrderStopLoss()+TrlLevel*_Point))
            
newstop=NormalizeDouble(Bid-TrlLevel*_Point,_Digits);
      if(
newstop>OrderStopLoss() && (newstop<Bid-stoplevel*_Point))
         if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
            Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
     }
//-----------------------------------------------------------
   
if(OrderType()==OP_SELL)
     {
      if((
OrderStopLoss()<=0) || (OrderStopLoss()>OrderOpenPrice()))
        {
         if(
Ask<(OrderOpenPrice()-(trldist+TrlLevel)*_Point))
            
newstop=NormalizeDouble(Ask+trldist*_Point,_Digits);
        }
      else
         if(
Ask<(OrderStopLoss()-TrlLevel*_Point))
            
newstop=NormalizeDouble(Ask+TrlLevel*_Point,_Digits);
      if(
newstop>0)
        {
         if(((
OrderStopLoss()==0.0) || (OrderStopLoss()>OrderOpenPrice())) && (newstop>Ask+stoplevel*_Point))
           {
            if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
               Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
           }
         else
            if(
OrderStopLoss()>newstop && (newstop>Ask+stoplevel*_Point))
               if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
                  Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
        }
     }
  } 
Гонял его на разных брокерах с ненулевыми стопуровнями - ошибок не было. Шаг трала здесь от 1 пункта идет, а TrlLevel - уровень отката цены до срабатывания стоплосса. trldist - начальная дистанция срабатывания трала, которая должна быть не меньше стопуровень+1.
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...

Последний раз редактировалось vladradon; 24.10.2017 в 18:55.
24.10.2017, 19:28
Аватар для fs256
fs256 fs256 на форуме Местный знаток
Регистрация: 28.01.2014 / Адрес: Архангельск / Сообщений: 182
Поблагодарили 575 раз(а) / Репутация: 580
Привет! У меня в трале (попунктном) изначально идет проверка на стоплевел и нормализация нового стоплосса:
PHP код:
void TrailingStop(int s_ticket,double trldist)
  {
   
double newstop=0;
   
double stoplevel=MarketInfo(_Symbol,MODE_STOPLEVEL);
   if(
trldist<=stopleveltrldist=stoplevel+1;
   if(!
OrderSelect(s_ticket,SELECT_BY_TICKET,MODE_TRADES))
     {
      Print(
"Трейлинг невозможен - не найден ордер тикет ",s_ticket);
      return;
     }
//-----------------------------------------------------------
   
if(OrderType()==OP_BUY)
     {
      if((
OrderStopLoss()==0.0) || (OrderStopLoss()<OrderOpenPrice()))
        {
         if(
Bid>(OrderOpenPrice()+(trldist+TrlLevel)*_Point))
            
newstop=NormalizeDouble(Bid-TrlLevel*_Point,_Digits);
        }
      else
         if(
Bid>(OrderStopLoss()+TrlLevel*_Point))
            
newstop=NormalizeDouble(Bid-TrlLevel*_Point,_Digits);
      if(
newstop>OrderStopLoss() && (newstop<Bid-stoplevel*_Point))
         if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
            Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
     }
//-----------------------------------------------------------
   
if(OrderType()==OP_SELL)
     {
      if((
OrderStopLoss()<=0) || (OrderStopLoss()>OrderOpenPrice()))
        {
         if(
Ask<(OrderOpenPrice()-(trldist+TrlLevel)*_Point))
            
newstop=NormalizeDouble(Ask+trldist*_Point,_Digits);
        }
      else
         if(
Ask<(OrderStopLoss()-TrlLevel*_Point))
            
newstop=NormalizeDouble(Ask+TrlLevel*_Point,_Digits);
      if(
newstop>0)
        {
         if(((
OrderStopLoss()==0.0) || (OrderStopLoss()>OrderOpenPrice())) && (newstop>Ask+stoplevel*_Point))
           {
            if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
               Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
           }
         else
            if(
OrderStopLoss()>newstop && (newstop>Ask+stoplevel*_Point))
               if(!
OrderModify(s_ticket,OrderOpenPrice(),newstop,OrderTakeProfit(),OrderExpiration()))
                  Print(
"Не удалось модифицировать стоплосс ордера №",OrderTicket(),". Ошибка: ",GetLastError());
        }
     }
  } 
Гонял его на разных брокерах с ненулевыми стопуровнями - ошибок не было. Шаг трала здесь от 1 пункта идет, а TrlLevel - уровень отката цены до срабатывания стоплосса. trldist - начальная дистанция срабатывания трала, которая должна быть не меньше стопуровень+1.
Может так:
trldist=fmin(trldist,MarketInfo(_Symbol,MODE_STOPL EVEL));
Вроде, на строку короче.

P.S. А зачем столько скобок, например - if(OrderStopLoss()==0 || OrderStopLoss()<OrderOpenPrice()) - чем отличается от вашего?
Я, если что, без наездов-только-проездом .
24.10.2017, 19:48
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Может так:
trldist=fmin(trldist,MarketInfo(_Symbol,MODE_STOPL EVEL));
Вроде, на строку короче.

P.S. А зачем столько скобок, например - if(OrderStopLoss()==0 || OrderStopLoss()<OrderOpenPrice()) - чем отличается от вашего?
Я, если что, без наездов-только-проездом .
Да, про скобки я забыл, видимо, когда последний раз редактировал - там раньше еще проверки были просто. А trldist должен быть при ненулевом стопуровне на минимум 1 больше. Равенство не прокатит. К тому же функция вернет меньшее из 2-х значений, а значит если trldist меньше стопуровня, то снова вернет его и ничего не изменится. Если trldist больше стопуровня, то менять ничего не нужно, а если меньше, то trldist=стопуровень +1 - по-любому в одну строчку не уложишься...
Ну или
PHP код:
if(trldist<=MarketInfo(_Symbol,MODE_STOPLEVEL)) trldist=MarketInfo(_Symbol,MODE_STOPLEVEL)+1
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...

Последний раз редактировалось vladradon; 24.10.2017 в 20:25.
fs256 
24.10.2017, 20:38
Аватар для Violetta
Violetta Violetta на форуме Новичок форума
Регистрация: 30.12.2015 / Сообщений: 46
Поблагодарили 20 раз(а) / Репутация: 21
Уважаемые программисты, есть шаблон советника, открывает сделки по сигналу, закрывает по тп или стоплосу, или реверсу, каким образом можно заменить закрытие в случае профита не по тп а по сигналу? Хотя бы направление как решить. Спасибо
fs256 
24.10.2017, 20:43
Аватар для RV_aka_rvn
RV_aka_rvn RV_aka_rvn вне форума Активный участник
Регистрация: 20.05.2016 / Сообщений: 218
Поблагодарили 53 раз(а) / Репутация: 54
Не ребята, всё проще, я всё-таки разобрался... Все тралы правильно работают... Обратите на строчки на втором рисунке внизу, тралилось всё хорошо, вдруг цена Ask вылетает 8-мизначная, так как в Modify она в расчёте участвует, из-за этого вылетает просто ошибка, это даже не 145, терминал такую цену не понимает, я специально вывел эту цену в формате NormalizeDouble(Ask,Digits)
функция NormalizeDouble её т.е. Ask почему-то не режет...

ЭТО ГЛЮК всё таки КОТИРОВОК!
24.10.2017, 21:00
Аватар для SERGZXZ
SERGZXZ SERGZXZ на форуме Почётный гражданин
Регистрация: 13.03.2012 / Адрес: планета земля / Сообщений: 318
Поблагодарили 318 раз(а) / Репутация: 319
здравствуйте научите как в советник встроить трал
24.10.2017, 21:08
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Не ребята, всё проще, я всё-таки разобрался... Все тралы правильно работают... Обратите на строчки на втором рисунке внизу, тралилось всё хорошо, вдруг цена Ask вылетает 8-мизначная, так как в Modify она в расчёте участвует, из-за этого вылетает просто ошибка, это даже не 145, терминал такую цену не понимает, я специально вывел эту цену в формате NormalizeDouble(Ask,Digits)
функция NormalizeDouble её т.е. Ask почему-то не режет...
Тогда есть еще кривой путь обрезки, который режет однозначно:
PHP код:
double ask=StrToDouble(DoubleToStr(Ask,_Digits)); 
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...

Последний раз редактировалось vladradon; 24.10.2017 в 21:11.
24.10.2017, 21:14
Аватар для fs256
fs256 fs256 на форуме Местный знаток
Регистрация: 28.01.2014 / Адрес: Архангельск / Сообщений: 182
Поблагодарили 575 раз(а) / Репутация: 580
Да, про скобки я забыл, видимо, когда последний раз редактировал - там раньше еще проверки были просто. А trldist должен быть при ненулевом стопуровне на минимум 1 больше. Равенство не прокатит. К тому же функция вернет меньшее из 2-х значений, а значит если trldist меньше стопуровня, то снова вернет его и ничего не изменится. Если trldist больше стопуровня, то менять ничего не нужно, а если меньше, то trldist=стопуровень +1 - по-любому в одну строчку не уложишься...
Ну или
PHP код:
if(trldist<=MarketInfo(_Symbol,MODE_STOPLEVEL)) trldist=MarketInfo(_Symbol,MODE_STOPLEVEL)+1
Ух ё... Тогда из-за стола вышел, пардон; - там fmax естественно, а на счет "+1":
trldist=fmax(trldist,MarketInfo(_Symbol,MODE_STOPL EVEL)+1);
24.10.2017, 21:31
Аватар для SERGZXZ
SERGZXZ SERGZXZ на форуме Почётный гражданин
Регистрация: 13.03.2012 / Адрес: планета земля / Сообщений: 318
Поблагодарили 318 раз(а) / Репутация: 319
ну научите что вам сложно где открыть скобки
24.10.2017, 21:31
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Уважаемые программисты, есть шаблон советника, открывает сделки по сигналу, закрывает по тп или стоплосу, или реверсу, каким образом можно заменить закрытие в случае профита не по тп а по сигналу? Хотя бы направление как решить. Спасибо
Там в коде реверс и закрывает по противоположному сигналу, но нет возможности выставить нулевой ТП и еще проверка при инициализации идет на ненулевые значения ТП и СЛ во входных параметрах, которые нужно убрать (строки с 38 по 48 включительно). И заменить функцию на мной переделанную:
PHP код:
void setTakeProfitAndStopLoss()
  {
   if(
takeProfit>0buyTakeProfitPips=NormalizeDouble(Ask+takeProfit*Point,Digits); else buyTakeProfitPips=0;
   if(
stopLoss>0buyStopLossPips=NormalizeDouble(Ask-stopLoss*Point,Digits); else buyStopLossPips=0;
   if(
takeProfit>0sellTakeProfitPips=NormalizeDouble(Bid-takeProfit*Point,Digits); else sellTakeProfitPips=0;
   if(
stopLoss>0sellStopLossPips=NormalizeDouble(Bid+stopLoss*Point,Digits); sellStopLossPips=0;
  } 
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...
24.10.2017, 21:39
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
ну научите что вам сложно где открыть скобки
Для начала там мартин и для него нужен особый трал, который будет тралить сразу весь набор колен в рынке, присваивая один стоплосс всем коленам. Но еще один момент - трал должен начинаться после того, как колена в сумме выйдут в плюс и если тупо указать какую-то начальную дистанцию трала, то не факт, что при каком-то количестве колен эта дистанция будет в плюсе и ее не нужно будет увеличивать. Для этого нужно использовать расчет уровня безубытка и уже от него плясать, добавляя к нему уже дистанцию трала. Короче, не все так просто.
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...
24.10.2017, 21:42
Аватар для fs256
fs256 fs256 на форуме Местный знаток
Регистрация: 28.01.2014 / Адрес: Архангельск / Сообщений: 182
Поблагодарили 575 раз(а) / Репутация: 580
Уважаемые программисты, есть шаблон советника, открывает сделки по сигналу, закрывает по тп или стоплосу, или реверсу, каким образом можно заменить закрытие в случае профита не по тп а по сигналу? Хотя бы направление как решить. Спасибо
Так и есть - по сигналу. Только откуда он берет OrderTicket (строчки - 120 и 134)? Голова не особо варит, может что упустил?

Код:
//+------------------------------------------------------------------+
void processSignalHasPositionOpen(const int signal)
  {
   switch(OrderType())
     {
      case OP_BUY:   // A buy order exists
         if(signal<0)
           {
            Print("Short Conditions Met");
// здесь
            if(!OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Violet)) 

              {
               Print("Error closing buy order: ",GetLastError());
                 } else if(OrderSend(Symbol(),OP_SELL,lots,Bid,slippage,sellStopLossPips,sellTakeProfitPips,"TRAIDE EA",magicNumber,0,Red)<0) {
               Print("Error opening sell order: ",GetLastError());
              }
              } else if(signal>0) {
            Print("Long Conditions Still Met");
           }
         break;
      case OP_SELL:  // A sell order exists
         if(signal>0)
           {
            Print("Long Conditions Met");
// и здесь
            if(!OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Violet))
              {
               Print("Error closing sell order: ",GetLastError());
                 } else if(OrderSend(Symbol(),OP_BUY,lots,Ask,slippage,buyStopLossPips,buyTakeProfitPips,"TRAIDE EA",magicNumber,0,Green)<0) {
               Print("Error opening buy order: ",GetLastError());
              }
              } else if(signal<0) {
            Print("Short Conditions Still Met");
           }
         break;
      default:
         Print("Error, unexpected OrderType: ",OrderType());
         break;
     }
  }
//+------------------------------------------------------------------+
24.10.2017, 21:45
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Так и есть - по сигналу. Только откуда он берет OrderTicket (строчки - 120 и 134)? Голова не особо варит, может что упустил?
Там в другой функции выборка идет:
PHP код:
void processSignal(const int signal)
  {
   
setTakeProfitAndStopLoss(); // Set Take Profit and Stop Loss

   
if(isPositionOpen()) // Check for open position
     
{
      
processSignalHasPositionOpen(signal);
     }
   else 
// If no open position
     
{
      
processSignalNoPositionOpen(signal);
     }
  }
//+------------------------------------------------------------------+
//| Check for currently open position                                |
//+------------------------------------------------------------------+
bool isPositionOpen()
  {
   for(
int i=0i<OrdersTotal(); i++)
     {
      if(
OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==magicNumber && OrderSymbol()==Symbol())
        {
         return 
true;
        }
     }
   return 
false;
  } 
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...
fs256 
24.10.2017, 22:05
Аватар для fs256
fs256 fs256 на форуме Местный знаток
Регистрация: 28.01.2014 / Адрес: Архангельск / Сообщений: 182
Поблагодарили 575 раз(а) / Репутация: 580
Там в другой функции выборка идет:
PHP код:
void processSignal(const int signal)
  {
   
setTakeProfitAndStopLoss(); // Set Take Profit and Stop Loss

   
if(isPositionOpen()) // Check for open position
     
{
      
processSignalHasPositionOpen(signal);
     }
   else 
// If no open position
     
{
      
processSignalNoPositionOpen(signal);
     }
  }
//+------------------------------------------------------------------+
//| Check for currently open position                                |
//+------------------------------------------------------------------+
bool isPositionOpen()
  {
   for(
int i=0i<OrdersTotal(); i++)
     {
      if(
OrderSelect(i,SELECT_BY_POS,MODE_TRADES) && OrderMagicNumber()==magicNumber && OrderSymbol()==Symbol())
        {
         return 
true;
        }
     }
   return 
false;
  } 

Верно, прежде чем советовать, - нужно разобраться (и не пить ничего крепче чая ). Второй раз (Ух ё) не прокатит, пойду спать. Спасибо за терпение.
24.10.2017, 22:09
Аватар для _SERG_
_SERG_ _SERG_ вне форума Активный участник
Регистрация: 21.07.2009 / Сообщений: 283
Поблагодарили 94 раз(а) / Репутация: 94
Короче здесь ничего не при делах...И дело было не в бобине! У меня такая же фигня на другой паре вывалилась...
Сделал я такую интересную конструкцию, проверку не на Ask (так как это величина расчётная), а вот так:
(Bid+(MarketInfo(Symbol(),MODE_SPREAD*Point)
И... прокатило! Без ошибки 145 Только стоплосс остался висеть в первом случае на 65 пунктов, второй раз на 68 пунктов вместо 35 от цены (в сумме в 133 пункта-мой трал в 35+35 п.), сработали тейкпрофиты... Только и она не работает (это безубыток)
Прокатило, когда я шаг поставил 5, поставлю ка я дополнительно стоплевел, отпишусь, если что
Чет я не проникся мыслью по поводу расчётного ASK. Или такие выводи сделаны потому, что ASK на графике не отображается?
24.10.2017, 22:14
Аватар для vladradon
vladradon vladradon вне форума Местный житель
Регистрация: 12.02.2015 / Сообщений: 401
Поблагодарили 198 раз(а) / Репутация: 205
Чет я не проникся мыслью по поводу расчётного ASK. Или такие выводи сделаны потому, что ASK на графике не отображается?
Привет! Не, такие глюки частенько бывают и по Bid тоже - выскакивает после запятой больше цифр, чем нужно. У меня даже на демо в онлайне такая фигня была и сов выдавал ошибки при работе с ордерами.
Можно вечно смотреть на то, как горит огонь, как течет вода, и как работает трал...
_SERG_ 
Ответить

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.



Текущее время: 14:49. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO