Навигация по сайту
Реклама
Популярные статьи

Новости
{links1}
Система ПВО российской авиабазы Хмеймим сбила неизвестный беспилотник

Средства ПВО в Хмеймиме сбили неизвестный беспилотник, пострадавших и ущерба нет, сообщил представитель авиабазы.

В пригороде Дамаска ликвидирован последний оплот ИГ

Подразделения сирийской армии установили контроль над районом Хаджр-эль-Асвад - последним оплотом террористов "Исламского государства" (ИГ, запрещена в РФ) в Сирии, расположенном на юге ...

Трамп запретил в США операции с госдолгом Венесуэлы

Президент США Дональд Трамп своим исполнительным указом запретил американским гражданам и компаниям все операции с госдолгом Венесуэлы, включая и обязательства нефтяной госкомпании PDVSA, пишет ...


{links2}
Счетчик

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

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_M1
1
1 минута
PERIOD_M5
5
5 минут
PERIOD_M15
15
15 минут
PERIOD_M30
30
30 минут
PERIOD_H1
60
1 час
PERIOD_H4
240
4 часа
PERIOD_D1
1440
1 день
PERIOD_W1
10080
1 неделя
PERIOD_MN1
43200
1 месяц
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 );
     }
 

Ключевые теги: ордера, позиции, экспертом, число, графика, числа, magic, OrderSend, этого, OrderMagicNumber, функцию, расскажу, double, магического, магическое, получить, return, периоде,      , каком
 
Другие новости по теме:

  • OrderSend() - открытие позиции или размещение отложенного ордера Гид по и ...
  • Параметры функции OrderSend() - продолжение Гид по интернет трейдингу фор ...
  • Пример использования функции OrderDelete() Гид по интернет трейдингу форе ...
  • OrderLots() - количество лотов в выделенном ордере или позиции Гид по инт ...
  • OrderModify() - изменение параметров отложенных ордеров и открытых позиций ...
  • Закрытие позиции с помощью функции OrderClose() Гид по интернет трейдингу ...
  • Параметры функции OrderSend() Гид по интернет трейдингу форекс
  • OrderDelete() - удаление отложенного ордера Гид по интернет трейдингу фор ...
  • Эксперт Forex Magic Bullet EA Гид по интернет трейдингу форекс
  • Учим эксперта торговать Гид по интернет трейдингу форекс


  • Добавление комментария
    Полужирный Наклонный текст Подчеркнутый текст Зачеркнутый текст | Выравнивание по левому краю По центру Выравнивание по правому краю | Вставка смайликов Вставка ссылкиВставка защищенной ссылки Выбор цвета | Скрытый текст Вставка цитаты Преобразовать выбранный текст из транслитерации в кириллицу Вставка спойлера





    форекс начинающим | форекс обучение | видео форекс | книги форекс | уроки форекс | советники форекс | {links} Copyright © 2010 центовый форекс All Rights Reserved.