public void AddStockForJobbing() { JobbingStockBase stock = Activator.CreateInstance(SelectedJobbingType.Value) as JobbingStockBase; stock.Exchange = Exchange; stock.Symbol = Symbol; stock.SaveDirectoryName = ConfigurationFileNames.JobbingStockDir; try { var ltp = KiteInstance.Kite.GetLTP(new string[] { string.Format("{0}:{1}", Exchange, Symbol) }); stock.CurrentPrice = ltp.FirstOrDefault().Value.LastPrice; if (SelectedJobbingType.Value == typeof(StrongPullBackJobbing)) { (stock as StrongPullBackJobbing).PullBackPercentage = Convert.ToDouble(SelectedPullBackPercentage.Value); } else if (SelectedJobbingType.Value == typeof(PivotJobbing)) { (stock as PivotJobbing).PivotPrice = stock.CurrentPrice; (stock as PivotJobbing).IncrementalMethod = IncrementalMethod; (stock as PivotJobbing).IncrementalNumber = IncrementalNumber; } stock.JobbingType = SelectedJobbingType.Key; switch (ProfitMarginType) { case ProfitMarginType.Percentage: stock.Margin = stock.CurrentPrice.FindPercentagValue(Margin); break; case ProfitMarginType.Absolute: stock.Margin = Margin; break; } JobbingStocks.Add(stock); } catch (Exception ex) { } }
public void Start(JobbingStockBase stock) { StockJobber.Instance.Start(stock, KiteInstance.Kite); }