def post(self): data = request.data stock_data = json.loads(data) if isinstance(stock_data, (unicode, str,)): stock_data = eval(stock_data) new_stock = Stock(**stock_data) return new_stock, 201
def stocks_update(arr: list): arr = filter(lambda x: x['type'] in stock_types.enums, arr) g = [(r['symbol'], r['description'], r['type'], r['exchange'], r['lotsize'], r['rating'], r['volatility'], r.get('last_price')) for r in arr] for i in g: session.merge(Stock(*i)) session.commit()
def buildStockModels(code, data, stockManager): stock = Stock(code) stock.set_kdata(data['df_3m']) stock.set_ktoday(data['df_realTime']) stock.set_macd(data['macd']) stock.set_kdj(data['kdj']) stock.set_ma(data['ma']) stock.set_turnover(data['turnover']) stock.set_volume(data['volume']) stock.set_bigMoney(data['bigMoney']) stock.set_concept(data['concept']) stockManager.addStock(stock)
async def add_stocks(request: StockTickerRequest, backgroud_tasks: BackgroundTasks, db: Session = Depends(ensure_db_connection)): """ Add new stock(s) to saved watchlist """ for ticker in request.tickers: new_stock = Stock() new_stock.symbol = ticker db.add(new_stock) db.commit() backgroud_tasks.add_task(fetch_stock_data, new_stock.id) return { "data": request.tickers, "message": "New stocks added to watchlist", "status": 200, }