Ответ
 
Опции темы
Старый 14.03.2012, 16:14   #81 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
выдает ошибку 130 - ERR_INVALID_STOPS Неправильные стопы

подскажите в чем ошибка...уже мозг плывет)

OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:29   #82 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
Стоп и ТП в 15 пп. может быть меньше чем стоплевел. Определить стоплевел можно так
MarketInfo(Symbol(),MODE_STOPLEVEL);
Тем более что ТП еще меньше на спред. Особенно актуально если 5-ти знак

Последний раз редактировалось Nata_FX; 14.03.2012 в 16:32.
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:33   #83 (permalink)
Новичок форума
 
Аватар для DIN_Smol
 
Регистрация: 10.12.2009
Адрес: Москва-Подольск-Смоленск
Сообщений: 65
Репутация: 16
DIN_Smol
Сказал(а) спасибо: 95
Поблагодарили 17 раз(а) в 8 сообщениях
Поинты: 0
Отправить сообщение для DIN_Smol с помощью Skype™
может стоп коротковат? 5-тизнак? больше ставить пробовал?
-----------------
опоздал=)
DIN_Smol вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:36   #84 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
пробовал и 500)
самое интересное, что этот скрипт приведен в учебнике mql



//--------------------------------------------------------------------
// simpleopen.mq4
// Предназначен для использования в качестве примера в учебнике MQL4.
//--------------------------------------------------------------------

int start() // Спец. функция start()
{
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-15*Point,Bid+15*Point);
return; // Выход из start()
}
//--------------------------------------------------------------------
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:38   #85 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
да, 5-и знак
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:40   #86 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
Так пробовал, или только стоп менял?
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-500*Point,Bid+500*Point);
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:42   #87 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Bid-500*Point,Bid+500*Point);

именно так и пробовал...

стоплэвэл - 0
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:45   #88 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
У меня прекрасно сработало, какой ДЦ и пара?
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
hitkill (14.03.2012)
Старый 14.03.2012, 16:48   #89 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
пхах)
Альпари
EURUSD
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:53   #90 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
я уже час пытаюсь понять в чем дело и никак)
от отчаяния решил написать на форум
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 16:55   #91 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
Все замечательно работает даже со стопом в 15 пп. Ты случайно не ECN или NDD север выбрал? На каком-то из них стопы можно ставить только после открытия ордера
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
hitkill (14.03.2012)
Старый 14.03.2012, 17:01   #92 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
так точно...)
ндд был) сменил сервер, заработало..)потом увидел ваше сообщение)
спасибо!



тогда встречный вопрос, как можно тоже самое описать для ндд? если не трудно помогите)
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 17:01   #93 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
и в чем подвох?)
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 17:03   #94 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
Это не подвох, на таких серверах сначала надо открыть ордер, а потом только добавлять стоп и тейк. Вот пример

PHP код:
int start() 

int ticket OrderSend(Symbol(),OP_BUY,0.1,MarketInfo(Symbol(),MODE_ASK),3,0,0); 
OrderSelect(ticket,SELECT_BY_TICKET);
OrderModify(ticket,OrderOpenPrice(), OrderOpenPrice() - 15MarketInfo(Symbol(),MODE_POINT),
                
OrderOpenPrice() + 15MarketInfo(Symbol(),MODE_POINT),0,Blue);
return; } 
Кстати, этот код будет работать и на обычном сервере.

Последний раз редактировалось Nata_FX; 14.03.2012 в 17:07.
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
DIN_Smol (14.03.2012)
Старый 14.03.2012, 17:07   #95 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
премного благодарен)
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 17:42   #96 (permalink)
Почётный гражданин
 
Аватар для DiZin
 
Регистрация: 06.10.2009
Адрес: то тут, то там
Сообщений: 734
Репутация: 465
DiZin - DiZin - DiZin - DiZin - DiZin -
Сказал(а) спасибо: 132
Поблагодарили 460 раз(а) в 240 сообщениях
Поинты: 279
Сообщение от Nata_FX Посмотреть сообщение
Это не подвох, на таких серверах сначала надо открыть ордер, а потом только добавлять стоп и тейк. Вот пример

PHP код:
int start() 

int ticket OrderSend(Symbol(),OP_BUY,0.1,MarketInfo(Symbol(),MODE_ASK),3,0,0); 
OrderSelect(ticket,SELECT_BY_TICKET);
OrderModify(ticket,OrderOpenPrice(), OrderOpenPrice() - 15MarketInfo(Symbol(),MODE_POINT),
                
OrderOpenPrice() + 15MarketInfo(Symbol(),MODE_POINT),0,Blue);
return; } 
Кстати, этот код будет работать и на обычном сервере.
OrderSelect не нужен.... вместо этого лучше проверку поставить, что ticket > 0 (что ордер открылся благополучно)
Еще не совсем понятны извращения типа
MarketInfo(Symbol(),MODE_POINT), ведь есть просто Point
MarketInfo(Symbol(),MODE_ASK) - ведь есть просто Ask
DiZin вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
hitkill (14.03.2012)
Старый 14.03.2012, 18:02   #97 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
Сообщение от DiZin Посмотреть сообщение
OrderSelect не нужен.... вместо этого лучше проверку поставить, что ticket > 0 (что ордер открылся благополучно)
Еще не совсем понятны извращения типа
MarketInfo(Symbol(),MODE_POINT), ведь есть просто Point
MarketInfo(Symbol(),MODE_ASK) - ведь есть просто Ask

спасибо!
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 18:09   #98 (permalink)
Активный участник
 
Аватар для hitkill
 
Регистрация: 17.01.2012
Сообщений: 50
Репутация: 67
hitkill
Сказал(а) спасибо: 46
Поблагодарили 66 раз(а) в 16 сообщениях
Поинты: 13
Сообщение от DiZin Посмотреть сообщение
OrderSelect не нужен.... вместо этого лучше проверку поставить, что ticket > 0 (что ордер открылся благополучно)
А точнее?
hitkill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 18:42   #99 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
Сообщение от DiZin Посмотреть сообщение
OrderSelect не нужен....
OrderSelect используется чтобы получить цену открытия ордера OrderOpenPrice()
Сообщение от DiZin Посмотреть сообщение
Еще не совсем понятны извращения типа
MarketInfo(Symbol(),MODE_POINT), ведь есть просто Point
MarketInfo(Symbol(),MODE_ASK) - ведь есть просто Ask
MarketInfo не требует вызова RefreshRates, так как эта функция обращается непосредственно к котировочному механизму.
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 14.03.2012, 19:07   #100 (permalink)
Активный участник
 
Аватар для Nata_FX
 
Регистрация: 12.10.2011
Сообщений: 50
Репутация: 36
Nata_FX
Сказал(а) спасибо: 10
Поблагодарили 35 раз(а) в 23 сообщениях
Поинты: 4
hitkill вообще советую исходники советников разных посмотреть, в нормальных роботах ордер открывается отдельной функцией с кучей проверок и попыток.
Вот здесь сборник всяких разных функций, взгляни, много нового узнаешь
_http://forum.mql4.com/ru/11287
Nata_FX на форуме   Ответить с цитированиемОтветить с цитированием  
Ответ

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


Опции темы

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

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



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


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