MarketRuleHelper
Extension class for IMarketRule.
Методы
ActiveRule(IMarketRuleContainer, IMarketRule, Func<bool>)
To activate the rule.
- container
- The rules container.
- rule
- Rule.
- process
- The handler.
AddRuleLog(IMarketRuleContainer, LogLevels, IMarketRule, string, object[])
To write the message from the rule.
- container
- The rules container.
- level
- The level of the log message.
- rule
- Rule.
- message
- Text message.
- args
- Text message settings. Used if a message is the format string. For details, see Object[]).
And(IEnumerable<IMarketRule>) : IMarketRule
To combine rules by AND condition.
- rules
- Rules.
Возвращает: Combined rule.
And(IMarketRule, IMarketRule[]) : MarketRule<T, T>
To combine rules by AND condition.
- rule
- First rule.
- rules
- Additional rules.
Возвращает: Combined rule.
And``2(MarketRule<T, T>, MarketRule<T, T>[])
To combine rules by AND condition.
- rule
- First rule.
- rules
- Additional rules.
Возвращает: Combined rule.
Apply(IMarketRule, IMarketRuleContainer) : MarketRule<T, T>
To form a rule (include IsReady).
- rule
- Rule.
- container
- The rules container.
Возвращает: Rule.
Apply(IMarketRule) : MarketRule<T, T>
To form a rule (include IsReady).
- rule
- Rule.
Возвращает: Rule.
Apply``2(MarketRule<T, T>, IMarketRuleContainer)
To form a rule (include IsReady).
- rule
- Rule.
- container
- The rules container.
Возвращает: Rule.
Changed(Position, IPositionProvider) : MarketRule<Position, Position>
To create a rule for the position change event.
- position
- The position to be traced for the change event.
- provider
- The position provider.
Возвращает: Rule.
Exclusive(IMarketRule, IMarketRule)
To make rules mutually exclusive.
- rule1
- First rule.
- rule2
- Second rule.
Or(IMarketRule, IMarketRule[]) : MarketRule<T, T>
To combine rules by OR condition.
- rule
- First rule.
- rules
- Additional rules.
Возвращает: Combined rule.
Or(IEnumerable<IMarketRule>) : IMarketRule
To combine rules by OR condition.
- rules
- Rules.
Возвращает: Combined rule.
Or``2(MarketRule<T, T>, MarketRule<T, T>[])
To combine rules by OR condition.
- rule
- First rule.
- rules
- Additional rules.
Возвращает: Combined rule.
SuspendRules(Action)
To process rules in suspended mode (for example, create several rules and start them up simultaneously). After completion of method operation all rules, attached to the container resume their activity.
- action
- The action to be processed at suspended rules. For example, to add several rules simultaneously.
SuspendRules(IMarketRuleContainer, Action)
To process rules in suspended mode (for example, create several rules and start them up simultaneously). After completion of method operation all rules, attached to the container resume their activity.
- container
- The rules container.
- action
- The action to be processed at suspended rules. For example, to add several rules simultaneously.
Suspend``1(T, bool)
To suspend or resume the rule.
- rule
- Rule.
- suspend
- - suspend, - resume.
Возвращает: Rule.
TryRemoveRule(IMarketRuleContainer, IMarketRule, bool) : bool
To delete a rule. If a rule is executed at the time when this method is called, it will not be deleted.
- container
- The rules container.
- rule
- Rule.
- checkCanFinish
- To check the possibility of rule suspension.
Возвращает: , if a rule was successfully deleted, , if a rule cannot be currently deleted.
TryRemoveWithExclusive(IMarketRuleContainer, IMarketRule) : bool
To delete the rule and all opposite rules. If the rule is executed at the time when this method is called, it will not be deleted.
- container
- The rules container.
- rule
- Rule.
Возвращает: , if rule was removed, otherwise, .
UpdateLogLevel``1(T, LogLevels)
To set the logging level.
- rule
- Rule.
- level
- The level, on which logging is performed.
Возвращает: Rule.
UpdateName``1(T, string)
To assign the rule a new name Name.
- rule
- Rule.
- name
- The rule new name.
Возвращает: Rule.
WhenAllTrades(Order, ISubscriptionProvider) : MarketRule<Order, IEnumerable<MyTrade>>
To create a rule for the event of all trades occurrence for the order.
- order
- The order to be traced for all trades occurrence event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenBestAskPriceLess(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, IOrderBookMessage>
To create a rule for the event of dropping the best offer below the specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenBestAskPriceMore(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, IOrderBookMessage>
To create a rule for the event of excess of the best offer of the specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenBestBidPriceLess(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, IOrderBookMessage>
To create a rule for the event of dropping the best bid below the specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenBestBidPriceMore(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, IOrderBookMessage>
To create a rule for the event of excess of the best bid of specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenCanceled(Order, ISubscriptionProvider) : MarketRule<Order, Order>
To create a rule for the order cancelling event.
- order
- The order to be traced for cancelling event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenCancelFailed(Order, ISubscriptionProvider) : MarketRule<Order, OrderFail>
To create a rule for the event of unsuccessful order cancelling on exchange.
- order
- The order to be traced for unsuccessful cancelling event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenCandleReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, T>
To create a rule for the event of CandleReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenCandleReceived``1(Subscription, ISubscriptionProvider)
To create a rule for the event of CandleReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenCandlesChanged(ISubscriptionProvider, Subscription) : MarketRule<Subscription, T>
To create a rule for candle change event.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for changed candles.
Возвращает: Rule.
WhenCandlesChanged``1(ISubscriptionProvider, Subscription)
To create a rule for candle change event.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for changed candles.
Возвращает: Rule.
WhenCandlesFinished(ISubscriptionProvider, Subscription) : MarketRule<Subscription, T>
To create a rule for candles end event.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for end of candle.
Возвращает: Rule.
WhenCandlesFinished``1(ISubscriptionProvider, Subscription)
To create a rule for candles end event.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for end of candle.
Возвращает: Rule.
WhenCandlesStarted(ISubscriptionProvider, Subscription) : MarketRule<Subscription, T>
To create a rule for the event of new candles occurrence.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for new candles.
Возвращает: Rule.
WhenCandlesStarted``1(ISubscriptionProvider, Subscription)
To create a rule for the event of new candles occurrence.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for new candles.
Возвращает: Rule.
WhenCandles``1(ISubscriptionProvider, Subscription)
To create a rule for the event of candles occurrence, change and end.
- subscriptionProvider
- The subscription manager.
- subscription
- Candles series to be traced for candles.
Возвращает: Rule.
WhenChanged(Order, ISubscriptionProvider) : MarketRule<Portfolio, Portfolio>
To create a rule for the order change event.
- order
- The order to be traced for the change event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenChanged(Portfolio, IPortfolioProvider) : MarketRule<Portfolio, Portfolio>
To create a rule for the event of change portfolio .
- portfolio
- The portfolio to be traced for the event of change.
- provider
- The provider of information about portfolios.
Возвращает: Rule.
WhenChanged``1(ISubscriptionProvider, T)
To create a rule for candle change event.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for change.
Возвращает: Rule.
WhenClosePriceLess``1(ISubscriptionProvider, T, Unit)
To create a rule for the event of candle closing price reduction below a specific level.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for the event of candle closing price reduction below a specific level.
- price
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenClosePriceMore``1(ISubscriptionProvider, T, Unit)
To create a rule for the event of candle closing price excess above a specific level.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for the event of candle closing price excess above a specific level.
- price
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenConnected(IConnector) : MarketRule<IConnector, IMessageAdapter>
To create a rule for the event of connection established.
- connector
- The connection to be traced for state.
Возвращает: Rule.
WhenConnectionLost(IConnector) : MarketRule<IConnector, ValueTuple<IMessageAdapter, Exception>>
To create a rule for the event of connection lost.
- connector
- The connection to be traced for state.
Возвращает: Rule.
WhenDisconnected(IConnector) : MarketRule<IConnector, IMessageAdapter>
To create a rule for the event of disconnection.
- connector
- The connection to be traced for state.
Возвращает: Rule.
WhenEdited(Order, ITransactionProvider) : MarketRule<Order, Order>
To create a rule for the order OrderEdited event.
- order
- The order to be traced.
- provider
- The transactional provider.
Возвращает: Rule.
WhenEditFailed(Order, ISubscriptionProvider) : MarketRule<Order, OrderFail>
To create a rule for the order OrderEditFailReceived event.
- order
- The order to be traced.
- provider
- The transactional provider.
Возвращает: Rule.
WhenFinished``1(ISubscriptionProvider, T)
To create a rule for candle end event.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for end.
Возвращает: Rule.
WhenIntervalElapsed(ITimeProvider, TimeSpan) : MarketRule<ITimeProvider, ITimeProvider>
To create a rule for the event CurrentTimeChanged, activated after expiration of .
- provider
- ITimeProvider
- interval
- Interval.
Возвращает: Rule.
WhenLastTradePriceLess(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, ITickTradeMessage>
To create a rule for the event of reduction of the last trade price below the specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenLastTradePriceMore(Subscription, ISubscriptionProvider, decimal) : MarketRule<Subscription, ITickTradeMessage>
To create a rule for the event of increase of the last trade price above the specific level.
- subscription
- Subscription
- provider
- ISubscriptionProvider
- level
- The level.
Возвращает: Rule.
WhenLess(Position, IPositionProvider, Unit) : MarketRule<Position, Position>
To create a rule for the event of position decrease below the specific level.
- position
- The position to be traced for the event of decrease below the specific level.
- provider
- The position provider.
- value
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenLevel1Received(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Level1ChangeMessage>
To create a rule for the event of Level1Received.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenMatched(Order, ISubscriptionProvider) : MarketRule<Order, Order>
To create a rule for the event of order fully matching.
- order
- The order to be traced for the fully matching event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenMoneyLess(Portfolio, IPortfolioProvider, Unit) : MarketRule<Portfolio, Portfolio>
To create a rule for the event of money decrease in portfolio below the specific level.
- portfolio
- The portfolio to be traced for the event of money decrease below the specific level.
- provider
- The provider of information about portfolios.
- money
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenMoneyMore(Portfolio, IPortfolioProvider, Unit) : MarketRule<Portfolio, Portfolio>
To create a rule for the event of money increase in portfolio above the specific level.
- portfolio
- The portfolio to be traced for the event of money increase above the specific level.
- provider
- The provider of information about portfolios.
- money
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenMore(Position, IPositionProvider, Unit) : MarketRule<Position, Position>
To create a rule for the event of position increase above the specific level.
- position
- The position to be traced of the event of increase above the specific level.
- provider
- The position provider.
- value
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
WhenNewsReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, News>
To create a rule for the event of NewsReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenNewTrade(Order, ISubscriptionProvider) : MarketRule<Order, MyTrade>
To create a rule for the event of trade occurrence for the order.
- order
- The order to be traced for trades occurrence events.
- provider
- The transactional provider.
Возвращает: Rule.
WhenOrderBookReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, IOrderBookMessage>
To create a rule for the event of OrderBookReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderEditFailReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, OrderFail>
To create a rule for the event of OrderEditFailReceived or OrderCancelFailReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderFailReceived(Subscription, ISubscriptionProvider, bool) : MarketRule<Subscription, OrderFail>
To create a rule for the event of OrderRegisterFailReceived or OrderCancelFailReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
- isRegister
- OrderRegisterFailReceived or OrderCancelFailReceived.
Возвращает: Rule.
WhenOrderLogReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, IOrderLogMessage>
To create a rule for the event of OrderLogReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderReceived(ISubscriptionProvider) : MarketRule<Subscription, Order>
To create a rule for the event of OrderReceived.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Order>
To create a rule for the event of OrderReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderRegistered(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Order>
To create a rule for event of occurrence of new order.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOrderRegistered(ISubscriptionProvider) : MarketRule<Subscription, Order>
To create a rule for event of occurrence of new order.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOwnTradeReceived(ISubscriptionProvider) : MarketRule<Subscription, MyTrade>
To create a rule for the event of OwnTradeReceived.
- provider
- Subscription provider.
Возвращает: Rule.
WhenOwnTradeReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, MyTrade>
To create a rule for the event of OwnTradeReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenPartiallyFinishedCandles``1(ISubscriptionProvider, Subscription, decimal)
To create a rule for the event of candle partial end.
- subscriptionProvider
- The subscription manager.
- subscription
- The candle series to be traced for candle partial end.
- percent
- The percentage of candle completion.
Возвращает: Rule.
WhenPartiallyFinished``1(ISubscriptionProvider, T, decimal)
To create a rule for the event of candle partial end.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for partial end.
- percent
- The percentage of candle completion.
Возвращает: Rule.
WhenPartiallyMatched(Order, ISubscriptionProvider) : MarketRule<Order, Order>
To create a rule for the event of order partial matching.
- order
- The order to be traced for partial matching event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenPortfolioReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Portfolio>
To create a rule for the event of PortfolioReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenPortfolioReceived(ISubscriptionProvider) : MarketRule<Subscription, Portfolio>
To create a rule for the event of PortfolioReceived.
- provider
- Subscription provider.
Возвращает: Rule.
WhenPositionReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Position>
To create a rule for the event of PositionReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenPositionReceived(ISubscriptionProvider) : MarketRule<Subscription, Position>
To create a rule for the event of PositionReceived.
- provider
- Subscription provider.
Возвращает: Rule.
WhenRegistered(Order, ISubscriptionProvider) : MarketRule<Order, Order>
To create a rule for the event of successful order registration on exchange.
- order
- The order to be traced for the event of successful registration.
- provider
- The transactional provider.
Возвращает: Rule.
WhenRegisterFailed(Order, ISubscriptionProvider) : MarketRule<Order, OrderFail>
To create a for the event of order unsuccessful registration on exchange.
- order
- The order to be traced for unsuccessful registration event.
- provider
- The transactional provider.
Возвращает: Rule.
WhenSubscriptionFailed(Subscription, ISubscriptionProvider) : MarketRule<Subscription, ValueTuple<Subscription, Exception, bool>>
To create a rule for the event of SubscriptionFailed.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenSubscriptionOnline(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Subscription>
To create a rule for the event of SubscriptionOnline.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenSubscriptionStarted(Subscription, ISubscriptionProvider) : MarketRule<Subscription, Subscription>
To create a rule for the event of SubscriptionStarted.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenSubscriptionStopped(Subscription, ISubscriptionProvider) : MarketRule<Subscription, ValueTuple<Subscription, Exception>>
To create a rule for the event of SubscriptionStopped.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenTargetReached(PositionTargetManager, Security, Portfolio) : MarketRule<PositionTargetManager, ValueTuple<Security, Portfolio>>
Create a rule that fires when target position is reached.
- manager
- Position target manager.
- security
- Security to filter (null for any).
- portfolio
- Portfolio to filter (null for any).
Возвращает: Rule.
WhenTickTradeReceived(Subscription, ISubscriptionProvider) : MarketRule<Subscription, ITickTradeMessage>
To create a rule for the event of TickTradeReceived.
- subscription
- Subscription.
- provider
- Subscription provider.
Возвращает: Rule.
WhenTimeCome(ITimeProvider, IEnumerable<DateTime>) : MarketRule<ITimeProvider, DateTime>
To create a rule, activated at the exact time, specified through .
- provider
- ITimeProvider
- times
- The exact time. Several values may be sent.
Возвращает: Rule.
WhenTimeCome(ITimeProvider, DateTime[]) : MarketRule<ITimeProvider, DateTime>
To create a rule, activated at the exact time, specified through .
- provider
- ITimeProvider
- times
- The exact time. Several values may be sent.
Возвращает: Rule.
WhenTotalVolumeMore``1(ISubscriptionProvider, T, Unit)
To create a rule for the event of candle total volume excess above a specific level.
- subscriptionProvider
- The subscription manager.
- candle
- The candle to be traced for the event of candle total volume excess above a specific level.
- diff
- The level. If the Type type equals to Absolute, specified price is set. Otherwise, shift value is specified.
Возвращает: Rule.
Поля
DefaultRuleContainer : IMarketRuleContainer
The container of rules, which will be applied by default to all rules, not included into strategy.