public static double GetTickValue(this ProtoOASymbol symbol, ProtoOAAsset symbolQuoteAsset, ProtoOAAsset accountDepositAsset, IEnumerable <Tuple <ProtoOAAsset, ProtoOAAsset, double> > conversionAssets) { _ = symbol ?? throw new ArgumentNullException(nameof(symbol)); _ = symbolQuoteAsset ?? throw new ArgumentNullException(nameof(symbolQuoteAsset)); _ = accountDepositAsset ?? throw new ArgumentNullException(nameof(accountDepositAsset)); double tickValue; var symbolTickSize = symbol.GetTickSize(); if (symbolQuoteAsset.AssetId == accountDepositAsset.AssetId) { tickValue = symbolTickSize; } else { tickValue = symbolTickSize * Convert(symbolQuoteAsset, conversionAssets); } return(tickValue); }
public static double GetPipsFromPoints(this ProtoOASymbol symbol, long points) => symbol.GetPipsFromPrice(points * symbol.GetTickSize());
public static double GetPipValue(this ProtoOASymbol symbol, double tickValue) => tickValue * (symbol.GetPipSize() / symbol.GetTickSize());