Дуже часто трейдеру буває потрібно якось ідентифікувати ордера або позиції. Наприклад, корисно знати, чи відкритий даний ордер саме цим експертом або на якому періоді графіка спрацював торговий сигнал. Розробники MetaTrader 4 передбачили для таких випадків дуже корисну торгову функцію - OrderMagicNumber ().
Функція OrderMagicNumber () повертає ціле число, яке було встановлено для цього ордера функцією OrderSend () в параметрі magic.
Трохи забігаючи вперед, розповім про формат функції OrderSend ():
Функція OrderSend () призначена для розміщення відкладеного ордера або відкриття позиції. У наступній статті буде розказано про неї докладніше.
Як я вже говорив раніше, магічне число для ордера або позиції передається в функцію через параметр magic.
Припустимо, що у нас працює кілька експертів, кожен зі своїм номером (ID). Припустимо, що також не виключено, коли один експерт працює по одному і тому ж інструменту, але на різних періодах графіка. Всі ці експерти здійснюють операції і виставляють ордери, але при цьому для подальшого управління цими ордерами і позиціями треба вміти визначати, яким експертом і на який період ці позиції були відкриті (ордера виставлені), щоб випадково не закрити позицію, відкриту іншим експертом або цим же експертом, але на іншому часовому проміжку.
Для цих цілей нам підійде наступний формат магічного числа: останні 2 цифри числа - ID ЕКСПЕРТ, перші цифри - період графіка.
У мові MetaQuotes Language існують такі константи, які позначають періоди графіків: