тики тестер стратегии мт5 - страница 14

 
WhooDoo22:

Здравствуйте сообщество MQL5,

Я читал документацию сайта MQL5 'OrderSend', ресурсы .pdf и .chm,


ни в одном из них нет подробностей для'SYMBOL_TRADE_EXECUTION_REQUEST', кроме краткого 'Description' ('Выполнение по запросу'). По-видимому, существует четыре типа идентификаторов для 'ENUM_SYMBOL_TRADE_EXECUTION'.

Вы читали это (прокрутите немного вниз) :https://www.mql5.com/en/docs/constants/structures/mqltraderequest
Documentation on MQL5: Standard Constants, Enumerations and Structures / Data Structures / Trade Request Structure
Documentation on MQL5: Standard Constants, Enumerations and Structures / Data Structures / Trade Request Structure
  • www.mql5.com
Standard Constants, Enumerations and Structures / Data Structures / Trade Request Structure - Documentation on MQL5
 
angevoyageur:

Найдено на русском форуме:

  • Немедленное исполнение (Instant Execution) В данном режиме происходит исполнение рыночного ордера по цене, предложеннойброкером. При отправке запроса на исполнение, терминал автоматически заполняет ордер по текущим ценам. Если брокер принимает цену, то ордер будет исполнен. Если брокер не получает запрашиваемую цену, то происходит так называемое "Перекотировка" (Requote) - брокер возвращает цены, по которым может быть исполнен данный ордер.
  • Исполнение по запросу (Request Execution)
    В этом режиме происходит исполнение рыночного ордера по цене, предварительно полученной от брокера. Перед
    отправкой рыночного ордера ваш брокер запрашивает цену его исполнения. При получении, исполнение ордера по этой цене вы можете либо подтвердить, либо отклонить.
  • Исполнение рынка (Market Execution)
    При таком способе исполнения решение о цене исполнения рыночного ордера принимает брокер без согласования с трейдером. Отправка рыночного ордера таким способом подразумевает заблаговременное согласование с ценой, по которой он будет исполнен.
  • Биржевой вариант (Exchange Execution) В этом режиме торговые операции, совершаемые в терминале, выводятся во внешнюю торговую систему (биржу). Торговые операции совершаются по текущим предложениям рыночной цены.

Здравствуйте Алена,

Да, я думаю, что ваш пост содержит содержание, которое я искал, спасибо вам любезно.


Я не думаю, что двенадцатый параметр 'OrderSend' enum_order_type_filling используется в MQL4 и у меня нет опыта его применения в коде параметра MQL5 'OrderSend'.

enum_order_type_filling

"Заказ может быть заполнен только в необходимом количестве".

Является ли эта "указанная сумма" лотностью ордера?


"Если необходимое количество финансового инструмента в данный момент отсутствует на рынке, ордер не будет исполнен".

Что такое "необходимый объем финансового инструмента"?

Как необходимое количество финансового инструмента может быть недоступно на рынке в данный момент?


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

Что такое "необходимый объем" и как он может быть заполнен с помощью "нескольких предложений"?


Каково назначение enum_order_type_filling?


Спасибо

 
RaptorUK:
Вы читали это (прокрутите немного вниз) :https://www.mql5.com/en/docs/constants/structures/mqltraderequest

Привет, Саймон,

"Вы читали это (прокрутите немного вниз)"

Я прочитал, но я еще не читал двенадцатый параметр 'OrderSend' enum_order_type_filling. Я не заинтересовался им, так как не было параметра для применения содержимого.


Да, я думаю, что ссылка в вашем посте содержит контент, который я искал, спасибо вам.

Отредактировано модератором.

 
Привет, Натан, не стоит повторять одни и те же вопросы в двух сообщениях ;-)
 
WhooDoo22:

"an order can be filled only in the specified amount".

Является ли это "указанное количество" лотностью ордера?

Да. "Указанная сумма", "объем ордера", "размер лота" - это одно и то же.


"Если необходимое количество финансового инструмента в данный момент отсутствует на рынке, ордер не будет исполнен".

Что такое "необходимое количество финансового инструмента"?

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


Как необходимое количество финансового инструмента может быть недоступно на рынке?

См. выше. Вы можете передать ордер на 1 лот, а на рынке доступно только 0,5 лота.


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

Что такое "требуемый объем" и как он может быть заполнен с помощью "нескольких предложений"?

См. выше. Вы хотите купить 1 лот, на рынке есть 2 предложения о продаже 0,5 лота.


Какова цель enum_order_type_filling?

Надеюсь, с ответами выше стало понятнее. Этот параметр задается брокером. Вы должны проверить его перед передачей ордера.

Спасибо

Пожалуйста.
 
WhooDoo22:

Здравствуйте Алена,

Да, я думаю, что ваш пост содержит содержание, которое я искал, спасибо вам.


Я не думаю, что двенадцатый параметр 'OrderSend' enum_order_type_filling используется в MQL4, и у меня нет опыта его применения в коде параметров MQL5 'OrderSend'.

Я полагаю, вы не сталкивались сFill или Kill раньше?
Fill Or Kill (FOK) Definition | Investopedia
Fill Or Kill (FOK) Definition | Investopedia
  • www.investopedia.com
A type of time-in-force designation used in securities trading that instructs a brokerage to execute a transaction immediately and completely or not at all. This type of order is most likely to be used by active traders and is usually for a large quantity of stock. The order must be filled in its entirety or canceled (killed). The purpose of a...
 
angevoyageur:
Привет, Натан, нет необходимости повторять одни и те же вопросы в двух постах ;-)

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

Спасибо

 
angevoyageur:
WhooDoo22:
Да. "Указанная сумма", "объем ордера", "размер лота" - это одно и то же.


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


См. выше. Вы можете передать ордер на 1 лот, а на рынке доступно только 0,5 лота.


См. выше. Вы хотите купить 1 лот, на рынке есть 2 предложения о продаже 0,5 лота.


Надеюсь, что ответы выше стали понятнее. Этот параметр задается брокером. Вы должны проверить его перед передачей ордера.

Пожалуйста.
"Надеюсь, с ответами выше стало понятнее. Этот параметр задается брокером. Вы должны проверить его перед передачей ордера."


После того, как вы прочитаете и ответите на мой ответ, я позволю вам судить об этом :)

//ENUM_ORDER_TYPE_FILLING identifiers
ORDER_FILLING_FOK

ORDER_FILLING_FOK - это процедура, выполняющая только один из двух типов входа в рынок, 1.00 лот на покупку, согласованный с 1.00 лотом на продажу (тип_1) или 1.00 лот на покупку, согласованный с тремя лотами на продажу размером 0.25, 0.25 и 0.50 (тип_2). Если тип_1 или тип_2 не может быть выполнен, ордер не выходит на рынок.

//ENUM_ORDER_TYPE_FILLING identifiers
ORDER_FILLING_IOC
ORDER_FILLING_IOC - это процедура, выполняющая только один тип входа в рынок, 1.00 лот на покупку, согласованный с любым размером лота на продажу, доступным в настоящее время. Сопоставленный размер лота на продажу может быть любым размером до 1.00.
//ENUM_ORDER_TYPE_FILLING identifiers
ORDER_FILLING_RETURN
Что представляет собой процедура ORDER_FILLING_RETURN?

Что означает эта (документация) фраза: "В случае частичного заполнения рыночный или лимитный ордер с оставшимся объемом не отменяется, а обрабатывается дальше." (плохо написано, прямо скажем).

Мой перевод этой фразы: "Если рыночный/лимитный ордер заполняется частично, он не отменяется, и его оставшийся объем не отменяется, а обрабатывается дальше".


Мне кажется, что процедура выполняется при следующих критериях (типы ордеров (три типа) и типы символов (два типа)):

ТИПЫ ОРДЕРОВ:

тип_1: ORDER_TYPE_BUY и SELL

тип_2: ORDER_TYPE_BUY и SELL_LIMIT

тип_3: ORDER_TYPE_BUY и SELL_STOP_LIMIT

ТИПЫ СИМВОЛОВ:

тип_1: рыночное исполнение

тип_2: исполнение на бирже

В чем разница между ними
? Что они собой представляют?

"Для активации ордеров ORDER_TYPE_BUY_STOP_LIMIT и ORDER_TYPE_SELL_STOP_LIMIT создается соответствующий лимитный ордер ORDER_TYPE_BUY_LIMIT/ORDER_TYPE_SELL_LIMIT с типом исполнения ORDER_FILLING_RETURN".
ORDER_TYPE_BUY_STOP_LIMIT//Upon reaching the order price, a pending Buy Limit order is places at the StopLimit price

ORDER_TYPE_SELL_STOP_LIMIT//Upon reaching the order price, a pending Sell Limit order is places at the StopLimit price

Я предполагаю, что лимитный ордер buy stop отправляется, если цена достигает "stop price" (цена выше текущей рыночной цены), и как только цена достигает "stop price", ордер становится лимитным ордером buy или sell (в зависимости от кода), и ордер снова ждет, пока цена опустится ниже текущей цены и достигнет лимитной цены buy (лимитный ордер buy) или продолжит расти выше текущей цены и достигнет лимитной цены sell (лимитный ордер sell). Лимитный ордер buy stop является сначала стоп-ордером, а затем становится лимитным ордером. Это верно, да?

Стоп-лимитные ордера не включены в MQL4, и у меня нет опыта кодирования e'm.

Спасибо

 
RaptorUK:
Я думаю, вы не сталкивались сFill or Kill раньше?

Вы угадали :)

Спасибо.

 

Здравствуйте сообщество MQL5,

При кодировании в мета-редакторе я попытался использовать функцию order type и был предупрежден об ошибке в панели инструментов мета-редактора (см. снимок ниже).

тип заказа не определен

Как вы можете видеть, функция order type не определена, но, похоже, определена в документации(https://www.mql5.com/en/docs/standardlibrary/tradeclasses/chistoryorderinfo/chistoryorderinfoordertype).

Условие, которое я пытаюсь решить, следующее

if(OrderType()==ORDER_TYPE_BUY)

Как можно использовать функцию order type в мета-редакторе, если она не определена?

Спасибо