GpuAccelerationCalculator

StockSharp.Algo.Gpu.Indicators

GPU calculator for the Acceleration indicator.

継承元: GpuIndicatorCalculatorBase<Acceleration, GpuAccelerationParams, GpuIndicatorResult>

コンストラクター

GpuAccelerationCalculator
public GpuAccelerationCalculator(Context context, Accelerator accelerator)
gpuAccelerationCalculator = GpuAccelerationCalculator(context, accelerator)

Initializes a new instance of the GpuAccelerationCalculator class.

context
ILGPU context.
accelerator
ILGPU accelerator.

メソッド

AccelerationParamsSeriesKernel
private static void AccelerationParamsSeriesKernel(Index3D index, ArrayView<GpuCandle> flatCandles, ArrayView<GpuIndicatorResult> flatResults, ArrayView<int> offsets, ArrayView<int> lengths, ArrayView<GpuAccelerationParams> parameters)
GpuAccelerationCalculator.AccelerationParamsSeriesKernel(index, flatCandles, flatResults, offsets, lengths, parameters)

Kernel executing Acceleration calculations per parameter/series combination.

index
3D index (parameter, series, candle).
flatCandles
Flattened input candle array.
flatResults
Flattened GPU result array.
offsets
Offsets for each series inside the flattened candle array.
lengths
Lengths of each series.
parameters
Acceleration parameters per kernel batch.
Calculate
public override GpuIndicatorResult[][][] Calculate(GpuCandle[][] candlesSeries, GpuAccelerationParams[] parameters)
result = gpuAccelerationCalculator.Calculate(candlesSeries, parameters)

Executes GPU Acceleration calculation for the provided candle series and parameter combinations.

candlesSeries
Per-series candle arrays.
parameters
Acceleration parameter combinations.

戻り値: GPU indicator results grouped by series and parameter index.

ComputeAwesome
private static float ComputeAwesome(ArrayView<GpuCandle> flatCandles, int seriesOffset, int globalIdx, int localIdx, int shortLen, int longLen)
result = GpuAccelerationCalculator.ComputeAwesome(flatCandles, seriesOffset, globalIdx, localIdx, shortLen, longLen)

Computes Awesome Oscillator value for the specified index.

flatCandles
Flattened candle array.
seriesOffset
Offset of the current series.
globalIdx
Global candle index.
localIdx
Index inside the current series.
shortLen
Short moving average length.
longLen
Long moving average length.
GetMedian
private static float GetMedian(GpuCandle candle)
result = GpuAccelerationCalculator.GetMedian(candle)

Gets the median price for the specified candle.

candle
GPU candle structure.