Как заработать деньги. Проект сам себе финансист.
май 2011
пн вт ср чт пт сб вс
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Главная » » »

OrderMagicNumber() - идентификационное (магическое) число для выбранного ордера

Очень часто трейдеру бывает нужно как-то идентифицировать ордера или позиции. Например, полезно знать, открыт ли данный ордер именно этим экспертом или на каком периоде графика сработал торговый сигнал. Разработчики MetaTrader 4 предусмотрели для таких случаев очень полезную торговую функцию - OrderMagicNumber().

 int OrderMagicNumber() 

Функция OrderMagicNumber() возвращает целое число, которое было установлено для этого ордера функцией OrderSend() в параметре magic.

Немного забегая вперед, расскажу о формате функции OrderSend():

 int OrderSend(string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE) 

Функция OrderSend() предназначена для размещения отложенного ордера или открытия позиции. В следующей статье будет рассказано о ней подробнее.

Как я уже говорил ранее, магическое число для ордера или позиции передается в функцию через параметр magic.

Предположим, что у нас работает несколько экспертов, каждый со своим номером (ID). Допустим, что также возможна ситуация, когда один эксперт работает по одному и тому же инструменту, но на разных периодах графика. Все эти эксперты совершают сделки и выставляют ордера, но при этом для последующего управления этими ордерами и позициями надо уметь определять, каким экспертом и на каком периоде эти позиции были открыты (ордера выставлены), чтобы случайно не закрыть позицию, открытую другим экспертом или этим же экспертом, но на другом временном промежутке.

Для этих целей нам подойдет следующий формат магического числа: последние 2 цифры числа - ID эсперта, первые цифры - период графика.

В языке MetaQuotes Language существуют следующие константы, которые обозначают периоды графиков:

КонстантаЗначениеОписание
PERIOD_M111 минута
PERIOD_M555 минут
PERIOD_M151515 минут
PERIOD_M303030 минут
PERIOD_H1601 час
PERIOD_H42404 часа
PERIOD_D114401 день
PERIOD_W1100801 неделя
PERIOD_MN1432001 месяц
0 (ноль)0Период текущего графика
Табл. 1. Периоды графиков

Исходя из этого мы можем описать 3 функции:

 // получить магическое число из периода графика и ID эксперта int GetMagicNumber( int chart_period, int expertID )
 { return( chart_period * 100 + expertID ); }
// получить период графика из магического числа int GetPeriod( int magic ) { return( magic / 100 ); }
// получить ID эксперта из магического числа int GetExpertID( int magic ) { return( magic % 100 ); }

В следующей статье будет рассказано о функции OrderSend(). С помощью этой функции можно открывать позиции и размещать отложенные ордера.



Автор статьи: Андрей Ведихин

Хомячковый рай. Уйти и потеряться:

Комментарии к этой заметке больше не принимаются.




Есть что сказать? Не стесняйтесь!






Последние статьи:

Выгодные «исламские счета» для трейдеров Форекс Выгодные «исламские счета» для трейдеров Форекс Таким образом, вне зависимости от стиля работы стоит использовать «исламские счета» и сотрудничать с компаниями, которые не берут с трейдеров swap-комиссии. ..
2014-09-29
Стоит ли покупать чужие торговые сигналы и прогнозы? Стоит ли покупать чужие торговые сигналы и прогнозы? И все же основным нашим советом станет отказ от покупки торговых сигналов и прогнозов. Куда лучше научиться анализировать валютный рынок и думать всегда только своей головой. ..
2015-02-12

Видео по теме:




В мире больших денег

  • Самые богатые люди
    планеты. Ежегодные рейтинги FORBS. Истории успеха признаных финансовых гуру
  • Самые дорогие вещи:
    Часы, автомобили, ноутбуки стоимотью в десятки и сотни тысяч долларов. Рубрика "Чтоб я так жил"
  • Денежные прогнозы
    Что покупать и что продавать? Периодические прогнозы цен на иностранные валюты, акции крупнейших компаний и драгоценные металлы

ВКонтакте с деньгами

УГОЛОК АДМИНИСТРАТОРА