shrimpy-node-temp
Version:
Client for the Shrimpy API
33 lines (29 loc) • 1.43 kB
text/typescript
import { IDtoConverter } from "../interfaces";
import { IDynamicStrategyDto } from "../dtos";
import { IDynamicStrategy } from "../models";
import { DecimalDtoConverter } from "./decimal-dto-converter";
export class DynamicStrategyDtoConverter implements IDtoConverter<IDynamicStrategyDto, IDynamicStrategy> {
private _decimalDtoConveter = new DecimalDtoConverter();
public convertFromDto(dto: IDynamicStrategyDto): IDynamicStrategy {
const result: IDynamicStrategy = {
excludedSymbols: dto.excludedSymbols.slice(0),
isDynamic: dto.isDynamic,
isEqualWeight: dto.isEqualWeight,
maxPercent: this._decimalDtoConveter.convertFromDto(dto.maxPercent),
minPercent: this._decimalDtoConveter.convertFromDto(dto.minPercent),
topAssetCount: dto.topAssetCount,
};
return result;
}
public convertToDto(model: IDynamicStrategy): IDynamicStrategyDto {
const result: IDynamicStrategyDto = {
excludedSymbols: model.excludedSymbols.slice(0),
isDynamic: model.isDynamic,
isEqualWeight: model.isEqualWeight,
maxPercent: this._decimalDtoConveter.convertToDto(model.maxPercent),
minPercent: this._decimalDtoConveter.convertToDto(model.minPercent),
topAssetCount: model.topAssetCount,
};
return result;
}
}