public override TradersSettings Build(int payload) { var sets = new TradersSettings { PricingSets = new TradersSettings.PricingSettings { PricingMode = PricingSettingsMode.Fixed }, MoneyManagementSets = new TradersSettings.MoneyManagementSettings { Tickers = defaultSettings.MoneyManagementSets.Tickers.ToList(), FixedTickerIndex = 0, LotsMax = 20, LotsMin = 10, TradeRandomTicker = false }, TradeSets = new TradersSettings.TradeSettings { MakersCount = 0, OneShotTradersCount = 0, ProbOfNewOrder = 70, ProbOfMassCancel = 15, ProbOfCancelOrder = 15, ProbErrorRequest = 0 }, PayloadSets = new TradersSettings.PayloadSettings { Mode = PayloadSettingsMode.Stairs, RequestPerIterationProb = 100, StepsCount = 8, SecondsPerStep = 5 } }; defaultSettings.CopyCommonSettingsToTarget(sets); var paySets = sets.PayloadSets; if (payload < 4) { paySets.TradersCount = payload * 8; paySets.SleepInterval = 20; } else if (payload < 7) { paySets.TradersCount = payload * 10; paySets.SleepInterval = 7; } else { paySets.TradersCount = payload * 12; paySets.SleepInterval = 5; } return(sets); }
public override TradersSettings Build(int payload) { var sets = new TradersSettings { PricingSets = new TradersSettings.PricingSettings { PricingMode = PricingSettingsMode.Sinusoidal, SinusAmplitudePercent = 1.5m, SinusPeriodMs = 1000 * 10 }, MoneyManagementSets = new TradersSettings.MoneyManagementSettings { Tickers = defaultSettings.MoneyManagementSets.Tickers.ToList(), FixedTickerIndex = 0, LotsMax = 10, LotsMin = 10, TradeRandomTicker = false }, TradeSets = new TradersSettings.TradeSettings { MakersCount = 1, OneShotTradersCount = 0, ProbOfNewOrder = 70, ProbOfMassCancel = 15, ProbOfCancelOrder = 15, ProbErrorRequest = 5, MarketMakerOrderLots = 200, MarketLevelsCount = 4, MilisecondsBeforUpdateMMLevels = 1000 }, PayloadSets = new TradersSettings.PayloadSettings { Mode = PayloadSettingsMode.Even, RequestPerIterationProb = 100 } }; defaultSettings.CopyCommonSettingsToTarget(sets); var paySets = sets.PayloadSets; if (payload < 4) { paySets.TradersCount = payload * 5; paySets.SleepInterval = 30; } else { sets.TradeSets.MakersCount = 2; paySets.TradersCount = payload * 10; paySets.SleepInterval = 7; } return(sets); }
public override TradersSettings Build(int payload) { var sets = new TradersSettings { PricingSets = new TradersSettings.PricingSettings { PricingMode = PricingSettingsMode.Sinusoidal, SinusPeriodMs = 2, SinusAmplitudePercent = 1 }, MoneyManagementSets = new TradersSettings.MoneyManagementSettings { Tickers = defaultSettings.MoneyManagementSets.Tickers.ToList(), FixedTickerIndex = 0, LotsMax = 20, LotsMin = 10, TradeRandomTicker = false }, TradeSets = new TradersSettings.TradeSettings { MakersCount = 0, OneShotTradersCount = 0, ProbOfNewOrder = 70, ProbOfMassCancel = 15, ProbOfCancelOrder = 15, ProbErrorRequest = 5 }, PayloadSets = new TradersSettings.PayloadSettings { Mode = PayloadSettingsMode.FadeIn, FadingInSeconds = 60, RequestPerIterationProb = 100 } }; defaultSettings.CopyCommonSettingsToTarget(sets); var paySets = sets.PayloadSets; if (payload < 4) { paySets.TradersCount = payload * 15; paySets.SleepInterval = 20; } else { paySets.TradersCount = payload * 18; paySets.SleepInterval = 5; } return(sets); }