Class MarketRule<TToken, TArg>
Правило, активизирующее действие при наступлении рыночного условия.
Namespace: StockSharp.Algo
Assembly: StockSharp.Algo.dll
Syntax
public abstract class MarketRule<TToken, TArg> : Disposable, IMarketRule, IDisposable
Type Parameters
Name | Description |
---|---|
TToken | Тип токена. |
TArg | Тип принимаемого аргумента. |
Constructors
MarketRule(TToken)
Инициализировать MarketRule<TToken, TArg>.
Declaration
protected MarketRule(TToken token)
Parameters
Type | Name | Description |
---|---|---|
TToken | token | Токен правила. |
Properties
Container
Контейнер правил.
Declaration
public virtual IMarketRuleContainer Container { get; set; }
Property Value
Type | Description |
---|---|
IMarketRuleContainer |
ExclusiveRules
Правила, которые противоположны данному. Удаляются автоматически при активации данного правила.
Declaration
public virtual ISynchronizedCollection<IMarketRule> ExclusiveRules { get; }
Property Value
Type | Description |
---|---|
Ecng.Collections.ISynchronizedCollection<IMarketRule> |
IsActive
Активировано ли правило в данный момент.
Declaration
public bool IsActive { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
IsReady
Сформировано ли правило.
Declaration
public bool IsReady { get; }
Property Value
Type | Description |
---|---|
Boolean |
IsSuspended
Приостановлено ли правило.
Declaration
public virtual bool IsSuspended { get; set; }
Property Value
Type | Description |
---|---|
Boolean |
LogLevel
Уровень, на котором осуществлять логирование данного правила.
Declaration
public virtual LogLevels LogLevel { get; set; }
Property Value
Type | Description |
---|---|
LogLevels |
Name
Имя правила.
Declaration
public string Name { get; set; }
Property Value
Type | Description |
---|---|
String |
Token
Токен правила, с которым он ассоциирован (например, для правила WhenRegistered(Order, ITransactionProvider) токеном будет является заявка). Если правильно ни с чем не ассоциировано, то будет возвращено null.
Declaration
public virtual object Token { get; }
Property Value
Type | Description |
---|---|
Object |
Methods
Activate()
Активировать правило.
Declaration
protected void Activate()
Activate(TArg)
Активировать правило.
Declaration
protected virtual void Activate(TArg arg)
Parameters
Type | Name | Description |
---|---|---|
TArg | arg | Значение, которое будет передано в обработчик, зарегистрированный через Do(Action<TArg>). |
Activated(Action)
Добавить обработчик, который будет вызван при активации действия.
Declaration
public MarketRule<TToken, TArg> Activated(Action handler)
Parameters
Type | Name | Description |
---|---|---|
Action | handler | Обработчик. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Activated<TResult>(Action<TResult>)
Добавить обработчик, принимающий аргумент из Do<TResult>(Func<TResult>), который будет вызван при активации действия.
Declaration
public MarketRule<TToken, TArg> Activated<TResult>(Action<TResult> handler)
Parameters
Type | Name | Description |
---|---|---|
Action<TResult> | handler | Обработчик. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Type Parameters
Name | Description |
---|---|
TResult | Тип возвращаемого результата из обработчика правила. |
CanFinish()
Можно ли закончить правило.
Declaration
protected virtual bool CanFinish()
Returns
Type | Description |
---|---|
Boolean | true, если правило больше не нужно. Иначе, false. |
DisposeManaged()
Освободить занятые ресурсы.
Declaration
protected override void DisposeManaged()
Do(Action)
Добавить действие, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do(Action action)
Parameters
Type | Name | Description |
---|---|---|
Action | action | Action. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Do(Action<TArg>)
Добавить действие, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do(Action<TArg> action)
Parameters
Type | Name | Description |
---|---|---|
Action<TArg> | action | Action. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Do(Action<MarketRule<TToken, TArg>, TArg>)
Добавить действие, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do(Action<MarketRule<TToken, TArg>, TArg> action)
Parameters
Type | Name | Description |
---|---|---|
Action<MarketRule<TToken, TArg>, TArg> | action | Action. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Do<TResult>(Func<TResult>)
Добавить действие, возвращающее результат, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do<TResult>(Func<TResult> action)
Parameters
Type | Name | Description |
---|---|---|
Func<TResult> | action | Действие, возвращающее результат. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Type Parameters
Name | Description |
---|---|
TResult | Тип возвращаемого результата. |
Do<TResult>(Func<TArg, TResult>)
Добавить действие, возвращающее результат, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do<TResult>(Func<TArg, TResult> action)
Parameters
Type | Name | Description |
---|---|---|
Func<TArg, TResult> | action | Действие, возвращающее результат. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Type Parameters
Name | Description |
---|---|
TResult | Тип возвращаемого результата. |
Do<TResult>(Func<MarketRule<TToken, TArg>, TArg, TResult>)
Добавить действие, возвращающее результат, активизирующееся при наступлении условия.
Declaration
public MarketRule<TToken, TArg> Do<TResult>(Func<MarketRule<TToken, TArg>, TArg, TResult> action)
Parameters
Type | Name | Description |
---|---|---|
Func<MarketRule<TToken, TArg>, TArg, TResult> | action | Действие, возвращающее результат. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Type Parameters
Name | Description |
---|---|
TResult | Тип возвращаемого результата. |
ToString()
Declaration
public override string ToString()
Returns
Type | Description |
---|---|
String |
Until(Func<Boolean>)
Сделать правило периодичным (будет вызываться до тех пор, пока canFinish
не вернет true).
Declaration
public MarketRule<TToken, TArg> Until(Func<bool> canFinish)
Parameters
Type | Name | Description |
---|---|---|
Func<Boolean> | canFinish | Критерий окончания периодичности. |
Returns
Type | Description |
---|---|
MarketRule<TToken, TArg> | Правило. |
Explicit Interface Implementations
IMarketRule.CanFinish()
Declaration
bool IMarketRule.CanFinish()
Returns
Type | Description |
---|---|
Boolean |
IMarketRule.Do(Action)
Declaration
IMarketRule IMarketRule.Do(Action action)
Parameters
Type | Name | Description |
---|---|---|
Action | action |
Returns
Type | Description |
---|---|
IMarketRule |
IMarketRule.Do(Action<Object>)
Declaration
IMarketRule IMarketRule.Do(Action<object> action)
Parameters
Type | Name | Description |
---|---|---|
Action<Object> | action |
Returns
Type | Description |
---|---|
IMarketRule |
IMarketRule.Do<TResult>(Func<TResult>)
Declaration
IMarketRule IMarketRule.Do<TResult>(Func<TResult> action)
Parameters
Type | Name | Description |
---|---|---|
Func<TResult> | action |
Returns
Type | Description |
---|---|
IMarketRule |
Type Parameters
Name | Description |
---|---|
TResult |
IMarketRule.Until(Func<Boolean>)
Declaration
IMarketRule IMarketRule.Until(Func<bool> canFinish)
Parameters
Type | Name | Description |
---|---|---|
Func<Boolean> | canFinish |
Returns
Type | Description |
---|---|
IMarketRule |