BaseOptimizer
Optimizador de bases de estrategias.
Hereda de: BaseLogReceiver
Constructores
protected BaseOptimizer(ISecurityProvider securityProvider, IPortfolioProvider portfolioProvider, IExchangeInfoProvider exchangeInfoProvider, IStorageRegistry storageRegistry, StorageFormats storageFormat, IMarketDataDrive drive)
baseOptimizer = BaseOptimizer(securityProvider, portfolioProvider, exchangeInfoProvider, storageRegistry, storageFormat, drive)
Inicia una nueva instancia de la BaseOptimizer.
- securityProvider
- El proveedor de información sobre instrumentos.
- portfolioProvider
- El portafolio que se utilizará para registrar pedidos. Si no se da valor, se creará la cartera con nombre predeterminado Simulator.
- exchangeInfoProvider
- Intercambios y proveedores de juntas comerciales.
- storageRegistry
- Almacenamiento de datos de mercado.
- storageFormat
- El formato de los datos del mercado. Binary se utiliza por defecto.
- drive
- El almacenamiento que se utiliza por defecto. Por defecto, DefaultDrive se utiliza.
Propiedades
public MarketDataStorageCache AdapterCache { get; set; }
value = baseOptimizer.AdapterCache
baseOptimizer.AdapterCache = value
AdapterCache.
public OptimizerSettings EmulationSettings { get; }
value = baseOptimizer.EmulationSettings
Ajustes de emulación.
public IExchangeInfoProvider ExchangeInfoProvider { get; }
value = baseOptimizer.ExchangeInfoProvider
IExchangeInfoProvider
public bool IsPaused { get; }
value = baseOptimizer.IsPaused
Ya sea que la optimización se detenga actualmente.
public IPortfolioProvider PortfolioProvider { get; }
value = baseOptimizer.PortfolioProvider
IPortfolioProvider
protected CancellationToken RunToken { get; }
value = baseOptimizer.RunToken
Cancellation token for the current optimization run, including optimizer disposal and consumer cancellation.
public ISecurityProvider SecurityProvider { get; }
value = baseOptimizer.SecurityProvider
ISecurityProvider@
public bool StopOnSubscriptionError { get; set; }
value = baseOptimizer.StopOnSubscriptionError
baseOptimizer.StopOnSubscriptionError = value
StopOnSubscriptionError
public MarketDataStorageCache StorageCache { get; set; }
value = baseOptimizer.StorageCache
baseOptimizer.StorageCache = value
StorageCache.
public StorageCoreSettings StorageSettings { get; }
value = baseOptimizer.StorageSettings
Ajustes de almacenamiento.
Métodos
protected internal MarketDataStorageCache AllocateAdapterCache()
result = baseOptimizer.AllocateAdapterCache()
Asignar AdapterCache@.
Devuelve: AdapterCache
protected internal MarketDataStorageCache AllocateStorageCache()
result = baseOptimizer.AllocateStorageCache()
Asignar StorageCache@.
Devuelve: StorageCache
protected void CancelRun()
baseOptimizer.CancelRun()
Cancel the current optimization run and let its producers drain.
protected void CompleteChannel()
baseOptimizer.CompleteChannel()
Completa el canal para que RunAsyncs termine la enumeración.
protected override void DisposeManaged()
baseOptimizer.DisposeManaged()
Libera recursos.
protected internal void FreeAdapterCache(MarketDataStorageCache cache)
baseOptimizer.FreeAdapterCache(cache)
Gratis AdapterCache.
- cache
- AdapterCache
protected internal void FreeStorageCache(MarketDataStorageCache cache)
baseOptimizer.FreeStorageCache(cache)
Gratis StorageCache.
- cache
- StorageCache
protected void InitializeRunAsync(int totalIterations, CancellationToken cancellationToken)
baseOptimizer.InitializeRunAsync(totalIterations, cancellationToken)
Iniciar canal, gestor de lotes y conectar CTS para RunAsync.
- totalIterations
- Número total de iteraciones (o int.MaxValue si no se conoce).
- cancellationToken
- Cancelación externa token.
public Task Pause()
result = baseOptimizer.Pause()
Optimización de pausas. Las nuevas iteraciones no comenzarán hasta que se llame Resume, y las pruebas de respaldo que ya están funcionando se suspenden para que el progreso se detenga rápidamente.
Devuelve: Tareas
protected IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ReadResultsAsync(CancellationToken cancellationToken)
result = baseOptimizer.ReadResultsAsync(cancellationToken)
Rendimiento de resultados del lector de canales.
public Task Resume()
result = baseOptimizer.Resume()
Reanuda la optimización pausada.
Devuelve: Tareas
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.
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.
Eventos
public event Action<Connector> ConnectorInitialized
baseOptimizer.ConnectorInitialized += handler
Init Connector@. Llamado antes de Conectarse.
public event Action<Strategy, IStrategyParam[], int> SingleProgressChanged
baseOptimizer.SingleProgressChanged += handler
El evento de un solo cambio de progreso.
public event Action<Strategy, IStrategyParam[]> StrategyInitialized
baseOptimizer.StrategyInitialized += handler
Acto inicial de estrategia.