DecomposedStrategy

StockSharp.Algo.Strategies.Decomposed

Die Basisklasse für alle Handelsstrategien.

Erbt von: BaseLogReceiver

Implementiert: IStrategyHost, IPositionProvider, INotifyPropertyChangedEx, INotifyPropertyChanged, ITimeProvider

Konstruktoren

DecomposedStrategy
public DecomposedStrategy()
decomposedStrategy = DecomposedStrategy()

Initialisiert eine neue Instanz DecomposedStrategy.

DecomposedStrategy
public DecomposedStrategy(IPnLManager pnlManager, IStatisticManager stats)
decomposedStrategy = DecomposedStrategy(pnlManager, stats)

Initialisiert eine neue Instanz DecomposedStrategy.

pnlManager
PnL Manager.
stats
Statistikmanager.

Eigenschaften

CancelOrdersWhenStopping
public bool CancelOrdersWhenStopping { get; set; }
value = decomposedStrategy.CancelOrdersWhenStopping
decomposedStrategy.CancelOrdersWhenStopping = value

Stornieren Sie aktive Aufträge, wenn die Strategie aufhört.

CommentMode
public StrategyCommentModes CommentMode { get; set; }
value = decomposedStrategy.CommentMode
decomposedStrategy.CommentMode = value

Kommentarmodus.

Commission
public decimal? Commission { get; }
value = decomposedStrategy.Commission

Gesamtsumme der kumulierten Provision (aus Aufträgen + Trades).

Connector
public IConnector Connector { get; set; }
value = decomposedStrategy.Connector
decomposedStrategy.Connector = value

Connector (über die Schnittstelle für Testbarkeit).

Engine
public StrategyEngine Engine { get; }
value = decomposedStrategy.Engine

Zustandsmaschine + Nachrichten-Routing.

ErrorState
public LogLevels ErrorState { get; set; }
value = decomposedStrategy.ErrorState
decomposedStrategy.ErrorState = value

Fehlerzustand.

IsFormed
public virtual bool IsFormed { get; }
value = decomposedStrategy.IsFormed

Ob die Strategie gebildet wird.

IsOnline
public bool IsOnline { get; private set; }
value = decomposedStrategy.IsOnline
decomposedStrategy.IsOnline = value

Ist online.

Latency
public TimeSpan? Latency { get; set; }
value = decomposedStrategy.Latency
decomposedStrategy.Latency = value

Latenz.

Orders
public OrderPipeline Orders { get; }
value = decomposedStrategy.Orders

Auftragsverfolgung und -verarbeitung.

OrdersKeepTime
public TimeSpan OrdersKeepTime { get; set; }
value = decomposedStrategy.OrdersKeepTime
decomposedStrategy.OrdersKeepTime = value

Die Zeit für die Speicherung von Bestellungen im Speicher.

PnLManager
public IPnLManager PnLManager { get; }
value = decomposedStrategy.PnLManager

PnL Manager.

Portfolio
public Portfolio Portfolio { get; set; }
value = decomposedStrategy.Portfolio
decomposedStrategy.Portfolio = value

Portfolio.

PortfolioLookup
public Subscription PortfolioLookup { get; }
value = decomposedStrategy.PortfolioLookup

Portfolio Lookup Abonnement.

Position
public decimal Position { get; set; }
value = decomposedStrategy.Position
decomposedStrategy.Position = value

Aktuelle Position (primäres Finanzinstrument).

Positions
public PositionPipeline Positions { get; }
value = decomposedStrategy.Positions

Handhabung von Positionsereignissen.

PositionsList
public IReadOnlyDictionary<ValueTuple<SecurityId, string>, decimal> PositionsList { get; }
value = decomposedStrategy.PositionsList

Alle verfolgten Positionen.

ProcessState
public ProcessStates ProcessState { get; }
value = decomposedStrategy.ProcessState

Aktueller Prozesszustand.

RiskManager
public IRiskManager RiskManager { get; set; }
value = decomposedStrategy.RiskManager
decomposedStrategy.RiskManager = value

Risikomanager.

Security
public Security Security { get; set; }
value = decomposedStrategy.Security
decomposedStrategy.Security = value

Finanzinstrument.

Slippage
public decimal? Slippage { get; }
value = decomposedStrategy.Slippage

Gesamtsumme des kumulierten Schlupfs.

StartedTime
public DateTime StartedTime { get; private set; }
value = decomposedStrategy.StartedTime
decomposedStrategy.StartedTime = value

