Strategy
Die Basisklasse für alle Handelsstrategien.
Erbt von: BaseLogReceiver
Implementiert: INotifyPropertyChangedEx, INotifyPropertyChanged, IMarketRuleContainer, ILogReceiver, ILogSource, IDisposable, ICloneable<Strategy>, ICloneable, IMarketDataProvider, ISubscriptionProvider, ISecurityProvider, ISecurityMessageProvider, ITransactionProvider, IScheduledTask, ICustomTypeDescriptor, ITimeProvider, IPortfolioProvider, IPositionProvider, IReportSource
Konstruktoren
Eigenschaften
public TimeSpan AggregationInterval { get; set; }
value = strategy.AggregationInterval
strategy.AggregationInterval = value
Zeitintervall für die Aggregation. Aufträge/Trades innerhalb desselben Intervalls werden zusammengefasst. Standardmäßig ist 1 Stunde. Setzen Sie auf Null, um die zeitbasierte Gruppierung zu deaktivieren.
public bool CancelOrdersWhenStopping { get; set; }
value = strategy.CancelOrdersWhenStopping
strategy.CancelOrdersWhenStopping = value
Aktive Bestellungen anhalten stornieren. Ist standardmäßig eingeschaltet.
public INotifyList<Strategy> ChildStrategies { get; }
value = strategy.ChildStrategies
Subsidiäre Handelsstrategien.
public StrategyCommentModes CommentMode { get; set; }
value = strategy.CommentMode
strategy.CommentMode = value
Setzen Sie Kommentar nach Name oder Id.
public decimal? Commission { get; private set; }
value = strategy.Commission
strategy.Commission = value
Gesamtprovision.
public virtual Connector Connector { get; set; }
value = strategy.Connector
strategy.Connector = value
Verbindung zum Handelssystem.
public override DateTime CurrentTime { get; }
value = strategy.CurrentTime
Aktuelle UTC-Zeit.
public bool DisposeOnStop { get; set; }
value = strategy.DisposeOnStop
strategy.DisposeOnStop = value
Automatisches Löschen von Ressourcen, die von der Strategie verwendet werden, wenn sie aufhört (Zustand ProcessState wird gleich Stopped).
public SettingsStorage Environment { get; }
value = strategy.Environment
Parameter für die Strategieumgebung.
public LogLevels ErrorState { get; private set; }
value = strategy.ErrorState
strategy.ErrorState = value
Der Zustand eines Fehlers.
public static bool HideSecurityAndPortfolioParameters { get; set; }
value = Strategy.HideSecurityAndPortfolioParameters
Strategy.HideSecurityAndPortfolioParameters = value
Machen Sie Finanzinstrument und Portfolio als nicht durchsuchbar.
protected virtual TimeSpan? HistoryCalculated { get; }
value = strategy.HistoryCalculated
Berechnet aus der Codeversion von HistorySize.
public TimeSpan? HistorySize { get; set; }
value = strategy.HistorySize
strategy.HistorySize = value
Geschichte, um die Strategie auf Live-Handel zu initialisieren.
public INotifyList<IIndicator> Indicators { get; }
value = strategy.Indicators
Alle Indikatoren, die in der Strategie verwendet werden. Verwendet in der Standardimplementierung von IsFormed.
public Level1Fields? IndicatorSource { get; set; }
value = strategy.IndicatorSource
strategy.IndicatorSource = value
Standardquelle für Indikatoren, wenn Quelle nicht festgelegt ist.
public bool IsBacktesting { get; }
value = strategy.IsBacktesting
Bestimmt Connector ist HistoryEmulationConnector.
public virtual bool IsFormed { get; }
value = strategy.IsFormed
Strategie vollständig gebildet.
public bool IsOnline { get; private set; }
value = strategy.IsOnline
strategy.IsOnline = value
True bedeutet, dass die Strategie gestartet wird und alle Abonnements im Online-Zustand sind.
public bool IsRulesSuspended { get; }
value = strategy.IsRulesSuspended
Is rules execution suspended.
public bool KeepStatistics { get; set; }
value = strategy.KeepStatistics
strategy.KeepStatistics = value
Halten Sie Handelsstatistiken (Orders, Trades, Gewinn usw.) nach dem Neustart.
public Exception LastError { get; private set; }
value = strategy.LastError
strategy.LastError = value
Der letzte Fehler, der dazu führte, dass die Strategie aufhörte.
public TimeSpan? Latency { get; private set; }
value = strategy.Latency
strategy.Latency = value
Gesamtlatenz.
public override LogLevels LogLevel { get; set; }
value = strategy.LogLevel
strategy.LogLevel = value
Die Ebene, um diese Regelprotokollierung durchzuführen.
public int MaxOrdersBeforeAggregation { get; set; }
value = strategy.MaxOrdersBeforeAggregation
strategy.MaxOrdersBeforeAggregation = value
Maximale Anzahl von Aufträgen vor dem Auslösen der automatischen Aggregation; Standardwert: 10000; Setz auf 0, um die automatische Aggregation zu deaktivieren.
public int MaxTradesBeforeAggregation { get; set; }
value = strategy.MaxTradesBeforeAggregation
strategy.MaxTradesBeforeAggregation = value
Maximale Anzahl von Trades vor dem Auslösen der automatischen Aggregation. Standardmäßig 10000.
public IEnumerable<MyTrade> MyTrades { get; }
value = strategy.MyTrades
Trades, die während der Strategieoperation abgestimmt wurden.
public override string Name { get; set; }
value = strategy.Name
strategy.Name = value
Strategiename.
public StrategyNameGenerator NameGenerator { get; }
value = strategy.NameGenerator
Der Generator des Strategienamens.
public virtual IEnumerable<IOrderBookSource> OrderBookSources { get; }
value = strategy.OrderBookSources
Alle möglichen IOrderBookMessage Quellen, die über OrderBookDrawing empfangen werden können.
public Subscription OrderLookup { get; }
value = strategy.OrderLookup
Holen Sie sich ein globales Abonnement auf Order Lookup.
public IEnumerable<Order> Orders { get; }
value = strategy.Orders
Aufträge, die im Strategierahmen registriert sind.
public TimeSpan OrdersKeepTime { get; set; }
value = strategy.OrdersKeepTime
strategy.OrdersKeepTime = value
Die Zeit für die Speicherung von Bestellungen im Speicher. Standardmäßig entspricht sie 2 Tagen. Wenn der Wert in Null gesetzt ist, werden Bestellungen nicht gelöscht.
public StrategyParameterDictionary Parameters { get; }
value = strategy.Parameters
Strategieparameter.
public decimal PnL { get; }
value = strategy.PnL
Der Gesamtwert des Gewinn-Verlust-Verhältnisses ohne Rechnungsprüfkommission Kommission.
public IPnLManager PnLManager { get; set; }
value = strategy.PnLManager
strategy.PnLManager = value
Der Profit-Loss-Manager.
public Portfolio Portfolio { get; set; }
value = strategy.Portfolio
strategy.Portfolio = value
Portfolio.
public Subscription PortfolioLookup { get; }
value = strategy.PortfolioLookup
Holen Sie sich ein globales Abonnement für Portfolio Lookup.
public IPortfolioProvider PortfolioProvider { get; set; }
value = strategy.PortfolioProvider
strategy.PortfolioProvider = value
IPortfolioProvider
public decimal Position { get; set; }
value = strategy.Position
strategy.Position = value
Der Positions-Aggregatwert.
public IEnumerable<Position> Positions { get; }
value = strategy.Positions
Die Liste der Positionen.
public virtual ProcessStates ProcessState { get; private set; }
value = strategy.ProcessState
strategy.ProcessState = value
Der Betriebszustand.
public ReportSource ReportSource { get; }
value = strategy.ReportSource
Datenquelle mit Aggregationsunterstützung melden.
public decimal RiskFreeRate { get; set; }
value = strategy.RiskFreeRate
strategy.RiskFreeRate = value
Jährlicher risikofreier Zinssatz (e.g., 0,03 = 3%).
public IRiskManager RiskManager { get; set; }
value = strategy.RiskManager
strategy.RiskManager = value
Der Risikokontrollmanager.
public IEnumerable<IRiskRule> RiskRules { get; set; }
value = strategy.RiskRules
strategy.RiskRules = value
Die Risikoregeln.
public IMarketRuleList Rules { get; }
value = strategy.Rules
Die Liste der Provisionsberechnungsregeln.
public Security Security { get; set; }
value = strategy.Security
strategy.Security = value
Finanzinstrument.
public decimal? Slippage { get; private set; }
value = strategy.Slippage
strategy.Slippage = value
Gesamtabrutschen.
public DateTime StartedTime { get; private set; }
value = strategy.StartedTime
strategy.StartedTime = value
Strategiestartzeit.
public IStatisticManager StatisticManager { get; protected set; }
value = strategy.StatisticManager
strategy.StatisticManager = value
Der Statistikmanager.
public Func<Sides, decimal, IPositionModifyAlgo> TargetAlgoFactory { get; set; }
value = strategy.TargetAlgoFactory
strategy.TargetAlgoFactory = value
Fabrik zum Erstellen von Positionsänderungsalgorithmen für TargetPositionManager. Standardmäßig erstellt MarketOrderAlgo.
public PositionTargetManager TargetPositionManager { get; }
value = strategy.TargetPositionManager
Zielpositionsmanager.
public TimeSpan TotalWorkingTime { get; private set; }
value = strategy.TotalWorkingTime
strategy.TotalWorkingTime = value
Die Gesamtzeit der Strategieoperation weniger Zeiträume, wenn die Strategie gestoppt wurde.
public StrategyTradingModes TradingMode { get; set; }
value = strategy.TradingMode
strategy.TradingMode = value
Handel erlauben.
public TimeSpan UnrealizedPnLInterval { get; set; }
value = strategy.UnrealizedPnLInterval
strategy.UnrealizedPnLInterval = value
Der Zeitabstand für die nicht realisierte Gewinnrekalkulation. Der Standardwert ist 1 Minute.
public bool UnsubscribeOnStop { get; set; }
value = strategy.UnsubscribeOnStop
strategy.UnsubscribeOnStop = value
Abonnieren Sie alle aktiven Abonnements, während die Strategie zum Stoppen wird.
public virtual decimal Volume { get; set; }
value = strategy.Volume
strategy.Volume = value
Betriebsvolumen.
public bool WaitAllTrades { get; set; }
value = strategy.WaitAllTrades
strategy.WaitAllTrades = value
Stoppen Sie die Strategie erst, nachdem Sie alle Trades durch registrierte Orders erhalten haben.
public bool WaitRulesOnStop { get; set; }
value = strategy.WaitRulesOnStop
strategy.WaitRulesOnStop = value
Warten Sie die Regeln, bevor die Strategie in den Zustand "Stopped" übergeht.
public WorkingTime WorkingTime { get; set; }
value = strategy.WorkingTime
strategy.WorkingTime = value
Die Zeitgrenze, innerhalb derer Kerzen für Serien übersetzt werden sollen.
Methoden
protected void Alert(AlertNotifications type, string message)
strategy.Alert(type, message)
Senden Sie eine Benachrichtigung mit dem Strategienamen als Beschriftung.
- type
- Art der Ausschreibung.
- message
- Warnhinweis.
protected void Alert(AlertNotifications type, string caption, string message)
strategy.Alert(type, caption, message)
Warnmeldung senden.
- type
- Art der Ausschreibung.
- caption
- Signalkopf.
- message
- Warnhinweis.
protected void AlertLog(string message)
strategy.AlertLog(message)
Log-Alarmmeldung senden.
- message
- Warnhinweis.
protected void AlertPopup(string message)
strategy.AlertPopup(message)
Senden Sie Popup-Alarmmeldung.
- message
- Warnhinweis.
protected void AlertSound(string message)
strategy.AlertSound(message)
Versenden Sie eine Alarmmeldung.
- message
- Warnhinweis.
public virtual void ApplyCommand(CommandMessage cmdMsg)
strategy.ApplyCommand(cmdMsg)
Ankommendes Kommando anwenden.
- cmdMsg
- Die Nachricht enthält Informationen über den Befehl zum Ändern des Zustands.
public Order BuyLimit(decimal price, decimal? volume, Security security)
result = strategy.BuyLimit(price, volume, security)
Erstellen des initialisierten Orderobjekts zum Kaufen.
- price
- Preis.
- volume
- Wenn der Wert übergeben wird, wird der Volumenwert verwendet.
- security
- Das Finanzinstrument: Wenn der Wert übergeben wird, wird der Wert des Finanzinstruments verwendet.
Rückgabe: Das initialisierte Orderobjekt.
public Order BuyMarket(decimal? volume, Security security)
result = strategy.BuyMarket(volume, security)
Erstellen Sie ein initialisiertes Objekt der Kauforder zum Marktpreis.
- volume
- Wenn der Wert übergeben wird, wird der Volumenwert verwendet.
- security
- Das Finanzinstrument: Wenn der Wert übergeben wird, wird der Wert des Finanzinstruments verwendet.
Rückgabe: Das initialisierte Orderobjekt.
protected virtual bool CanAttach(Order order)
result = strategy.CanAttach(order)
Bestimmt, dass die angegebene Reihenfolge der Strategie gehören kann.
- order
- Bestellung.
Rückgabe: Prüfergebnis.
public void CancelActiveOrders(bool? isStopOrder, Portfolio portfolio, Sides? direction, ExchangeBoard board, Security security, SecurityTypes? securityType, long? transactionId)
strategy.CancelActiveOrders(isStopOrder, portfolio, direction, board, security, securityType, transactionId)
Um alle aktiven Bestellungen zu stornieren (anhalten und regelmäßig).
- isStopOrder
- , wenn nur eine Stop-Orders stornieren, - wenn reguläre Bestellungen, - beides.
- portfolio
- Portfolio. Wenn der Wert gleich , dann stimmt das Portfolio nicht mit dem Orders Cancelling Filter überein.
- direction
- Orderseite. Wenn der Wert , die Richtung nicht verwendet.
- board
- Trading Board. Wenn der Wert gleich , dann stimmt das Board nicht mit dem Orders Cancelling Filter überein.
- security
- Instrument. Wenn der Wert gleich ist, dann stimmt das Instrument nicht mit dem Orders Cancellation Filter überein.
- securityType
- Art des Finanzinstruments: Wenn der Wert , wird der Typ nicht verwendet.
- transactionId
- Transaktions-ID der Auftragsstornierung.
public void CancelOrder(Order order)
strategy.CancelOrder(order)
Stornieren Sie die Bestellung.
- order
- Die Bestellung, die storniert werden sollte.
public void CancelTargetPosition(Security security, Portfolio portfolio)
strategy.CancelTargetPosition(security, portfolio)
Zielposition für ein bestimmtes Finanzinstrument und Portfolio stornieren.
- security
- Finanzinstrument.
- portfolio
- Portfolio.
public void CancelTargetPosition()
strategy.CancelTargetPosition()
Stornieren Sie die Zielposition für das Finanzinstrument und das Portfolio der Strategie.
protected virtual bool CanTrade(Security security, Portfolio portfolio, Sides side, decimal volume, string noTradeReason)
result = strategy.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.
public virtual Strategy Clone()
result = strategy.Clone()
Erstellt eine tiefe Kopie eines DataSeries
public Order ClosePosition(Security security, Portfolio portfolio)
result = strategy.ClosePosition(security, portfolio)
Um offene Position nach Markt zu schließen (um die Reihenfolge des Typs Market zu registrieren).
- security
- Finanzinstrument: Wenn nicht übergeben, wird der Wert von Finanzinstrument erhalten.
- portfolio
- Portfolio. Wenn nicht übergeben wird der Wert aus Portfolio erhalten werden.
Rückgabe: Das initialisierte Orderobjekt.
protected virtual void CopyTo(Strategy copy)
strategy.CopyTo(copy)
Kopieren Sie Einstellungen in .
- copy
- Strategie
protected IChartArea CreateChartArea()
result = strategy.CreateChartArea()
Erstellen Sie Chart-Bereich.
Rückgabe: IChartArea
protected virtual Strategy CreateClone()
result = strategy.CreateClone()
Erstellen Sie ein Klonobjekt (nicht initialisiert).
Rückgabe: Strategie
public Order CreateOrder(Sides side, decimal price, decimal? volume)
result = strategy.CreateOrder(side, price, volume)
Um das initialisierte Orderobjekt zu erstellen.
- side
- Ordnungsseite.
- price
- Preis: Wenn der Wert übergeben wird, wird die Bestellung zum Marktpreis registriert.
- volume
- Wenn der Wert übergeben wird, wird der Volumenwert verwendet.
Rückgabe: Das initialisierte Orderobjekt.
protected ITimerHandler CreateTimer(TimeSpan interval, Action callback)
result = strategy.CreateTimer(interval, callback)
Erstellen Sie einen Timer, der in bestimmten Intervallen einen Callback ausführt.
- interval
- Zeitintervall.
- callback
- Callback zur Ausführung.
Rückgabe: ITimerHandler
protected override void DisposeManaged()
strategy.DisposeManaged()
Ressourcen freigeben.
protected IChartCandleElement DrawCandles(IChartArea area, Subscription subscription)
result = strategy.DrawCandles(area, subscription)
Zeichne Kerzen auf Chart.
- area
- IChartArea
- subscription
- Zeichnung
Rückgabe: IChartCandleElement
protected IChartCandleElement DrawCandles<T>(IChartArea area, ISubscriptionHandler<T> subscription)
result = strategy.DrawCandles(area, subscription)
Zeichne Kerzen auf Chart.
- area
- IChartArea
- subscription
- SubscriptionHandler
Rückgabe: IChartCandleElement
protected IChartIndicatorElement DrawIndicator(IChartArea area, IIndicator indicator, Color? color, Color? additionalColor)
result = strategy.DrawIndicator(area, indicator, color, additionalColor)
Zeichnen Sie Indikator auf Chart.
- area
- IChartArea
- indicator
- IIndikator
- color
- Farbe
- additionalColor
- AdditionalColor
Rückgabe: IChartIndicatorElement
public void DrawOrderBook(Subscription subscription, IOrderBookSource source, IOrderBookMessage book)
strategy.DrawOrderBook(subscription, source, book)
Zeichnen IOrderBookMessage.
- subscription
- Zeichnung
- source
- IOrderBookSource
- book
- IOrderBookMessage
public void DrawOrderBookOrder(Subscription subscription, IOrderBookSource source, Order order)
strategy.DrawOrderBookOrder(subscription, source, order)
Auftragsbuchauftrag auszeichnen.
- subscription
- Zeichnung
- source
- IOrderBookSource
- order
- Bestellung.
public void DrawOrderBookOrderFail(Subscription subscription, IOrderBookSource source, OrderFail fail)
strategy.DrawOrderBookOrderFail(subscription, source, fail)
Orderbuch Order fehlschlagen.
- subscription
- Zeichnung
- source
- IOrderBookSource
- fail
- Ordnung fehlgeschlagen.
protected IChartOrderElement DrawOrders(IChartArea area)
result = strategy.DrawOrders(area)
Zeichne Aufträge auf Chart.
- area
- IChartArea
Rückgabe: IChartOrderElement
protected IChartTradeElement DrawOwnTrades(IChartArea area)
result = strategy.DrawOwnTrades(area)
Zeichnen Sie Trades auf Chart.
- area
- IChartArea
Rückgabe: IChartTradeElement
public void EditOrder(Order order, Order changes)
strategy.EditOrder(order, changes)
Bearbeiten Sie die Bestellung.
- order
- Bestellung.
- changes
- Ordnungsänderungen.
private void EnsureOrderMetadata(Order order, DateTime fallbackTime)
strategy.EnsureOrderMetadata(order, fallbackTime)
Stellt sicher, dass die Reihenfolge Metadaten hat, die von Strategieoberflächen benötigt werden.
- order
- Bestellung.
- fallbackTime
- Fallbackzeit.
public IAlertNotificationService GetAlertService()
result = strategy.GetAlertService()
Um die IAlertNotificationService mit der übergebenen Strategie verbunden zu bekommen.
Rückgabe: Warnmeldungsdienst.
public IChart GetChart()
result = strategy.GetChart()
Um das IChart mit der verabschiedeten Strategie in Verbindung zu bringen.
Rückgabe: Karte.
public IOptionDesk GetOptionDesk()
result = strategy.GetOptionDesk()
Um das IOptionDesk zu erhalten.
Rückgabe: IOptionDesk.
public IOptionPositionChart GetOptionPositionChart()
result = strategy.GetOptionPositionChart()
Um die IOptionPositionChart mit der übergebenen Strategie verbunden zu bekommen.
Rückgabe: Karte.
public virtual IStrategyParam[] GetParameters()
result = strategy.GetParameters()
Parameter abrufen.
Rückgabe: Parameter.
public Portfolio GetPortfolio()
result = strategy.GetPortfolio()
Holen Sie sich Portfolio oder werfen Sie InvalidOperationException, wenn nicht vorhanden.
Rückgabe: Portfolio
public decimal? GetPositionValue(Security security, Portfolio portfolio)
result = strategy.GetPositionValue(security, portfolio)
Positionieren.
- security
- Finanzinstrument.
- portfolio
- Portfolio.
Rückgabe: Position.
public Security GetSecurity()
result = strategy.GetSecurity()
Holen Sie sich ein Finanzinstrument oder werfen Sie InvalidOperationException, wenn nicht vorhanden.
Rückgabe: Finanzinstrument
public T GetSecurityValue<T>(Level1Fields field)
result = strategy.GetSecurityValue(field)
Um Marktdatenwert für das Strategieinstrument zu erhalten.
- field
- Feld Marktdaten.
Rückgabe: Wenn keine Daten vorliegen, wird der Feldwert zurückgegeben.
protected TValue GetStatValue<TParam, TValue>(TValue fallback)
result = strategy.GetStatValue(fallback)
Holen Sie sich den Wert eines statistischen Parameters nach seinem Typ.
- fallback
- Fallback-Wert, wenn der Parameter nicht gefunden wird.
Rückgabe: Der Parameterwert oder.
public decimal? GetTargetPosition(Security security, Portfolio portfolio)
result = strategy.GetTargetPosition(security, portfolio)
Erhalten Sie Zielposition für bestimmte Finanzinstrumente und Portfolios.
- security
- Finanzinstrument.
- portfolio
- Portfolio.
Rückgabe: Zielposition oder Null, wenn nicht gesetzt.
public decimal? GetTargetPosition()
result = strategy.GetTargetPosition()
Erhalten Sie eine Zielposition für das Finanzinstrument und Portfolio der Strategie.
Rückgabe: Zielposition oder Null, wenn nicht gesetzt.
public virtual IEnumerable<Portfolio> GetWorkingPortfolios()
result = strategy.GetWorkingPortfolios()
Holen Sie sich alle Portfolios, die für die Strategie erforderlich sind.
Rückgabe: Portfolios.
public virtual IEnumerable<ValueTuple<Security, DataType>> GetWorkingSecurities()
result = strategy.GetWorkingSecurities()
Holen Sie sich alle für die Strategie erforderlichen Finanzinstrumente.
Rückgabe: Finanzinstrumente.
public bool IsFormedAndOnline()
result = strategy.IsFormedAndOnline()
IsFormed und IsOnline.
Rückgabe: Prüfergebnis.
public bool IsFormedAndOnlineAndAllowTrading(StrategyTradingModes required)
result = strategy.IsFormedAndOnlineAndAllowTrading(required)
IsFormedAndOnline und TradingMode.
- required
- Erforderliche Maßnahmen.
Rückgabe: Prüfergebnis.
public bool? IsOrderEditable(Order order)
result = strategy.IsOrderEditable(order)
Bestimmt, dass die angegebene Reihenfolge von Order bearbeitet werden kann.
- order
- Bestellung.
Rückgabe: wenn die Bestellung editierbar ist, die Bestellung nicht geändert werden kann, bedeutet keine Informationen.
public bool? IsOrderReplaceable(Order order)
result = strategy.IsOrderReplaceable(order)
Bestimmt, dass die angegebene Reihenfolge durch die Bestellung ersetzt werden kann.
- order
- Bestellung.
Rückgabe: wenn die Bestellung austauschbar ist, Bestellung kann nicht ersetzt werden, bedeutet keine Informationen.
public override void Load(SettingsStorage storage)
strategy.Load(storage)
Lasteinstellungen.
- storage
- Einstellungen Lagerung.
public ValueTask<Security> LookupByIdAsync(SecurityId id, CancellationToken cancellationToken)
result = strategy.LookupByIdAsync(id, cancellationToken)
Um das Instrument durch den Identifikator zu erhalten.
- id
- Kennung des Finanzinstruments.
- cancellationToken
- CancellationToken
Rückgabe: Wenn es kein Instrument nach vorgegebenen Kriterien gibt, wird es zurückgegeben.
protected virtual void OnError(Strategy strategy, Exception error)
strategy.OnError(strategy, error)
Verarbeitung von Fehlern, aufgetreten als Ergebnis der Strategieoperation.
- strategy
- Strategie.
- error
- Fehler.
protected virtual void OnOrderReceived(Order order)
strategy.OnOrderReceived(order)
Bestellung eingegangen.
- order
- Bestellung
protected virtual void OnOrderRegistered(Order order)
strategy.OnOrderRegistered(order)
Um das Ereignis OrderRegistered aufzurufen.
- order
- Bestellung.
protected virtual void OnOrderRegisterFailed(OrderFail fail, bool calcRisk)
strategy.OnOrderRegisterFailed(fail, calcRisk)
Die Methode, aufgerufen bei Strategie-Order-Registrierungsfehler.
- fail
- Fehlerregistrierungsreihenfolge.
- calcRisk
- Rufen Sie den Risikomanager auf.
protected virtual void OnOrderRegistering(Order order)
strategy.OnOrderRegistering(order)
Um das Ereignis OrderRegistering aufzurufen.
- order
- Bestellung.
protected virtual void OnOrderReRegistering(Order oldOrder, Order newOrder)
strategy.OnOrderReRegistering(oldOrder, newOrder)
Um das Ereignis OrderReRegistering aufzurufen.
- oldOrder
- Löschung des Auftrags.
- newOrder
- Neue Registrierungsanordnung.
protected virtual void OnOwnTradeReceived(MyTrade trade)
strategy.OnOwnTradeReceived(trade)
Eigenhandel erhalten.
- trade
- MyTrade
protected virtual void OnPositionReceived(Position position)
strategy.OnPositionReceived(position)
Position erhalten.
- position
- Position
protected virtual void OnReseted()
strategy.OnReseted()
Es wird von der Reset-Methode aufgerufen.
protected virtual void OnStarted(DateTimeOffset time)
strategy.OnStarted(time)
Die Methode wird aufgerufen, wenn die Startmethode aufgerufen wurde und der Zustand ProcessState den Startwert angenommen hat.
protected virtual void OnStarted()
strategy.OnStarted()
Die Methode wird aufgerufen, wenn die Startmethode aufgerufen wurde und der Zustand ProcessState den Startwert angenommen hat.
protected virtual void OnStarted2(DateTime time)
strategy.OnStarted2(time)
Die Methode wird aufgerufen, wenn die Startmethode aufgerufen wurde und der Zustand ProcessState den Startwert angenommen hat.
protected virtual void OnStopped()
strategy.OnStopped()
Die Methode wird aufgerufen, wenn der ProcessState @ Prozesszustand den Wert Stopped angenommen hat.
protected virtual void OnStopping()
strategy.OnStopping()
Die Methode wird aufgerufen, wenn der ProcessState @ Prozesszustand den Stopping-Wert angenommen hat.
public StrategyParam<T> Param<T>(string id, T initialValue)
result = strategy.Param(id, initialValue)
Initialisiert eine neue Instanz von StrategyParam.
- id
- Parameterkennung.
- initialValue
- Der Anfangswert.
Rückgabe: Der Strategieparameter.
public void Prepare()
strategy.Prepare()
Daten für die Erstellung von Berichten vorbereiten. Rufen Sie diese auf, bevor Sie auf Daten zugreifen, um sicherzustellen, dass alle Werte auf dem neuesten Stand sind.
private void ProcessOrder(Order order, bool isChanging)
strategy.ProcessOrder(order, isChanging)
Um die Reihenfolge zur Strategie hinzuzufügen.
- order
- Bestellung.
- isChanging
- Die Reihenfolge kam von dem Change Event.
public void RaiseParametersChanged(string name)
strategy.RaiseParametersChanged(name)
Um Ereignisse ParametersChanged und PropertyChanged aufzurufen.
- name
- Parameterbezeichnung.
protected void RaiseProcessStateChanged(Strategy strategy)
strategy.RaiseProcessStateChanged(strategy)
Um das Ereignis ProcessStateChanged aufzurufen.
- strategy
- Strategie.
private void RaiseReseted()
strategy.RaiseReseted()
Um das Ereignis Reseted aufzurufen.
public void RegisterOrder(Order order)
strategy.RegisterOrder(order)
Registrieren Sie neue Bestellung.
- order
- Angaben zur Registrierung.
public void ReRegisterOrder(Order oldOrder, Order newOrder)
strategy.ReRegisterOrder(oldOrder, newOrder)
Registrieren Sie die Bestellung erneut.
- oldOrder
- Löschung des Auftrags.
- newOrder
- Neue Registrierungsanordnung.
public void Reset()
strategy.Reset()
Um den Handelsalgorithmus neu zu initialisieren, wird er nach Initialisierung des Strategieobjekts und Laden von gespeicherten Parametern aufgerufen.
public IConnector SafeGetConnector()
result = strategy.SafeGetConnector()
Um die Strategie zu bekommen, die Connector. Wenn es nicht initialisiert wird, wird die Ausnahme verworfen.
Rückgabe: Connector.
public void Save(SettingsStorage storage, bool saveStatistics, bool saveSystemParameters)
strategy.Save(storage, saveStatistics, saveSystemParameters)
Einstellungen speichern.
- storage
- SettingsStorage
- saveStatistics
- KeepStatistics
- saveSystemParameters
- Speichern Sie Systemparameter.
public override void Save(SettingsStorage storage)
strategy.Save(storage)
Einstellungen speichern.
- storage
- Einstellungen Lagerung.
public Order SellLimit(decimal price, decimal? volume, Security security)
result = strategy.SellLimit(price, volume, security)
Erstellen des initialisierten Orderobjekts zum Verkauf.
- price
- Preis.
- volume
- Wenn der Wert übergeben wird, wird der Volumenwert verwendet.
- security
- Das Finanzinstrument: Wenn der Wert übergeben wird, wird der Wert des Finanzinstruments verwendet.
Rückgabe: Das initialisierte Orderobjekt.
public Order SellMarket(decimal? volume, Security security)
result = strategy.SellMarket(volume, security)
Um das initialisierte Orderobjekt der Verkaufsorder zum Marktpreis zu erstellen.
- volume
- Wenn der Wert übergeben wird, wird der Volumenwert verwendet.
- security
- Das Finanzinstrument: Wenn der Wert übergeben wird, wird der Wert des Finanzinstruments verwendet.
Rückgabe: Das initialisierte Orderobjekt.
public void SetAlertService(IAlertNotificationService service)
strategy.SetAlertService(service)
Um ein IAlertNotificationService für die Strategie festzulegen.
- service
- Warnmeldungsdienst.
public void SetChart(IChart chart)
strategy.SetChart(chart)
Ein IChart für die Strategie festlegen.
- chart
- Karte.
public void SetOptionDesk(IOptionDesk desk)
strategy.SetOptionDesk(desk)
Um die IOptionDesk zu setzen.
- desk
- IOptionDesk.
public void SetOptionPositionChart(IOptionPositionChart chart)
strategy.SetOptionPositionChart(chart)
Ein IChart für die Strategie festlegen.
- chart
- Karte.
public void SetPositionValue(Security security, Portfolio portfolio, decimal value, DateTime time)
strategy.SetPositionValue(security, portfolio, value, time)
Position einstellen.
- security
- Finanzinstrument.
- portfolio
- Portfolio.
- value
- Position.
- time
- Zeitstempel, um LocalTime und ServerTime zuzuweisen, wenn die Position neu erstellt wird.
public void SetTargetPosition(decimal target)
strategy.SetTargetPosition(target)
Setzen Sie Zielposition für das Finanzinstrument und Portfolio der Strategie.
- target
- Zielpositionswert.
public void SetTargetPosition(Security security, Portfolio portfolio, decimal target)
strategy.SetTargetPosition(security, portfolio, target)
Zielposition für bestimmte Finanzinstrumente und Portfolios festlegen.
- security
- Finanzinstrument.
- portfolio
- Portfolio.
- target
- Zielpositionswert.
protected void StartProtection(Unit takeProfit, Unit stopLoss, bool isStopTrailing, TimeSpan? takeTimeout, TimeSpan? stopTimeout, bool useMarketOrders, bool isLocalStop)
strategy.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.
protected ITimerHandler StartTimer(TimeSpan interval, Action callback)
result = strategy.StartTimer(interval, callback)
Erstellen Sie einen Timer, der in bestimmten Intervallen einen Rückruf ausführt und sofort startet.
- interval
- Zeitintervall.
- callback
- Callback zur Ausführung.
Rückgabe: ITimerHandler
public void Stop(Exception error)
strategy.Stop(error)
Um den Handelsalgorithmus aus Fehlergründen zu stoppen.
- error
- Fehler.
public void Subscribe(Subscription subscription)
strategy.Subscribe(subscription)
Unterzeichnen.
- subscription
- Zeichnung.
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(Subscription subscription)
result = strategy.SubscribeCandles(subscription)
Abonnieren Sie Kerzen.
- subscription
- Zeichnung
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(DataType dt, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(dt, isFinishedOnly, security)
Abonnieren Sie Kerzen.
- dt
- DataType
- isFinishedOnly
- IsFinishedOnly
- security
- Finanzinstrument: Wird das Finanzinstrument nicht bestanden, so wird der Wert des Finanzinstruments verwendet.
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<ICandleMessage> SubscribeCandles(TimeSpan tf, bool isFinishedOnly, Security security)
result = strategy.SubscribeCandles(tf, isFinishedOnly, security)
Abonnieren Sie Kerzen.
- tf
- Zeitrahmen.
- isFinishedOnly
- IsFinishedOnly
- security
- Finanzinstrument: Wird das Finanzinstrument nicht bestanden, so wird der Wert des Finanzinstruments verwendet.
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Subscription subscription)
result = strategy.SubscribeLevel1(subscription)
Abonnieren Sie Level1.
- subscription
- Zeichnung
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<Level1ChangeMessage> SubscribeLevel1(Security security)
result = strategy.SubscribeLevel1(security)
Abonnieren Sie Level1.
- security
- Finanzinstrument: Wird das Finanzinstrument nicht bestanden, so wird der Wert des Finanzinstruments verwendet.
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Subscription subscription)
result = strategy.SubscribeOrderBook(subscription)
Abonnieren Sie MarketDepth.
- subscription
- Zeichnung
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<IOrderBookMessage> SubscribeOrderBook(Security security)
result = strategy.SubscribeOrderBook(security)
Abonnieren Sie MarketDepth.
- security
- Finanzinstrument: Wird das Finanzinstrument nicht bestanden, so wird der Wert des Finanzinstruments verwendet.
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Subscription subscription)
result = strategy.SubscribeTicks(subscription)
Abonnieren Sie Ticks.
- subscription
- Zeichnung
Rückgabe: SubscriptionHandler
protected ISubscriptionHandler<ITickTradeMessage> SubscribeTicks(Security security)
result = strategy.SubscribeTicks(security)
Abonnieren Sie Ticks.
- security
- Finanzinstrument: Wird das Finanzinstrument nicht bestanden, so wird der Wert des Finanzinstruments verwendet.
Rückgabe: SubscriptionHandler
protected virtual object ToReportValue(object value)
result = strategy.ToReportValue(value)
Um den Parameterwert in den Berichtswert umzuwandeln.
- value
- Der Parameterwert.
Rückgabe: Der Reportwert.
public bool TryAddMyTrade(MyTrade trade)
result = strategy.TryAddMyTrade(trade)
Versuchen Sie, eigenen Handel hinzuzufügen.
- trade
- MyTrade
Rückgabe: Betriebsergebnis.
public void UnSubscribe(Subscription subscription)
strategy.UnSubscribe(subscription)
Unsubscribe.
- subscription
- Zeichnung.
Ereignisse
public event Action<Subscription, ExchangeBoard> BoardReceived
strategy.BoardReceived += handler
ExchangeBoard erhalten.
public event Action<Subscription, ICandleMessage> CandleReceived
strategy.CandleReceived += handler
ICandleMessage erhalten.
public event Action CommissionChanged
strategy.CommissionChanged += handler
Änderungsereignis der Kommission.
public event Action ConnectorChanged
strategy.ConnectorChanged += handler
Das Ereignis der Strategieverbindung ändert sich.
public event Action<TimeSpan> CurrentTimeChanged
strategy.CurrentTimeChanged += handler
Die Serverzeit hat sich geändert CurrentTime. Es hat die Zeitdifferenz seit dem letzten Aufruf des Ereignisses überschritten. Das erste Mal passiert das Ereignis den Wert Null.
public event Action<Subscription, DataType> DataTypeReceived
strategy.DataTypeReceived += handler
DataType erhalten.
public event Action<Strategy, Exception> Error
strategy.Error += handler
Der Fehlerfall in der Strategie.
public event Action<Strategy> IsOnlineChanged
strategy.IsOnlineChanged += handler
Das Ereignis der Strategie Online Zustandsänderung.
public event Action LatencyChanged
strategy.LatencyChanged += handler
Latenzänderungsereignis.
public event Action<Subscription, Level1ChangeMessage> Level1Received
strategy.Level1Received += handler
Level1ChangeMessage erhalten.
public event Action<MyTrade> NewMyTrade
strategy.NewMyTrade += handler
Eigenhandel erhalten.
public event Action<Subscription, News> NewsReceived
strategy.NewsReceived += handler
Nachrichten erhalten.
public event Action<Subscription, IOrderBookSource, IOrderBookMessage> OrderBookDrawing
strategy.OrderBookDrawing += handler
IOrderBookMessage.
public event Action<Subscription, IOrderBookSource, Order> OrderBookDrawingOrder
strategy.OrderBookDrawingOrder += handler
Bestellung.
public event Action<Subscription, IOrderBookSource, OrderFail> OrderBookDrawingOrderFail
strategy.OrderBookDrawingOrderFail += handler
OrderFail.
public event Action<Subscription, IOrderBookMessage> OrderBookReceived
strategy.OrderBookReceived += handler
IOrderBookMessage erhalten.
public event Action<OrderFail> OrderCancelFailed
strategy.OrderCancelFailed += handler
Order Stornierung Fehlerereignis.
public event Action<Subscription, OrderFail> OrderCancelFailReceived
strategy.OrderCancelFailReceived += handler
OrderFail Stornierungsereignis.
public event Action<Order> OrderCanceling
strategy.OrderCanceling += handler
Das Ereignis der Absendung von Bestellung zur Stornierung.
public event Action<Order> OrderChanged
strategy.OrderChanged += handler
Bestellung geändert (abgesagt, abgeglichen).
public event Action<long, Order> OrderEdited
strategy.OrderEdited += handler
Order) Erfolg Ergebnis Ereignis.
public event Action<long, OrderFail> OrderEditFailed
strategy.OrderEditFailed += handler
Order) Fehlerergebnis Ereignis.
public event Action<Subscription, OrderFail> OrderEditFailReceived
strategy.OrderEditFailReceived += handler
OrderFail Editionsveranstaltung.
public event Action<Subscription, IOrderLogMessage> OrderLogReceived
strategy.OrderLogReceived += handler
IOrderLogMessage erhalten.
public event Action<Subscription, Order> OrderReceived
strategy.OrderReceived += handler
Bestellung eingegangen.
public event Action<Order> OrderRegistered
strategy.OrderRegistered += handler
Der Fall der Bestellung erfolgreiche Registrierung.
public event Action<OrderFail> OrderRegisterFailed
strategy.OrderRegisterFailed += handler
Fehler bei der Auftragsregistrierung.
public event Action<Subscription, OrderFail> OrderRegisterFailReceived
strategy.OrderRegisterFailReceived += handler
OrderFail Registrierungsereignis.
public event Action<Order> OrderRegistering
strategy.OrderRegistering += handler
Das Ereignis der Absendung von Bestellung für die Registrierung.
public event Action<Order, Order> OrderReRegistering
strategy.OrderReRegistering += handler
Das Ereignis der Absendung von Bestellung für die erneute Registrierung.
public event Action<Subscription, MyTrade> OwnTradeReceived
strategy.OwnTradeReceived += handler
MyTrade erhalten.
public event Action ParametersChanged
strategy.ParametersChanged += handler
Parameter ändern das Ereignis.
public event Action<Subscription> PnLReceived
strategy.PnLReceived += handler
PnL Change Event.
public event Action<Subscription, Portfolio, DateTime, decimal, decimal?, decimal?> PnLReceived2
strategy.PnLReceived2 += handler
PnL Change Event.
public event Action<Subscription, Portfolio> PortfolioReceived
strategy.PortfolioReceived += handler
Portfolio erhalten.
public event Action PositionChanged
strategy.PositionChanged += handler
Ereignis der Positionsänderung.
public event Action<Subscription, Position> PositionReceived
strategy.PositionReceived += handler
Position erhalten.
public event Action<Strategy> ProcessStateChanged
strategy.ProcessStateChanged += handler
ProcessState Change Event.
public event PropertyChangedEventHandler PropertyChanged
strategy.PropertyChanged += handler
Der Diagrammelementeigenschaftenwert Änderungsereignis.
public event Action Reseted
strategy.Reseted += handler
Das Ereignis der Strategie Re-Initialisierung.
public event Action<Subscription, Security> SecurityReceived
strategy.SecurityReceived += handler
erhaltenes Finanzinstrument.
public event Action SlippageChanged
strategy.SlippageChanged += handler
Slippage Change Event.
public event Action<Subscription, Exception, bool> SubscriptionFailed
strategy.SubscriptionFailed += handler
Das Abonnement ist fehlgeschlagen.
public event Action<Subscription> SubscriptionOnline
strategy.SubscriptionOnline += handler
Das Abonnement ist online.
public event Action<Subscription, object> SubscriptionReceived
strategy.SubscriptionReceived += handler
Wert erhalten.
public event Action<Subscription> SubscriptionStarted
strategy.SubscriptionStarted += handler
Das Abonnement wird gestartet.
public event Action<Subscription, Exception> SubscriptionStopped
strategy.SubscriptionStopped += handler
Das Abonnement wird gestoppt.
public event Action<Subscription, ITickTradeMessage> TickTradeReceived
strategy.TickTradeReceived += handler
ITickTradeMessage erhalten.