BaseOptimizer

StockSharp.Algo.Strategies.Optimization

戦略のベースオプティマイザ。

継承元: BaseLogReceiver

コンストラクター

BaseOptimizer
protected BaseOptimizer(ISecurityProvider securityProvider, IPortfolioProvider portfolioProvider, IExchangeInfoProvider exchangeInfoProvider, IStorageRegistry storageRegistry, StorageFormats storageFormat, IMarketDataDrive drive)
baseOptimizer = BaseOptimizer(securityProvider, portfolioProvider, exchangeInfoProvider, storageRegistry, storageFormat, drive)

BaseOptimizer の新規インスタンスを初期化します。

securityProvider
機器に関する情報提供者
portfolioProvider
注文を登録するために使用されるポートフォリオ。値が与えられていない場合は、デフォルト名で生成されるポートフォリオが作成されます。
exchangeInfoProvider
取引所および取引銀行のプロバイダ。
storageRegistry
市場データストレージ。
storageFormat
市場データの形式。バイナリはデフォルトで使用されます。
drive
デフォルトで使われるストレージ。デフォルトではDefaultDriveが使われます。

プロパティ

AdapterCache
public MarketDataStorageCache AdapterCache { get; set; }
value = baseOptimizer.AdapterCache
baseOptimizer.AdapterCache = value

代表取締役社長 佐藤 浩

EmulationSettings
public OptimizerSettings EmulationSettings { get; }
value = baseOptimizer.EmulationSettings

エミュレーション設定。

ExchangeInfoProvider
public IExchangeInfoProvider ExchangeInfoProvider { get; }
value = baseOptimizer.ExchangeInfoProvider

担当: 佐藤 宏

IsPaused
public bool IsPaused { get; }
value = baseOptimizer.IsPaused

現在、最適化がパユースされているかどうか。

PortfolioProvider
public IPortfolioProvider PortfolioProvider { get; }
value = baseOptimizer.PortfolioProvider

担当: 佐藤 宏

RunToken
protected CancellationToken RunToken { get; }
value = baseOptimizer.RunToken

Cancellation token for the current optimization run, including optimizer disposal and consumer cancellation.

SecurityProvider
public ISecurityProvider SecurityProvider { get; }
value = baseOptimizer.SecurityProvider

担当: 佐藤 宏

StopOnSubscriptionError
public bool StopOnSubscriptionError { get; set; }
value = baseOptimizer.StopOnSubscriptionError
baseOptimizer.StopOnSubscriptionError = value

担当: 佐藤 宏

StorageCache
public MarketDataStorageCache StorageCache { get; set; }
value = baseOptimizer.StorageCache
baseOptimizer.StorageCache = value

代表取締役社長 佐藤 浩

StorageSettings
public StorageCoreSettings StorageSettings { get; }
value = baseOptimizer.StorageSettings

ストレージ設定。

メソッド

AllocateAdapterCache
protected internal MarketDataStorageCache AllocateAdapterCache()
result = baseOptimizer.AllocateAdapterCache()

代表取締役社長 佐藤 浩一

戻り値: 担当: 佐藤 宏

AllocateStorageCache
protected internal MarketDataStorageCache AllocateStorageCache()
result = baseOptimizer.AllocateStorageCache()

代表取締役社長 佐藤 浩一

戻り値: 担当: 佐藤 宏

CancelRun
protected void CancelRun()
baseOptimizer.CancelRun()

Cancel the current optimization run and let its producers drain.

CompleteChannel
protected void CompleteChannel()
baseOptimizer.CompleteChannel()

RunAsyncの列挙が終了するまで、チャンネルを完成させます。

DisposeManaged
protected override void DisposeManaged()
baseOptimizer.DisposeManaged()

リソースのリリース

FreeAdapterCache
protected internal void FreeAdapterCache(MarketDataStorageCache cache)
baseOptimizer.FreeAdapterCache(cache)

Free AdapterCache.

cache
担当: 佐藤 宏
FreeStorageCache
protected internal void FreeStorageCache(MarketDataStorageCache cache)
baseOptimizer.FreeStorageCache(cache)

Free StorageCache.

cache
担当: 佐藤 宏
InitializeRunAsync
protected void InitializeRunAsync(int totalIterations, CancellationToken cancellationToken)
baseOptimizer.InitializeRunAsync(totalIterations, cancellationToken)

RunAsync のチャネル、バッチ マネージャー、およびリンクされた CTS を初期化します。

totalIterations
通知の総数(またはint.MaxValue不明の場合)。
cancellationToken
外部のキャンセルトークン。
Pause
public Task Pause()
result = baseOptimizer.Pause()

不正な最適化。Resumeが呼び出されるまで新しい反復が始まりません。すでに実行中のバックテストは中断されるため、急激にハットが進行します。

戻り値: タスク

ReadResultsAsync
protected IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ReadResultsAsync(CancellationToken cancellationToken)
result = baseOptimizer.ReadResultsAsync(cancellationToken)

チャネルリーダーからの収穫結果。

Resume
public Task Resume()
result = baseOptimizer.Resume()

再発した最適化。

戻り値: タスク

StopStartedConnector
private void StopStartedConnector(HistoryEmulationConnector connector)
baseOptimizer.StopStartedConnector(connector)

Disconnect a connector that is up, so its iteration reaches Stopped and signals the worker waiting on it. One that is already stopping gets there on its own.

TryNextRunAsync
protected internal ValueTask<bool> TryNextRunAsync(DateTime startTime, DateTime stopTime, Func<IPortfolioProvider, CancellationToken, ValueTask<ValueTuple<Strategy, IStrategyParam[]>?>> tryGetNext, MarketDataStorageCache adapterCache, MarketDataStorageCache storageCache, CancellationToken cancellationToken)
result = baseOptimizer.TryNextRunAsync(startTime, stopTime, tryGetNext, adapterCache, storageCache, cancellationToken)

Try start next iteration. Returns if iteration was started and completed, if no more iterations available.

startTime
Date in history for starting the paper trading.
stopTime
Date in history to stop the paper trading (date is included).
tryGetNext
Handler to try to get next strategy object.
adapterCache
AdapterCache
storageCache
StorageCache
cancellationToken
Cancellation token.

イベント

ConnectorInitialized
public event Action<Connector> ConnectorInitialized
baseOptimizer.ConnectorInitialized += handler

接続前に電話をかけたConnector.

SingleProgressChanged
public event Action<Strategy, IStrategyParam[], int> SingleProgressChanged
baseOptimizer.SingleProgressChanged += handler

単一の進行状況が変化するイベント。

StrategyInitialized
public event Action<Strategy, IStrategyParam[]> StrategyInitialized
baseOptimizer.StrategyInitialized += handler

戦略初期化イベント。