GeneticOptimizer

StockSharp.Algo.Strategies.Optimization

戦略の遺伝的最適化。

継承元: BaseOptimizer

コンストラクター

GeneticOptimizer
public GeneticOptimizer(ISecurityProvider securityProvider, IPortfolioProvider portfolioProvider, IStorageRegistry storageRegistry, IFileSystem fileSystem)
geneticOptimizer = GeneticOptimizer(securityProvider, portfolioProvider, storageRegistry, fileSystem)

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

securityProvider
機器に関する情報提供者
portfolioProvider
注文を登録するために使用されるポートフォリオ。値が与えられていない場合は、デフォルト名で生成されるポートフォリオが作成されます。
storageRegistry
市場データストレージ。
fileSystem
ファイル システム。
GeneticOptimizer
public GeneticOptimizer(ISecurityProvider securityProvider, IPortfolioProvider portfolioProvider, IExchangeInfoProvider exchangeInfoProvider, IStorageRegistry storageRegistry, StorageFormats storageFormat, IMarketDataDrive drive, IFileSystem fileSystem)
geneticOptimizer = GeneticOptimizer(securityProvider, portfolioProvider, exchangeInfoProvider, storageRegistry, storageFormat, drive, fileSystem)

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

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

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

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

プロパティ

Settings
public GeneticSettings Settings { get; }
value = geneticOptimizer.Settings

担当: 佐藤 宏

メソッド

HasRemainingIterations
private bool HasRemainingIterations()
result = geneticOptimizer.HasRemainingIterations()

残っている反復がある場合にチェックしてください。

RunAsync
public IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> RunAsync(DateTime startTime, DateTime stopTime, Strategy strategy, IEnumerable<ValueTuple<IStrategyParam, object, object, object, IEnumerable>> parameters, Func<Strategy, decimal> calcFitness, ISelection selection, ICrossover crossover, IMutation mutation, CancellationToken cancellationToken)
result = geneticOptimizer.RunAsync(startTime, stopTime, strategy, parameters, calcFitness, selection, crossover, mutation, cancellationToken)

最適化を実行し、収穫は、それらが終了するように繰り返しを完了しました。

startTime
紙取引を始めるための歴史の日付。
stopTime
紙取引を中止する歴史の日付(日付が含まれている)。
strategy
戦略。
parameters
染色体を生成するために使用されるパラメーター。
calcFitness
フィットネス値関数。フィットネスの値が使用される場合。
selection
選択。選択からの値が使用される場合。
crossover
ICrossover. 値がクロスオーバーの場合
mutation
ミュテーション。ミュテーションからの値が使われる場合。
cancellationToken
キャンセルトークン。

戻り値: 完了(戦略、パラメータ)ペアの非同期列挙。

TryConsumeIteration
private bool TryConsumeIteration()
result = geneticOptimizer.TryConsumeIteration()

制限から1つの反復を消費しよう。

戻り値: 反復が消費されたら、制限が到達した場合、false が使用されます。