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
Портфель, который будет использоваться для регистрации заказов. Если значение не указано, будет создан портфель с именем по умолчанию Simulator.
exchangeInfoProvider
Поставщик бирж и торговых площадок.
storageRegistry
Хранение рыночных данных.
storageFormat
Формат рыночных данных. По умолчанию используется двоичный формат.
drive
Хранилище, которое используется по умолчанию. По умолчанию используется DefaultDrive.

Свойства

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

AdapterCache.

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

Настройки эмуляции.

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

IExchangeInfoProvider

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

Оптимизация в настоящее время приостановлена.

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

IPortfolioProvider

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

ISecurityProvider

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

StopOnSubscriptionError

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

StorageCache.

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

Настройки хранилища.

Методы

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

Выделите AdapterCache.

Возвращает: AdapterCache

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

Выделите StorageCache.

Возвращает: StorageCache

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)

Бесплатно AdapterCache.

cache
AdapterCache
FreeStorageCache
protected internal void FreeStorageCache(MarketDataStorageCache cache)
baseOptimizer.FreeStorageCache(cache)

Бесплатно StorageCache.

cache
StorageCache
InitializeRunAsync
protected void InitializeRunAsync(int totalIterations, CancellationToken cancellationToken)
baseOptimizer.InitializeRunAsync(totalIterations, cancellationToken)

Инициализируйте канал, пакетный менеджер и связанный CTS для RunAsync.

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

Событие, инициализирующее стратегию.