Strategiestartzeit.

StatisticManager
public IStatisticManager StatisticManager { get; }
value = decomposedStrategy.StatisticManager

Statistikmanager.

Subscriptions
public SubscriptionRegistry Subscriptions { get; }
value = decomposedStrategy.Subscriptions

Subscription Management.

TotalWorkingTime
public TimeSpan TotalWorkingTime { get; private set; }
value = decomposedStrategy.TotalWorkingTime
decomposedStrategy.TotalWorkingTime = value

Gesamtarbeitszeit.

Trades
public TradePipeline Trades { get; }
value = decomposedStrategy.Trades

Handelsverarbeitung und PnL.

TradingMode
public StrategyTradingModes TradingMode { get; set; }
value = decomposedStrategy.TradingMode
decomposedStrategy.TradingMode = value

Handelsmodus.

UnsubscribeOnStop
public bool UnsubscribeOnStop { get; set; }
value = decomposedStrategy.UnsubscribeOnStop
decomposedStrategy.UnsubscribeOnStop = value

Abmelden von Marktdaten, wenn die Strategie aufhört.

Volume
public decimal Volume { get; set; }
value = decomposedStrategy.Volume
decomposedStrategy.Volume = value

Standard-Auftragsvolumen.

WaitAllTrades
public bool WaitAllTrades { get; set; }
value = decomposedStrategy.WaitAllTrades
decomposedStrategy.WaitAllTrades = value

Warten Sie auf alle Trades.

Methoden

BuyLimit
public Order BuyLimit(decimal price, decimal? volume)
result = decomposedStrategy.BuyLimit(price, volume)

Kaufen Sie zum Limitpreis.

BuyMarket
public Order BuyMarket(decimal? volume)
result = decomposedStrategy.BuyMarket(volume)

Kaufen Sie zum Marktpreis.

CanAttach
protected virtual bool CanAttach(Order order)
result = decomposedStrategy.CanAttach(order)

Ob der Auftrag durch diese Strategie angehängt (nachverfolgt) werden kann.

order
Befehl zur Überprüfung.

Rückgabe: wenn die Bestellung zu dieser Strategie gehört.

CancelActiveOrders
public void CancelActiveOrders()
decomposedStrategy.CancelActiveOrders()

Stornieren Sie alle aktiven Bestellungen.

CancelOrder
public void CancelOrder(Order order)
decomposedStrategy.CancelOrder(order)

Stornieren Sie eine Bestellung über connector.

CanTrade
protected virtual bool CanTrade(Security security, Portfolio portfolio, Sides side, decimal volume, string noTradeReason)
result = decomposedStrategy.CanTrade(security, portfolio, side, volume, noTradeReason)

Überprüfen Sie, ob Sie mit Bestellinformationen handeln können.

security
Finanzinstrument für den Handel.
portfolio
Portfolio für den Handel.
side
Ordnungsseite.
volume
Auftragsvolumen.
noTradeReason
Grund, warum der Handel nicht erlaubt ist.

Rückgabe: Wahr, wenn der Handel erlaubt ist.

ClosePosition
public Order ClosePosition()
result = decomposedStrategy.ClosePosition()

Stromposition schließen.

CreateOrder
public Order CreateOrder(Sides side, decimal price, decimal? volume)
result = decomposedStrategy.CreateOrder(side, price, volume)

Erstellen Sie ein initialisiertes Orderobjekt.

side
Ordnungsseite.
price
Preis 0 für Market Order.
volume
Volume. Wenn null, wird Volume verwendet.

Rückgabe: Bestellung.

EditOrder
public void EditOrder(Order order, Order changes)
decomposedStrategy.EditOrder(order, changes)

Bearbeiten Sie eine Bestellung über connector.

order
Originalbestellung.
changes
Ordnungsänderungen.
GetPositionValue
public decimal GetPositionValue(Security sec, Portfolio pf)
result = decomposedStrategy.GetPositionValue(sec, pf)

Holen Sie sich Positionswert für bestimmte Finanzinstrumente und Portfolios.

OnCurrentPriceUpdated
protected virtual void OnCurrentPriceUpdated(SecurityId secId, decimal price, DateTime serverTime, DateTime localTime)
decomposedStrategy.OnCurrentPriceUpdated(secId, price, serverTime, localTime)

Aufrufen, wenn der aktuelle Preis aus Marktdaten aktualisiert wird.

