def init_script(config: dict, **kwargs) -> list: """Init Script Arguments: config {dict} -- startup config object to control application Optional Args: release {str} -- 'dev' or 'prod' (default: {'prod'}) Returns: list -- script: dataset, funds, periods, config """ release = kwargs.get('release', 'prod') if release == 'dev': config['process_steps'] = PROCESS_STEPS_DEV elif release == 'prod': config['process_steps'] = PROCESS_STEPS_PROD if config['release'] == True: # Use only after release! print(" ") if release == 'dev': message = f"{HEADER_COLOR}~~~~ DEVELOPMENT VERSION ~~~~ " message += f"[latest functionality, 'unclean' version]{NORMAL_COLOR}" print(message) config = start_header(update_release=_DATE_REVISION_DEV_, version=_DEV_VERSION_, options=True) config['process_steps'] = PROCESS_STEPS_DEV else: if release == 'prod': print( f"{PROD_COLOR}~~~~ PRODUCTION ENVIRONMENT ~~~~{NORMAL_COLOR}") print(" ") if config['state'] == 'halt': return if 'function' in config['state']: # If only simple functions are desired, they go into this handler only_functions_handler(config) return if 'no_index' not in config['state']: config['tickers'] = index_appender(config['tickers']) config['process_steps'] = config['process_steps'] + 2 if 'debug' in config['state']: print(f"{HEADER_COLOR}~~~~ DEBUG MODE ENABLED ~~~~ {NORMAL_COLOR}") # Temporary directories to save graphs as images, etc. remove_temp_dir() configure_temp_dir() dataset, funds, periods, config = download_data_all(config=config) for period in dataset: e_check = {'tickers': config['tickers']} if has_critical_error(dataset[period], 'download_data', misc=e_check): return None return dataset, funds, periods, config
def function_data_download(config: dict) -> list: data, fund_list = download_data(config=config) e_check = {'tickers': config['tickers']} if has_critical_error(data, 'download_data', misc=e_check): return [], [] return data, fund_list