public OrderMetadata MergeWith(OrderMetadata metadata)
 {
     return(new OrderMetadata
     {
         IsTransitional = metadata.IsTransitional ?? IsTransitional,
         OriginalPair = metadata.OriginalPair ?? OriginalPair,
         TradingRules = metadata.TradingRules ?? TradingRules,
         SignalRule = metadata.SignalRule ?? SignalRule,
         Signals = metadata.Signals ?? Signals,
         BoughtRating = metadata.BoughtRating ?? BoughtRating,
         CurrentRating = metadata.CurrentRating ?? CurrentRating,
         BoughtGlobalRating = metadata.BoughtGlobalRating ?? BoughtGlobalRating,
         CurrentGlobalRating = metadata.CurrentGlobalRating ?? CurrentGlobalRating,
         LastBuyMargin = metadata.LastBuyMargin ?? LastBuyMargin,
         AdditionalDCALevels = metadata.AdditionalDCALevels ?? AdditionalDCALevels,
         AdditionalCosts = metadata.AdditionalCosts ?? AdditionalCosts,
         FeesNonDeductible = metadata.FeesNonDeductible ?? FeesNonDeductible,
         SwapPair = metadata.SwapPair ?? SwapPair,
         Arbitrage = metadata.Arbitrage ?? Arbitrage,
         ArbitragePercentage = metadata.ArbitragePercentage ?? ArbitragePercentage
     });
 }
示例#2
0
 public SwapOptions(string oldPair, string newPair, OrderMetadata newPairMetadata)
 {
     this.OldPair  = oldPair;
     this.NewPair  = newPair;
     this.Metadata = newPairMetadata ?? new OrderMetadata();
 }
示例#3
0
 public SellOptions(string pair)
 {
     this.Pair     = pair;
     this.Metadata = new OrderMetadata();
 }
 public ArbitrageOptions(string pair, Arbitrage arbitrage, OrderMetadata newPairMetadata)
 {
     this.Pair      = pair;
     this.Arbitrage = arbitrage;
     this.Metadata  = newPairMetadata ?? new OrderMetadata();
 }