OnError
protected virtual void OnError(Exception error)
decomposedStrategy.OnError(error)

Verarbeitung von Fehlern, aufgetreten als Ergebnis der Strategieoperation.

error
Fehler.
OnNewMessage
public ValueTask OnNewMessage(Message msg, CancellationToken ct)
result = decomposedStrategy.OnNewMessage(msg, ct)

Behandeln Sie neue ausgehende Nachricht von connector.

OnNewMyTrade
protected virtual void OnNewMyTrade(MyTrade trade)
decomposedStrategy.OnNewMyTrade(trade)

Gerufen, wenn der neue Handel erhalten wurde.

trade
Neuhandel.
OnNewPosition
protected virtual void OnNewPosition(Position position)
decomposedStrategy.OnNewPosition(position)

Wird aufgerufen, wenn eine neue Position erscheint.

position
Neue Position.
OnOrderCancelFailReceived
public void OnOrderCancelFailReceived(Subscription sub, OrderFail fail)
decomposedStrategy.OnOrderCancelFailReceived(sub, fail)

Behandeln Sie die fehlgeschlagene Auftragsstornierung von connector.

OnOrderChanged
protected virtual void OnOrderChanged(Order order)
decomposedStrategy.OnOrderChanged(order)

Rufen Sie an, wenn sich der Ordnungszustand geändert hat.

order
Geänderte Reihenfolge.
OnOrderEditFailReceived
public void OnOrderEditFailReceived(Subscription sub, OrderFail fail)
decomposedStrategy.OnOrderEditFailReceived(sub, fail)

Behandeln Sie den Fehler bei der Auftragsbearbeitung von connector.

OnOrderReceived
public void OnOrderReceived(Subscription sub, Order order)
decomposedStrategy.OnOrderReceived(sub, order)

Behandeln Sie die Bestellung von connector.

OnOrderRegistered
protected virtual void OnOrderRegistered(Order order)
decomposedStrategy.OnOrderRegistered(order)

Bei der Bestellung aufgerufen (Übergang von ausstehend zu Aktiv / Fertig).

order
Registrierte Bestellung.
OnOrderRegisterFailed
protected virtual void OnOrderRegisterFailed(OrderFail fail)
decomposedStrategy.OnOrderRegisterFailed(fail)

Aufruf, wenn die Registrierung fehlschlägt.

fail
Bestellfehlerinfo.
OnOrderRegisterFailReceived
public void OnOrderRegisterFailReceived(Subscription sub, OrderFail fail)
decomposedStrategy.OnOrderRegisterFailReceived(sub, fail)

Behandeln Sie die fehlgeschlagene Bestellregistrierung von connector.

OnPositionChanged
protected virtual void OnPositionChanged(Position position)
decomposedStrategy.OnPositionChanged(position)

Wird aufgerufen, wenn sich die Position ändert.

position
Position geändert.
OnPositionReceived
public void OnPositionReceived(Subscription sub, Position pos)
decomposedStrategy.OnPositionReceived(sub, pos)

Griff Position erhalten von connector.

OnStateChanged
protected virtual void OnStateChanged(ProcessStates state)
decomposedStrategy.OnStateChanged(state)

Wird aufgerufen, wenn sich der Prozesszustand ändert.

state
Neuer Staat.
OnTradeReceived
public void OnTradeReceived(Subscription sub, MyTrade trade)
decomposedStrategy.OnTradeReceived(sub, trade)

Handle Handel erhalten von connector.

RegisterOrder
public void RegisterOrder(Order order)
decomposedStrategy.RegisterOrder(order)

Registrieren Sie eine Bestellung über connector.

ReRegisterOrder
public void ReRegisterOrder(Order oldOrder, Order newOrder)
decomposedStrategy.ReRegisterOrder(oldOrder, newOrder)

Registrieren Sie sich erneut (stornieren + registrieren Sie neu) eine Bestellung über connector.

oldOrder
Anweisung zur Stornierung.
newOrder
Neue Registrierungsanordnung.
Reset
public void Reset()
decomposedStrategy.Reset()

Setzen Sie alle Status (Orders, Trades, Positionen, PnL, Abonnements) zurück.

SellLimit
public Order SellLimit(decimal price, decimal? volume)
result = decomposedStrategy.SellLimit(price, volume)

Verkaufen zum Limitpreis.

