class CTradeState
Класс для управления состоянием торговли в зависимости от текущего времени и дня недели.
Сообщите нам, если считаете, что материал размещён без разрешения.
Обращение по товару «ctime_tradestate.mqh» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Библиотека CTradeState предназначена для управления режимами торговли на основе расписания по времени и дню недели. Она позволяет программисту задавать разные состояния торговли (например, разрешение покупок и продаж, только покупки, только продажи, остановка, ожидание или запрет новых входов) для конкретных временных окон в течение недели.
Класс хранит массив состояний, привязанный к каждой минуте недели, и предоставляет методы для установки и получения текущего состояния. Это удобно для реализации логики, при которой торговля должна вестись только в определённое время.
Конструкторы позволяют при создании объекта задать начальное состояние по умолчанию — либо полное разрешение торговли, либо пользовательское. Метод получения состояния работает как с текущим серверным временем, так и с произвольным моментом времени.
Классов: 1 · методов: 3 · конструкторов: 2 · деструкторов: 0 · отдельных функций: 0
class CTradeState
Класс для управления состоянием торговли в зависимости от текущего времени и дня недели.
CTradeState(void)
Конструктор класса, инициализирующий все временные слоты состоянием разрешения торговли покупкой и продажей.
CTradeState(ENUM_TRADE_STATE default_state)
Конструктор класса, позволяющий задать начальное состояние торговли для всех временных слотов.
ENUM_TRADE_STATE GetTradeState(void)
Возвращает текущее состояние торговли на основе системного времени сервера.
ENUM_TRADE_STATE GetTradeState(datetime time_current)
Возвращает состояние торговли для указанного момента времени.
void SetTradeState(datetime time_begin,datetime time_end,int day_of_week,ENUM_TRADE_STATE state)
Устанавливает состояние торговли для заданного временного интервала и дня (или всех дней) недели.
??/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
/ / | T i m e _ t r a d e s t a t e . m q h |
/ / | C o p y r i g h t 2 0 1 5 , V a s i l i y S o k o l o v . |
/ / | h t t p : / / w w w . m q l 5 . c o m |
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
# p r o p e r t y c o p y r i g h t " C o p y r i g h t 2 0 1 5 , V a s i l i y S o k o l o v . "
# p r o p e r t y l i n k " h t t p : / / w w w . m q l 5 . c o m "
# d e f i n e A L L _ D A Y S _ O F _ W E E K 7
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
/ / | ?@545;O5B B>@3>2>5 A>AB>O=85 M:A?5@B0 |
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
e n u m E N U M _ T R A D E _ S T A T E
{
T R A D E _ B U Y _ A N D _ S E L L , / / 07@5H5=K ?>:C?:8 8 ?@>4068.
T R A D E _ B U Y _ O N L Y , / / 07@5H5=K B>;L:> ?>:C?:8. @>4068 70?@5I5=K.
T R A D E _ S E L L _ O N L Y , / / 07@5H5=K B>;L:> ?@>4068. >:C?:8 70?@5I5=K.
T R A D E _ S T O P , / / ">@3>2;O 70?@5I5=0. 5<54;5==> 70:@KBL 2A5 ?>78F88. >2K5 A83=0;K =0 2E>4 =5 ?@8=8<0BL.
T R A D E _ W A I T , / / >=B@>;L =04 >B:@KBK<8 ?>78F8O<8 B5@O5BAO. >2K5 A83=0;K 83=>@8@CNBAO. >;575= 2 <><5=BK 2KE>40 =>2>AB59.
T R A D E _ N O _ N E W _ E N T R Y / / !83=0;K =0 2E>4 83=>@8@CNBAO. 4=0:> C65 >B:@KBK5 ?>78F88 A>?@>2>640NBAO A>3;0A=> B>@3>2>9 ;>38:5.
} ;
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
/ / | >4C;L B>@3>2KE A>AB>O=89 T r a d e S t a t e |
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
c l a s s C T r a d e S t a t e
{
p r i v a t e :
E N U M _ T R A D E _ S T A T E m _ s t a t e [ 6 0 * 2 4 * 7 ] ; / / 0AA82 B>@3>2KE A>AB>O=89
p u b l i c :
C T r a d e S t a t e ( v o i d ) ;
C T r a d e S t a t e ( E N U M _ T R A D E _ S T A T E d e f a u l t _ s t a t e ) ;
E N U M _ T R A D E _ S T A T E G e t T r a d e S t a t e ( v o i d ) ;
E N U M _ T R A D E _ S T A T E G e t T r a d e S t a t e ( d a t e t i m e t i m e _ c u r r e n t ) ;
v o i d S e t T r a d e S t a t e ( d a t e t i m e t i m e _ b e g i n , d a t e t i m e t i m e _ e n d , i n t d a y _ o f _ w e e k , E N U M _ T R A D E _ S T A T E s t a t e ) ;
} ;
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
/ / | 568< ?> C<>;G0=8N T R A D E _ B U Y _ A N D _ S E L L |
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
C T r a d e S t a t e : : C T r a d e S t a t e ( v o i d )
{
A r r a y I n i t i a l i z e ( m _ s t a t e , T R A D E _ B U Y _ A N D _ S E L L ) ;
}
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
/ / | 568< ?> C<>;G0=8N 70405BAO 7=0G5=85< d e f a u l t _ s t a t e |
/ / + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +
C T r a d e S t a t e : : C T r a d e S t a t e ( E N U M _ T R A D E _ S T A T E d e f a u l t _ s t a t e )
Показано первые 50% кода (символов: 9244)
Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? После подтверждения оплаты файл сохранится в кабинете на этот email. Если аккаунта ещё нет, мы создадим его и пришлём ссылку для задания пароля. Если аккаунт уже есть, покупка добавится в него. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.