Скачать MetaTrader 5

Как закрыть имеющийся ордер, если подскочил спред?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Igor Somov
442
Igor Somov  

В конструкторе советников с помощью набора стандартных блоков я написал алгоритм открытия ордера BUY.

Но чтобы закрыть этот ордер, если спред подскочил, надо написать нестандартный для этого конструктора код. В языке программирования и ни бум-бум.(((

Подскажите, пожалуйста, какой конкретно код написать, чтобы имеющийся такой ордер закрылся, если спред подскочил выше 20, например?

DmitriyN
2316
DmitriyN  
Две рекомендации:
- не работать с ДЦ у которых гуляют условия: спред, стоплевелы, кредитные плечи;
- использовать только отложенные ордера.
o_o
Модератор
24086
o_o  
DmitriyN:
- использовать только отложенные ордера.
не все отложенные ордера одинаково полезны. стоповые ордера (все) исполняются по рынку
Igor Somov
442
Igor Somov  

Огромное спасибо за рекомендации (не отногсящиеся правда к вопросу, но ничего, бывает)!

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

Но вопрос был другой: какие буковки КОНКРЕТНО написать для конкретной ситуации.

Alexey Subbotin
4998
Alexey Subbotin  
//для начала где-то должно быть OrderSelect(), но т.к. полного кода вы не приводите, то уж извините))

int slippage = 0;// или другое проскальзывание, какое надо

if(MarketInfo(Symbol(),MODE_SPREAD)>20)// спред больше 20
{
   OrderClose(OrderTicket(),OrderLots(),MarketInfo(Symbol(),MODE_BID),slippage);// закрыть ордер BUY
}
Igor Somov
442
Igor Somov  
alsu:


Спасибо, alsu !
Я не привожу кода, так как программа мне его не показывает, показывает только блоки.

А какая информация нужна для OrderSelect() ? На скрине видно? что _Order ID 1 и что slippage = 3 - может, эта?

Igor Somov
442
Igor Somov  
Igogo:


Спасибо, alsu !
Я не привожу кода, так как программа мне его не показывает, показывает только блоки.

А какая информация нужна для OrderSelect() ? На скрине видно? что _Order ID 1 и что slippage = 3 - может, эта?



попробовал вставить этот код, и MT4 теперь пишет в журнале: " invalid ticket for OrderClose function"
Роман
7939
Роман  
Igogo:


попробовал вставить этот код, и MT4 теперь пишет в журнале: " invalid ticket for OrderClose function"

Учите язык или приведите код полностью.
Alexey Subbotin
4998
Alexey Subbotin  
Igogo:


Спасибо, alsu !
Я не привожу кода, так как программа мне его не показывает, показывает только блоки.

А какая информация нужна для OrderSelect() ? На скрине видно? что _Order ID 1 и что slippage = 3 - может, эта?

Ну, слиппаж это да, а вот _Order ID не знаю, что такое. Для OrderSelect необходим либо тикет ордера, либо его номер в пуле открытых ордеров. Как правило, способ использования OrderSelect определяется предшествующей логикой программы, с наскоку тут не скажешь. Почитайте справку к конструктору, как пишутся custom-блоки, возможно, там есть указания, каким образом в них отслеживать ордера, может есть какие-то подстановочные комбинации.
Igor Somov
442
Igor Somov  
Igogo:


попробовал вставить этот код, и MT4 теперь пишет в журнале: " invalid ticket for OrderClose function"

alsu!
если нельзя определить этот тикет (не видя кода) то может быть напишете код, который просто закроет все существующие ордера?
Igor Somov
442
Igor Somov  
alsu:
Ну, слиппаж это да, а вот _Order ID не знаю, что такое. Для OrderSelect необходим либо тикет ордера, либо его номер в пуле открытых ордеров. Как правило, способ использования OrderSelect определяется предшествующей логикой программы, с наскоку тут не скажешь. Почитайте справку к конструктору, как пишутся custom-блоки, возможно, там есть указания, каким образом в них отслеживать ордера, может есть какие-то подстановочные комбинации.



Они пишут в описании

" If you ever programmed MT4 or MT5 you have probably came across so called “magic number”. “Order Id” is the same as “magic
number”. We have used a term “Order Id” because it is easier to understand main purpose of this numeric identifier and its use in
the Generator."

12
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий