Advertisement
srcveiga

Untitled

Apr 29th, 2023
16
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.16 KB | None | 0 0
  1.  
  2. @app.callback(
  3. Output('main_ohlc_fig', 'figure'),
  4. Output("latest_price", "children"),
  5. Output("latest_price_change", "children"),
  6. Output("latest_price_change", "style"),
  7. Input('stock-selector', 'data'),
  8. Input('stock_data_store', 'data'),
  9. State('main_ohlc_fig', 'figure'),
  10. )
  11. #todo Create a figure that reads my picked value and sets it as main figure
  12. def update_main_ohlc_fig(selected_stock,stock_data,main_ohlc_fig,):
  13. #todo check the selected stock
  14. stock_index = stocks.index(selected_stock)
  15. #* OHLC traces
  16. main_ohlc_fig['data'][0]['x'] = list(stock_data['ohlc'][f'stock{stock_index}_ohlc_df']['time'].values())
  17. main_ohlc_fig['data'][0]['open'] = list(stock_data['ohlc'][f'stock{stock_index}_ohlc_df']['open'].values())
  18. main_ohlc_fig['data'][0]['high'] = list(stock_data['ohlc'][f'stock{stock_index}_ohlc_df']['high'].values())
  19. main_ohlc_fig['data'][0]['low'] = list(stock_data['ohlc'][f'stock{stock_index}_ohlc_df']['low'].values())
  20. main_ohlc_fig['data'][0]['close'] = list(stock_data['ohlc'][f'stock{stock_index}_ohlc_df']['close'].values())
  21. #* MA5 traces
  22. main_ohlc_fig['data'][1]['x'] = list(stock_data['ma5'][f'stock{stock_index}_ma5_df']['time'].values())
  23. main_ohlc_fig['data'][1]['y'] = list(stock_data['ma5'][f'stock{stock_index}_ma5_df']['MA5'].values())
  24. #* MA10 traces
  25. main_ohlc_fig['data'][2]['x'] = list(stock_data['ma10'][f'stock{stock_index}_ma10_df']['time'].values())
  26. main_ohlc_fig['data'][2]['y'] = list(stock_data['ma10'][f'stock{stock_index}_ma10_df']['MA10'].values())
  27. #* MA20 traces
  28. main_ohlc_fig['data'][3]['x'] = list(stock_data['ma20'][f'stock{stock_index}_ma20_df']['time'].values())
  29. main_ohlc_fig['data'][3]['y'] = list(stock_data['ma20'][f'stock{stock_index}_ma20_df']['MA20'].values())
  30. #* Volume traces
  31. main_ohlc_fig['data'][4]['x'] = list(stock_data['volume_pos_x'][f'stock{stock_index}_volume_pos_x_df'].values())
  32. main_ohlc_fig['data'][4]['y'] = list(stock_data['volume_pos_y'][f'stock{stock_index}_volume_pos_y_df'].values())
  33. main_ohlc_fig['data'][5]['x'] = list(stock_data['volume_neg_x'][f'stock{stock_index}_volume_neg_x_df'].values())
  34. main_ohlc_fig['data'][5]['y'] = list(stock_data['volume_neg_y'][f'stock{stock_index}_volume_neg_y_df'].values())
  35. #* Rsi traces
  36. main_ohlc_fig['data'][6]['x'] = list(stock_data['volume_neg_x'][f'stock{stock_index}_volume_neg_x_df'].values())
  37. main_ohlc_fig['data'][6]['y'] = list(stock_data['volume_neg_y'][f'stock{stock_index}_volume_neg_y_df'].values())
  38. #* Last Price traces
  39. latest_price = stock_data['last_price'][f'stock{stock_index}_last_price_df'][stocks[stock_index]+'_price']
  40. #* Last Price Change traces
  41. latest_price_change = stock_data['last_price_change'][f'stock{stock_index}_last_price_change_df'][stocks[stock_index]+'_price_change']
  42.  
  43. return main_ohlc_fig,latest_price,latest_price_change,{'color': '#18b800' if latest_price_change[stock_index] == '+' else '#ff3503','fontSize': '20px'}
  44.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement