File size: 1,570 Bytes
d39b93e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
ff00e1a
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import gradio as gr

from tqdm import tqdm
from model import Model
tqdm.pandas()

def get_predict(stoc_name, pred_days, model_name, add_smoothing):
    '''Эта функцыю делаем прогнозы, выводит график, и информацыю о важности признаков'''
    model = Model(stoc_name, model_name)
    data, string = model.predict(pred_days) 
    p = model.plot_predict(data, add_smoothing)
    return p, string 

stock_list = ['VKCO', 'SBER', 'CHMF', 'MTSS', 'SMLT', 'AGRO', 'SIBN', 'YNDX'] # Акции для прогноза

with gr.Blocks() as demo:
    gr.Markdown("# Приложение предсказания цен акций")

    with gr.Row():  
        with gr.Column(scale=1):  
            stock_dropdown = gr.Dropdown(choices=stock_list, label="Выберите акцию")  
            slider = gr.Slider(1, 7, step=1, label="Выберите длину предсказания (дней)")
            model_dropdown = gr.Dropdown(choices=['LinearRegression', 'NN', 'LGB'], label="Выберите модель")
            checkbox = gr.Checkbox(label="Добавить сглаженное предсказание", value=True)
        
        with gr.Column(scale=2):  
            output_plot = gr.Plot()  
            output_md = gr.Markdown() 

    submit_button = gr.Button("Сгенерировать предсказание")
    submit_button.click(fn=get_predict, inputs=[stock_dropdown, slider, model_dropdown, checkbox], outputs=[output_plot, output_md])

demo.launch(share=True)
#