SellMarket
public Order SellMarket(decimal? volume)
result = decomposedStrategy.SellMarket(volume)

Verkaufen zum Marktpreis.

Start
public void Start()
decomposedStrategy.Start()

Starten Sie die Strategie.

StartAsync
public ValueTask StartAsync(CancellationToken cancellationToken)
result = decomposedStrategy.StartAsync(cancellationToken)

Starten Sie die Strategie.

StartProtection
public void StartProtection(Unit takeProfit, Unit stopLoss, bool isStopTrailing, TimeSpan? takeTimeout, TimeSpan? stopTimeout, bool useMarketOrders, bool isLocalStop)
decomposedStrategy.StartProtection(takeProfit, stopLoss, isStopTrailing, takeTimeout, stopTimeout, useMarketOrders, isLocalStop)

Schutz der Startposition.

takeProfit
Nehmen Sie Offset.
stopLoss
Stop-Offset.
isStopTrailing
Ob man eine Trailing-Technik verwendet.
takeTimeout
Frist: Wenn der Schutz bis zu diesem Zeitpunkt nicht funktioniert hat, wird die Position auf dem Markt geschlossen.
stopTimeout
Frist: Wenn der Schutz bis zu diesem Zeitpunkt nicht funktioniert hat, wird die Position auf dem Markt geschlossen.
useMarketOrders
Ob Marktaufträge zu verwenden.
isLocalStop
Erzwingen Sie die lokale Stoppverarbeitung unabhängig von den Adapterfunktionen.
Stop
public void Stop()
decomposedStrategy.Stop()

Stoppt die Strategie.

StopAsync
public ValueTask StopAsync(CancellationToken cancellationToken)
result = decomposedStrategy.StopAsync(cancellationToken)

Stoppt die Strategie.

StopAsync
public ValueTask StopAsync(Exception error, CancellationToken cancellationToken)
result = decomposedStrategy.StopAsync(error, cancellationToken)

Stoppen Sie die Strategie mit Fehler.

error
Der Fehler, der den Stopp verursacht hat.
cancellationToken
Löschungszeichen.

Ereignisse

BoardReceived
public event Action<Subscription, ExchangeBoard> BoardReceived
decomposedStrategy.BoardReceived += handler

Board Value erhalten.

CandleReceived
public event Action<Subscription, ICandleMessage> CandleReceived
decomposedStrategy.CandleReceived += handler

Kerzenwert erhalten.

CommissionChanged
public event Action CommissionChanged
decomposedStrategy.CommissionChanged += handler

Kommission änderte das Ereignis.

ConnectorChanged
public event Action ConnectorChanged
decomposedStrategy.ConnectorChanged += handler

Connector geändertes Ereignis.

DataTypeReceived
public event Action<Subscription, DataType> DataTypeReceived
decomposedStrategy.DataTypeReceived += handler

Empfangener Wert des Datentyps.

Error
public event Action<Exception> Error
decomposedStrategy.Error += handler

Fehlerereignis.

IsOnlineChanged
public event Action<DecomposedStrategy> IsOnlineChanged
decomposedStrategy.IsOnlineChanged += handler

Online-Zustand geändert.

LatencyChanged
public event Action LatencyChanged
decomposedStrategy.LatencyChanged += handler

Latenz änderte das Ereignis.

Level1Received
public event Action<Subscription, Level1ChangeMessage> Level1Received
decomposedStrategy.Level1Received += handler

Level1 Wert erhalten.

NewsReceived
public event Action<Subscription, News> NewsReceived
decomposedStrategy.NewsReceived += handler

Nachrichten erhalten.

OrderBookReceived
public event Action<Subscription, IOrderBookMessage> OrderBookReceived
decomposedStrategy.OrderBookReceived += handler

Auftragsbuchwert erhalten.

OrderCancelFailed
public event Action<OrderFail> OrderCancelFailed
decomposedStrategy.OrderCancelFailed += handler

Auftragsstornierung fehlgeschlagen.

OrderCancelFailReceived
public event Action<Subscription, OrderFail> OrderCancelFailReceived
decomposedStrategy.OrderCancelFailReceived += handler

Order Cancellation Failure

OrderCanceling
public event Action<Order> OrderCanceling
decomposedStrategy.OrderCanceling += handler

Die Bestellung steht kurz vor der Stornierung.

OrderEdited
public event Action<long, Order> OrderEdited
decomposedStrategy.OrderEdited += handler

Auftrag bearbeitet.

