def test_initialize(self): database = Database() number_cruncher = NumberCruncher(database.snapshots) self.assertTrue(len(number_cruncher.snapshots) > 0)
from Classes.Database import Database from Classes.HTMLWriter import HTMLWriter from Classes.DataCollector import DataCollector from Classes.NumberCruncher import NumberCruncher data_collector = DataCollector() data_collector.collect_data() data_collector.export_content() database = Database() number_cruncher = NumberCruncher(database.snapshots) number_cruncher.write_bias_graph_to_csv("bias_graph.csv") html_writer = HTMLWriter() html_writer.write("predictit-forecasting.html") print("MainDriver run complete!")
def test_averages(self): database = Database("data_logs_tests/test_2") number_cruncher = NumberCruncher(database.snapshots) graph = number_cruncher.graph average_bias = graph.points[1].average_bias self.assertTrue(0.01 >= average_bias >= -0.01)
def test_resolve_to_yes(self): database = Database("data_logs_tests/test_1") number_cruncher = NumberCruncher(database.snapshots) graph = number_cruncher.graph self.assertTrue(graph.points[1].average_bias == -0.5)
def test_graph_has_points(self): database = Database() number_cruncher = NumberCruncher(database.snapshots) graph = number_cruncher.graph points = graph.points self.assertTrue(len(points) > 0)
from datetime import timedelta from Classes.ExperimentTwoDataObject import ExperimentTwoDataObject from Classes.Database import Database from Classes.NumberCruncher import NumberCruncher from Classes.ExperimentOneDataObject import ExperimentOneDataObject import matplotlib.pyplot as plt database = Database() number_cruncher = NumberCruncher(database.snapshots) closed_markets_dict = number_cruncher.get_markets_that_closed_on_end_date() threshold = 0.89 viable_contracts_close = [] agg_profits = [] num_num_contracts = [] agg_percent_profits = [] lookback = 60 for day in range(0, lookback): agg_profit = 0.0 agg_current_price = 0.0 agg_close_price = 0.0 num_contracts = 0 for closed_market_id, closed_market_date in closed_markets_dict.items(): proceed = True lookback_date = closed_market_date - timedelta(days=day) try: closed_market_pre_close = number_cruncher.market_lookup( closed_market_id, lookback_date) except KeyError: proceed = False
from Classes.Database import Database from Classes.NumberCruncher import NumberCruncher from Classes.ExperimentOneDataObject import ExperimentOneDataObject import matplotlib.pyplot as plt database = Database() number_cruncher = NumberCruncher(database.snapshots) closed_markets = number_cruncher.get_markets_that_closed_on_end_date() # Declare experiment outputs and parameters percent_profit = [] num_num_data_points = [] days_to_check = 60 for day in range(0, days_to_check): data_objects = [ ExperimentOneDataObject(x, y, day, database) for x, y in closed_markets.items() ] agg_prices_close = 0.0 agg_prices_pre_close = 0.0 num_data_points = 0 for data_object in data_objects: if data_object.price_pre_close is not None and data_object.price_close is not None: agg_prices_pre_close += data_object.price_pre_close agg_prices_close += data_object.price_close num_data_points += 1 percent_profit.append(agg_prices_pre_close / agg_prices_close)