CommissionRule
Правила расчета комиссии.
Наследует: NotifiableObject
Реализует: ICommissionRule, IAsyncPersistable
Конструкторы
protected CommissionRule()
commissionRule = CommissionRule()
Инициализируйте CommissionRule.
Свойства
public decimal Min { get; set; }
value = commissionRule.Min
commissionRule.Min = value
Lower bound on a charge this rule produces. Zero means no bound.
public string Title { get; private set; }
value = commissionRule.Title
commissionRule.Title = value
Название.
public Unit Value { get; set; }
value = commissionRule.Value
commissionRule.Value = value
Значение параметра.
Методы
protected Scope EnterScope()
result = commissionRule.EnterScope()
Введите область синхронизации.
Возвращает: Область применения
protected decimal? GetValue(decimal? price, decimal? volume)
result = commissionRule.GetValue(price, volume)
Получите значение комиссии, используя цену и объем. Для процентных единиц используется оборот (цена * объем). Абсолютные единицы возвращают абсолютное значение.
- price
- Базовая цена (ордер или сделка).
- volume
- База объема (ордер или сделка).
Возвращает: Размер комиссии или ноль, если его невозможно рассчитать.
public virtual Task LoadAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = commissionRule.LoadAsync(storage, cancellationToken)
Load settings.
- storage
- Settings storage.
- cancellationToken
- CancellationToken
Возвращает: Task
protected abstract ValueTask<decimal?> OnProcessAsync(ExecutionMessage message, CancellationToken cancellationToken)
result = commissionRule.OnProcessAsync(message, cancellationToken)
To calculate commission, before Min is applied.
- message
- The message containing the information about the order or own trade.
- cancellationToken
- CancellationToken
Возвращает: The commission. If the commission cannot be calculated then will be returned.
public ValueTask<decimal?> ProcessAsync(ExecutionMessage message, CancellationToken cancellationToken)
result = commissionRule.ProcessAsync(message, cancellationToken)
To calculate commission.
- message
- The message containing the information about the order or own trade.
- cancellationToken
- CancellationToken
Возвращает: The commission. If the commission cannot be calculated then will be returned.
public virtual Task SaveAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = commissionRule.SaveAsync(storage, cancellationToken)
Save settings.
- storage
- Settings storage.
- cancellationToken
- CancellationToken
Возвращает: Task