OrderEditFailed
public event Action<long, OrderFail> OrderEditFailed
decomposedStrategy.OrderEditFailed += handler

Order Edit ist fehlgeschlagen.

OrderEditFailReceived
public event Action<Subscription, OrderFail> OrderEditFailReceived
decomposedStrategy.OrderEditFailReceived += handler

Order Edit Failure.

OrderLogReceived
public event Action<Subscription, IOrderLogMessage> OrderLogReceived
decomposedStrategy.OrderLogReceived += handler

Auftragsprotokollwert erhalten.

OrderReceived
public event Action<Subscription, Order> OrderReceived
decomposedStrategy.OrderReceived += handler

Auftragswert erhalten.

OrderRegisterFailed
public event Action<OrderFail> OrderRegisterFailed
decomposedStrategy.OrderRegisterFailed += handler

Auftragsregistrierung fehlgeschlagen.

OrderRegisterFailReceived
public event Action<Subscription, OrderFail> OrderRegisterFailReceived
decomposedStrategy.OrderRegisterFailReceived += handler

Auftragsregistrierung fehlgeschlagen.

OrderRegistering
public event Action<Order> OrderRegistering
decomposedStrategy.OrderRegistering += handler

Die Bestellung steht kurz vor der Registrierung.

OrderReRegistering
public event Action<Order, Order> OrderReRegistering
decomposedStrategy.OrderReRegistering += handler

Die Ordnung wird bald wieder registriert.

OwnTradeReceived
public event Action<Subscription, MyTrade> OwnTradeReceived
decomposedStrategy.OwnTradeReceived += handler

Eigener Handelswert erhalten.

ParametersChanged
public event Action ParametersChanged
decomposedStrategy.ParametersChanged += handler

Strategieparameter veränderten das Ereignis.

PnLChanged
public event Action PnLChanged
decomposedStrategy.PnLChanged += handler

PnL geändertes Ereignis.

PnLReceived
public event Action<Subscription> PnLReceived
decomposedStrategy.PnLReceived += handler

PnL erhielt eine Veranstaltung.

PnLReceived2
public event Action<Subscription, Portfolio, DateTime, decimal, decimal?, decimal?> PnLReceived2
decomposedStrategy.PnLReceived2 += handler

PnL erhielt eine Veranstaltung.

PortfolioReceived
public event Action<Subscription, Portfolio> PortfolioReceived
decomposedStrategy.PortfolioReceived += handler

Portfoliowert erhalten.

PositionChanged
public event Action PositionChanged
decomposedStrategy.PositionChanged += handler

Position geändert.

PositionReceived
public event Action<Subscription, Position> PositionReceived
decomposedStrategy.PositionReceived += handler

Positionswert erhalten.

PropertyChanged
public event PropertyChangedEventHandler PropertyChanged
decomposedStrategy.PropertyChanged += handler

Der Diagrammelementeigenschaftenwert Änderungsereignis.

Reseted
public event Action Reseted
decomposedStrategy.Reseted += handler

Strategie-Reset-Ereignis.

SecurityReceived
public event Action<Subscription, Security> SecurityReceived
decomposedStrategy.SecurityReceived += handler

erhaltener Wert des Finanzinstruments.

SlippageChanged
public event Action SlippageChanged
decomposedStrategy.SlippageChanged += handler

Slippage verändertes Ereignis.

SubscriptionFailed
public event Action<Subscription, Exception, bool> SubscriptionFailed
decomposedStrategy.SubscriptionFailed += handler

Abonnement fehlgeschlagen.

SubscriptionOnline
public event Action<Subscription> SubscriptionOnline
decomposedStrategy.SubscriptionOnline += handler

Das Abonnement ist online.

SubscriptionReceived
public event Action<Subscription, object> SubscriptionReceived
decomposedStrategy.SubscriptionReceived += handler

Erhaltener Zeichnungswert.

SubscriptionStarted
public event Action<Subscription> SubscriptionStarted
decomposedStrategy.SubscriptionStarted += handler

Das Abonnement wird gestartet.

SubscriptionStopped
public event Action<Subscription, Exception> SubscriptionStopped
decomposedStrategy.SubscriptionStopped += handler

Das Abonnement wird gestoppt.

TickTradeReceived
public event Action<Subscription, ITickTradeMessage> TickTradeReceived
decomposedStrategy.TickTradeReceived += handler

Tick Handelswert erhalten.