private bool IsEligible(RangeBreakOutConfiguration stockConfiguration, KiteConnect.LTP ltp) { switch (stockConfiguration.OrderCondition) { case Condition.GreaterThanEqualTo: return(ltp.LastPrice >= stockConfiguration.BreakOutPrice); case Condition.LessThanEqualTo: return(ltp.LastPrice <= stockConfiguration.BreakOutPrice); } return(false); }
private bool PlaceOrder(RangeBreakOutConfiguration stockConfiguration, KiteConnect.LTP ltp) { var orderTypeStr = GetOrderString(stockConfiguration.OrderType); if (!string.IsNullOrEmpty(orderTypeStr)) { try { var target = String.Format("{0:0.00}", Math.Abs(stockConfiguration.BreakOutPrice - stockConfiguration.BuySellPrice)); var symbol = stockConfiguration.StockSymbol.Split(new char[] { ':' }); var request = _kite.PlaceOrder(symbol[0], symbol[1], stockConfiguration.OrderMode.ToString(), stockConfiguration.Quantity, OrderType: "MARKET", Price: stockConfiguration.BreakOutPrice, Product: "MIS", StoplossValue: stockConfiguration.StopLoss, TrailingStoploss: 0, SquareOffValue: stockConfiguration.StopLoss, Variety: "co", Validity: "DAY"); return(request.Any(s => s.Key.ToLower() == "status" && s.Value.ToLower() == "success")); } catch (Exception ex) { return(false); } } return(false); }