def main(cp,conn,cursor): sql = "SELECT close , `datum` FROM kursdaten WHERE unternehmen =%d ORDER BY `datum`" %(cp) sql4 = """SELECT neues_kursziel, zieldatum, analyst,neue_einstufung FROM prognose WHERE unternehmen = %d AND `zieldatum`>(SELECT CURDATE()) AND neues_kursziel >0 ORDER BY zieldatum""" %(cp) sql5 = """SELECT neue_einstufung,analyst FROM prognose WHERE unternehmen = %d AND `zieldatum`>(SELECT CURDATE()) AND neues_kursziel >0 ORDER BY zieldatum""" %(cp) trefferquoten_dict = tq.start_company(cp,conn,cursor) avg_kurse = calculate_data.get_select(sql,cursor,conn) prognose = calculate_data.get_select(sql4,cursor,conn) einstufung = calculate_data.get_select(sql5,cursor,conn) avg = [q[0] for q in avg_kurse] datum_avg = [q[1] for q in avg_kurse] datum_avg =dates.date2num(datum_avg) datum_prognose = [q[1] for q in prognose] datum_prognose = dates.date2num(datum_prognose) analysten_prognosen_dict ={} for row in prognose: analysten_prognosen_dict[row[2]] = [] for row in prognose: value = analysten_prognosen_dict[row[2]] value.append([row[0],dates.date2num(row[1]), row[3]]) buy_sell_neutral_count_percent_and_mittlere_trefferquoten = calculate_data.get_buy_sell_neutral_count_percent_and_mittlere_trefferquoten(einstufung,trefferquoten_dict,cp) # [buy,prozent_buy,tr_qt_buy],[sell,prozent_sell,tr_qt_sell],[neutral,prozent_neutral,tr_qt_neutral] colored_trend_prognosis = calculate_data.get_colored_trend_prognosis(analysten_prognosen_dict,datum_prognose) tats_kurse_datum = [datum_avg,avg] result_set = [] result_set.append(tats_kurse_datum) result_set.append(buy_sell_neutral_count_percent_and_mittlere_trefferquoten) result_set.append(colored_trend_prognosis) return result_set
def main(cp, conn, cursor): sql3 = ( """SELECT neues_kursziel, zieldatum, analyst, avg FROM analyst_avg_2 WHERE unternehmen = %d AND neues_kursziel >0 AND avg_datum<(SELECT CURDATE()) ORDER BY avg_datum, zieldatum """ % (cp) ) sql = "SELECT close , `datum` FROM kursdaten WHERE unternehmen =%d ORDER BY `datum" % (cp) sql4 = """SELECT neues_kursziel, zieldatum, analyst FROM prognose WHERE unternehmen = %d AND `zieldatum`>(SELECT CURDATE()) AND neues_kursziel >0 ORDER BY zieldatum""" % ( cp ) avg_kurse = calculate_data.get_select(sql, cursor, conn) ziel_kurse = calculate_data.get_select(sql3, cursor, conn) prognose = calculate_data.get_select(sql4, cursor, conn) avg = [q[0] for q in avg_kurse] datum_avg = [q[1] for q in avg_kurse] datum_avg = dates.date2num(datum_avg) datum_ziel = [q[1] for q in ziel_kurse] datum_ziel = dates.date2num(datum_ziel) datum_prognose = [q[1] for q in prognose] datum_prognose = dates.date2num(datum_prognose) analysten_dict = calculate_data.get_analysten_dict(ziel_kurse) analysten_prognosen_dict = calculate_data.get_analysten_prognosen_dict(prognose) predictions_dict = calculate_data.get_prediction_dictionary(analysten_dict, analysten_prognosen_dict) predictions_and_dates_list = calculate_data.get_predictions_and_dates(predictions_dict) mittelwert = calculate_data.get_mittelwert(predictions_and_dates_list) Varianz = calculate_data.get_varianz(mittelwert, [q[1] for q in predictions_and_dates_list]) sigma = np.sqrt(Varianz) data_plot_future = calculate_data.get_data_for_plot_future(analysten_dict, analysten_prognosen_dict) data_plot_own_forecast_ponts = calculate_data.get_data_for_plot_own_forecast_points() # fig = figure() # ax = fig.add_subplot(111) # plot.plot_avg(datum_avg,avg,ax,fig) # plot.plot_future([q[0] for q in data_plot_future], [q[1] for q in data_plot_future],'yellow',ax,fig) # plot.plot_own_forecast_line([q[1] for q in predictions_and_dates_list], [q[0] for q in predictions_and_dates_list],sigma,ax,fig) # plot.plot_own_forecast_points([q[0] for q in data_plot_own_forecast_ponts],[q[1] for q in data_plot_own_forecast_ponts],ax,fig) # plot.show_plot(ax,fig) konfidenz_intervall_95_sigma_oben = [ [(q[1] + 1.9600 * sigma) for q in predictions_and_dates_list], [q[0] for q in predictions_and_dates_list], ] konfidenz_intervall_95_sigma_unten = [ [(q[1] - 1.9600 * sigma) for q in predictions_and_dates_list], [q[0] for q in predictions_and_dates_list], ] tats_kurse_datum = [datum_avg, avg] prognosekurse_analysten_datum = [q[0] for q in data_plot_future], [q[1] for q in data_plot_future] unsere_vorhersage_linie = [q[1] for q in predictions_and_dates_list], [q[0] for q in predictions_and_dates_list] unsere_vorhersage_punkte = [ [q[0] for q in data_plot_own_forecast_ponts], [q[1] for q in data_plot_own_forecast_ponts], ] result_set = [] result_set.append(konfidenz_intervall_95_sigma_oben) result_set.append(konfidenz_intervall_95_sigma_unten) result_set.append(tats_kurse_datum) result_set.append(prognosekurse_analysten_datum) result_set.append(unsere_vorhersage_linie) result_set.append(unsere_vorhersage_punkte) result_set.append(sigma) calculate_data.reset_global_variables() calculate_data.initialize_global_variables() return result_set
def main(cp,conn,cursor): sql_training = """SELECT neues_kursziel, zieldatum,avg FROM analyst_avg_2 WHERE unternehmen = %d AND avg_datum>'2010-01-01'AND avg_datum<'2012-03-01'"""%(cp) sql_testing = """SELECT neues_kursziel, zieldatum, analyst, avg FROM analyst_avg_2 WHERE unternehmen = %d AND avg_datum>'2012-03-01' AND avg_datum<(SELECT CURDATE())"""%(cp) sql = "SELECT close , `datum` FROM kursdaten WHERE unternehmen =%d ORDER BY `datum"%(cp) sql_prognose = """SELECT neues_kursziel, zieldatum FROM prognose WHERE unternehmen = %d AND `zieldatum`>(SELECT CURDATE()) AND neues_kursziel >0 """%(cp) #fig = figure() #ax = fig.add_subplot(111) avg_kurse = calculate_data.get_select(sql,cursor,conn) kurse_training = calculate_data.get_select(sql_training,cursor,conn) kurse_testing = calculate_data.get_select(sql_testing,cursor,conn) prognose = calculate_data.get_select(sql_prognose,cursor,conn) avg = [q[0] for q in avg_kurse] datum_avg = [q[1] for q in avg_kurse] datum_avg =dates.date2num(datum_avg) trainya = calculate_data.train_machine(kurse_training) testinya = calculate_data.get_testing_data(kurse_testing) ################################################### #predict training and testing data --> consistency, validity ################################################## consistency = calculate_data.predict_own(trainya) testing_check = calculate_data.predict_own(testinya) sigma_training = calculate_data.get_sigma(consistency,[q[1] for q in calculate_data.training_predictions_and_dates_list]) #print sigma_training #plot.plot_own_forecast_line_2(consistency, [q[0] for q in calculate_data.training_predictions_and_dates_list],sigma_training,'green',ax,fig) konsitenz = [consistency, [q[0] for q in calculate_data.training_predictions_and_dates_list]] konsistenz_sigma = sigma_training sigma_testing = calculate_data.get_sigma(testing_check,[q[1] for q in calculate_data.testing_predictions_and_dates_list]) #print sigma_testing #plot.plot_own_forecast_line_2(testing_check, [q[0] for q in calculate_data.testing_predictions_and_dates_list],sigma_testing,'yellow',ax,fig) validity = [testing_check, [q[0] for q in calculate_data.testing_predictions_and_dates_list]] validity_sigma = sigma_testing ################################# predict future prognose_kurs = calculate_data.get_future_data(prognose) predictions = calculate_data.predict_own(prognose_kurs) mittelwert = calculate_data.get_mittelwert_2(predictions) Varianz_prog = calculate_data.get_varianz(mittelwert,[q[1] for q in calculate_data.forecast_predictions_and_dates_list]) sigma_prog = np.sqrt(Varianz_prog) #print sigma_prog #plot.plot_own_forecast_line_2(predictions, [q[0] for q in calculate_data.forecast_predictions_and_dates_list],sigma_prog,'red',ax,fig) prognosis = [predictions, [q[0] for q in calculate_data.forecast_predictions_and_dates_list]] prognosis_sigma = sigma_prog #plot analysten prognosen zum vergleich #plot.plot_future([q[1] for q in calculate_data.forecast_predictions_and_dates_list],[q[0] for q in calculate_data.forecast_predictions_and_dates_list],'yellow',ax,fig) #plot.plot_avg(datum_avg,avg,ax,fig) #plot.show_plot(ax,fig) training_konfidenz_intervall_95_sigma_oben = [[(q+ 1.9600 * konsistenz_sigma) for q in consistency], [q[0] for q in calculate_data.training_predictions_and_dates_list]] training_konfidenz_intervall_95_sigma_unten = [[(q- 1.9600 * konsistenz_sigma) for q in consistency], [q[0] for q in calculate_data.training_predictions_and_dates_list]] testing_konfidenz_intervall_95_sigma_oben = [[(q+ 1.9600 * validity_sigma) for q in validity], [q[0] for q in calculate_data.testing_predictions_and_dates_list]] testing_konfidenz_intervall_95_sigma_unten = [[(q- 1.9600 * validity_sigma) for q in validity], [q[0] for q in calculate_data.testing_predictions_and_dates_list]] prognose_konfidenz_intervall_95_sigma_oben = [[(q+ 1.9600 * prognosis_sigma) for q in prognosis], [q[0] for q in calculate_data.forecast_predictions_and_dates_list]] prognose_konfidenz_intervall_95_sigma_unten = [[(q- 1.9600 * prognosis_sigma) for q in prognosis], [q[0] for q in calculate_data.forecast_predictions_and_dates_list]] tats_kurse_datum = [datum_avg,avg] prognosekurse_analysten_datum = [[q[1] for q in calculate_data.forecast_predictions_and_dates_list],[q[0] for q in calculate_data.forecast_predictions_and_dates_list]] training_unsere_vorhersage_linie = [consistency, [q[0] for q in calculate_data.training_predictions_and_dates_list]] testing_unsere_vorhersage_linie = [testing_check, [q[0] for q in calculate_data.testing_predictions_and_dates_list]] prognose_unsere_vorhersage_linie = [predictions, [q[0] for q in calculate_data.forecast_predictions_and_dates_list]] result_set = [] result_set.append(training_konfidenz_intervall_95_sigma_oben) result_set.append(training_konfidenz_intervall_95_sigma_unten) result_set.append(testing_konfidenz_intervall_95_sigma_oben) result_set.append(testing_konfidenz_intervall_95_sigma_unten) result_set.append(prognose_konfidenz_intervall_95_sigma_oben) result_set.append(prognose_konfidenz_intervall_95_sigma_unten) result_set.append(tats_kurse_datum) result_set.append(prognosekurse_analysten_datum) result_set.append(training_unsere_vorhersage_linie) result_set.append(testing_unsere_vorhersage_linie) result_set.append(prognose_unsere_vorhersage_linie) result_set.append(konsistenz_sigma) result_set.append(validity_sigma) result_set.append(prognosis_sigma) calculate_data.reset_global_variables() calculate_data.initialize_global_variables() return result_set