Некорректный возврат ошибки №130 при установке ордера - страница 2

 
ФунтоЙена

2006.06.21 17:31:18 130Research GBPJPY,M15: removed
2006.06.21 17:31:18 130Research GBPJPY,M15: Проверка продаж завершена
2006.06.21 17:31:13 130Research GBPJPY,M15: Ордер в продажу вроде открыт со стопом StopLevel+8пунктов, ошибка=0
2006.06.21 17:31:13 130Research GBPJPY,M15: open #5926739 sell 0.10 GBPJPY at 211.8000 sl: 211.9600 ok
2006.06.21 17:31:12 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+8пунктов
2006.06.21 17:31:07 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:31:07 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+7пунктов
2006.06.21 17:31:02 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:31:01 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+6пунктов
2006.06.21 17:30:56 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:56 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+5пунктов
2006.06.21 17:30:50 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:50 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+4пунктов
2006.06.21 17:30:45 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:45 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+3пунктов
2006.06.21 17:30:40 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:40 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+2пунктов
2006.06.21 17:30:35 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:34 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+1пунктов
2006.06.21 17:30:29 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:29 130Research GBPJPY,M15: Попытка продажи со стопом StopLevel+0пунктов
2006.06.21 17:30:29 130Research GBPJPY,M15: Проверка покупок завершена
2006.06.21 17:30:24 130Research GBPJPY,M15: Ордер в покупку вроде открыт со стопом StopLevel+8пунктов, ошибка=0
2006.06.21 17:30:24 130Research GBPJPY,M15: open #5926713 buy 0.10 GBPJPY at 211.9100 sl: 211.7500 ok
2006.06.21 17:30:24 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+8пунктов
2006.06.21 17:30:19 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:18 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+7пунктов
2006.06.21 17:30:13 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:13 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+6пунктов
2006.06.21 17:30:08 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:08 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+5пунктов
2006.06.21 17:30:03 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:30:02 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+4пунктов
2006.06.21 17:29:57 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:29:57 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+3пунктов
2006.06.21 17:29:52 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:29:52 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+2пунктов
2006.06.21 17:29:47 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:29:46 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+1пунктов
2006.06.21 17:29:41 130Research GBPJPY,M15: Неудача с ошибкой номер 130
2006.06.21 17:29:41 130Research GBPJPY,M15: Попытка покупки со стопом StopLevel+0пунктов
2006.06.21 17:29:41 130Research GBPJPY,M15: Спред=8 StopLevel=8
2006.06.21 17:29:41 130Research GBPJPY,M15: Начинаем проверку на GBPJPY
2006.06.21 17:29:41 130Research GBPJPY,M15: loaded successfully
 
В общем, оставьте ненужные споры, вот скрипт:

Пусть каждый проверит на нужной паре и сообщит.
Налицо требование StopLevel+Spread, но из Регламента Альпари такое требование не вытекает.


Rosh Вы несколько невнимательно читали мои посты. В первом посте явно показано что не проходят ордера с расстоянием от Bid до SL равным 9 пунктов


Журнал терминала:
2006.06.21 13:33:17 '------': instant order sell 0.10 GBPUSD at 1.8418 sl: 1.8427 tp: 1.8413
2006.06.21 13:33:18 '------': order sell 0.10 GBPUSD opening at 1.8418 sl: 1.8427 tp: 1.8413 failed [Invalid S/L or T/P]


что равно STOPLEVEL+SPREAD+1 (4+4+1)
Просто в своей терминологии я подразумеваю что SL отстоит от цены Ask для типа ордера Sell поэтому спред учитывается автоматически....
Приветденный же Вами скрипт отработает успешно для STOPLEVEL+SPREAD потому как ошибка возвращается ТОЛЬКО на активном рынке (чтобы цена имела возможность уйти от заявленной)
 
Rosh Вы несколько невнимательно читали мои посты. В первом посте явно показано что не проходят ордера с расстоянием от Bid до SL равным 9 пунктов


Я читал, просто про Ваш пост я уже забыл, так как меня интересует общий вопрос, а не конкретно Ваш случай. Из вашего поста я не вижу механизма формирования цен стопов, если мой скрипт у Вас тоже даст более StopLevel+Sprad от цены открытия - тогда другое дело.
 
Константа Значение Описание
MODE_LOW 1 Минимальная дневная цена
MODE_HIGH 2 Максимальная дневная цена
MODE_TIME 5 Время поступления последней котировки
MODE_BID 9 Последняя поступившая цена предложения. Для текущего инструмента хранится в предопределенной переменной Bid
MODE_ASK 10 Последняя поступившая цена продажи. Для текущего инструмента хранится в предопределенной переменной Ask
MODE_POINT 11 Размер пункта в валюте котировки. Для текущего инструмента хранится в предопределенной переменной Point
MODE_DIGITS 12 Количество цифр после десятичного точки в цене инструмента. Для текущего инструмента хранится в предопределенной переменной Digits
MODE_SPREAD 13 Спрэд в пунктах
MODE_STOPLEVEL 14 Минимально допустимый уровень стоп-лосса/тейк-профита в пунктах
MODE_LOTSIZE 15 Размер контракта в базовой валюте инструмента
MODE_TICKVALUE 16 Размер минимального изменения цены инструмента в валюте котировки
MODE_TICKSIZE 17 Минимальный шаг изменения цены инструмента в пунктах
MODE_SWAPLONG 18 Размер свопа для длинных позиций
MODE_SWAPSHORT 19 Размер свопа для коротких позиций
MODE_STARTING 20 Календарная дата начала торгов (обычно используется для фьючерсов)
MODE_EXPIRATION 21 Календарная дата конца торгов (обычно используется для фьючерсов)
MODE_TRADEALLOWED 22 Разрешение торгов по указанному инструменту
MODE_MINLOT 23 Минимальный размер лота
MODE_LOTSTEP 24 Шаг изменения лота


Асимметричность обработки ордеров, хотя в справке полная симметрия.
 
Rosh Вы несколько невнимательно читали мои посты. В первом посте явно показано что не проходят ордера с расстоянием от Bid до SL равным 9 пунктов


Я читал, просто про Ваш пост я уже забыл, так как меня интересует общий вопрос, а не конкретно Ваш случай. Из вашего поста я не вижу механизма формирования цен стопов, если мой скрипт у Вас тоже даст более StopLevel+Sprad от цены открытия - тогда другое дело.


Механизм такой:
SELL : SL = dAsk+(dStopLevel+1)*dPoint
BUY : SL = dBid-(dStopLevel+1)*dPoint

где
dAsk = MarketInfo("GBPUSD",MODE_ASK);
dBid = MarketInfo("GBPUSD",MODE_BID);
dStopLevel = MarketInfo("GBPUSD",MODE_STOPLEVEL);
dPoint = MarketInfo("GBPUSD",MODE_POINT);


Еще раз обращаю внимание что возврат ошибки №130 происходит только на быстром рынке когда цена имеет возможность уйти за время передачи ордера... Поэтому Вашим скриптом подтвердить данный факт не могу...
 
То есть, слипадж был тоже ненулевой?
 
То есть, слипадж был тоже ненулевой?


Нет слиппаж был всегда нулевой
 
То есть, слипадж был тоже ненулевой?


Нет слиппаж был всегда нулевой


Тогда сам Бог велел Вашу заявку на быстром рынке отфутболить. Видимо, 130 ошибка имеет приоритет (проверку на терминале)
 
Решил проверить с Тейк-Профитом (вдруг я наврал).
Вот скрипт:
//+------------------------------------------------------------------+
//|                                                130Research-2.mq4 |
//|                      Copyright © 2005, MetaQuotes Software Corp. |
//|                             http://www.metaquotes.ru/forum/7293/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2005, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.ru/forum/7293/"

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
  bool TestFinished=false;
  int tries=5;
  int i,ticket;
  int StopL=MarketInfo(Symbol(),MODE_STOPLEVEL);
  int Spread=MarketInfo(Symbol(),MODE_SPREAD);
  double StopLoss,TakeProfit;
  string Comm;
//----
   if (tries<=Spread) tries=Spread+1;
   Print("Начинаем проверку на ",Symbol());
   Print("Спред=",Spread,"  StopLevel=",StopL);
   while(!IsStopped()&&!TestFinished)
      {
      RefreshRates();
      Comm="SL="+DoubleToStr(StopL+i,0)+" пункт, TP="+DoubleToStr(i,0)+" пункт";
      StopLoss=NormalizeDouble(Ask-(StopL+i)*Point,Digits);
      TakeProfit=NormalizeDouble(Ask+i*Point,Digits);
      Print("Попытка покупки со стопом StopLevel+",i,"пунктов");
      ticket=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,StopLoss,TakeProfit,Comm,0,0,Blue);
      if (ticket<0)
         {
         Print("Неудача с ошибкой номер ",GetLastError());
         }
      else
         {
         Print("Ордер в покупку вроде открыт со стопом StopLevel+",i,"пунктов,  ошибка=",GetLastError());
         TestFinished=true;
         }   
      i++;
      if (i>=tries) TestFinished=true;
      Sleep(5000);     
      }
   Print("Проверка покупок завершена");
   i=0;
   TestFinished=false;
   while(!IsStopped()&&!TestFinished)
      {
      RefreshRates();
      Comm="SL="+DoubleToStr(StopL+i,0)+" пункт, TP="+DoubleToStr(i,0)+" пункт";
      TakeProfit=NormalizeDouble(Bid-i*Point,Digits);
      StopLoss=NormalizeDouble(Bid+(StopL+i)*Point,Digits);
      Print("Попытка продажи со стопом StopLevel+",i,"пунктов");
      ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,StopLoss,TakeProfit,Comm,0,0,Red);
      if (ticket<0)
         {
         Print("Неудача с ошибкой номер ",GetLastError());
         }
      else
         {
         Print("Ордер в продажу вроде открыт со стопом StopLevel+",i,"пунктов,  ошибка=",GetLastError());
         TestFinished=true;
         }   
      i++;
      if (i>=tries) TestFinished=true;
      Sleep(5000);     
      }
   Print("Проверка продаж завершена");
         
//----
   return(0);
  }
//+------------------------------------------------------------------+


вот резалт:

2006.06.21 18:01:13 130Research-2 GBPUSD,H1: removed
2006.06.21 18:01:13 130Research-2 GBPUSD,H1: Проверка продаж завершена
2006.06.21 18:01:08 130Research-2 GBPUSD,H1: Ордер в продажу вроде открыт со стопом StopLevel+4пунктов, ошибка=0
2006.06.21 18:01:08 130Research-2 GBPUSD,H1: open #5927625 sell 0.10 GBPUSD at 1.8428 sl: 1.8436 tp: 1.8424 ok
2006.06.21 18:01:08 130Research-2 GBPUSD,H1: Попытка продажи со стопом StopLevel+4пунктов
2006.06.21 18:01:03 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:01:03 130Research-2 GBPUSD,H1: Попытка продажи со стопом StopLevel+3пунктов
2006.06.21 18:00:58 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:58 130Research-2 GBPUSD,H1: Попытка продажи со стопом StopLevel+2пунктов
2006.06.21 18:00:52 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:52 130Research-2 GBPUSD,H1: Попытка продажи со стопом StopLevel+1пунктов
2006.06.21 18:00:47 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:47 130Research-2 GBPUSD,H1: Попытка продажи со стопом StopLevel+0пунктов
2006.06.21 18:00:47 130Research-2 GBPUSD,H1: Проверка покупок завершена
2006.06.21 18:00:42 130Research-2 GBPUSD,H1: Ордер в покупку вроде открыт со стопом StopLevel+4пунктов, ошибка=0
2006.06.21 18:00:42 130Research-2 GBPUSD,H1: open #5927602 buy 0.10 GBPUSD at 1.8431 sl: 1.8423 tp: 1.8435 ok
2006.06.21 18:00:27 130Research-2 GBPUSD,H1: Попытка покупки со стопом StopLevel+4пунктов
2006.06.21 18:00:22 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:22 130Research-2 GBPUSD,H1: Попытка покупки со стопом StopLevel+3пунктов
2006.06.21 18:00:17 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:17 130Research-2 GBPUSD,H1: Попытка покупки со стопом StopLevel+2пунктов
2006.06.21 18:00:12 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:12 130Research-2 GBPUSD,H1: Попытка покупки со стопом StopLevel+1пунктов
2006.06.21 18:00:07 130Research-2 GBPUSD,H1: Неудача с ошибкой номер 130
2006.06.21 18:00:07 130Research-2 GBPUSD,H1: Попытка покупки со стопом StopLevel+0пунктов
2006.06.21 18:00:07 130Research-2 GBPUSD,H1: Спред=4 StopLevel=4
2006.06.21 18:00:07 130Research-2 GBPUSD,H1: Начинаем проверку на GBPUSD
2006.06.21 18:00:07 130Research-2 GBPUSD,H1: loaded successfully


Мне кажется, такая дискриминация не задумывалась. Я, конечно, не собираюсь использовать такие SL и TP, но "ведь старший приказал..." (Место встречи изменить нельзя)

 
То есть, слипадж был тоже ненулевой?


Нет слиппаж был всегда нулевой


Тогда сам Бог велел Вашу заявку на быстром рынке отфутболить.




Есть какие-нибудь мысли по поводу оптимального значения слиппажа на быстром рынке? :)
Причина обращения: