38 lines
1.1 KiB
Python
38 lines
1.1 KiB
Python
from loguru import logger
|
|
|
|
from ops.transform import DataTransformer
|
|
from ops.fetch import DataFetcher
|
|
|
|
|
|
|
|
# INITIALIZE
|
|
data_fetcher = DataFetcher()
|
|
data_transformer = DataTransformer()
|
|
|
|
|
|
# FETCH AND PERSIST
|
|
tickers = data_fetcher.get_ticker_list(market="TR")
|
|
|
|
if data_fetcher.check_for_persistent_data():
|
|
dfs_cv, dfs_ohlc = data_fetcher.load_from_pickle()
|
|
|
|
else:
|
|
raw_data = data_fetcher.get_historicals_for(ticker_list=tickers)
|
|
ohlcs_data = data_fetcher.generate_ohlcs_per_ticker(combined_data=raw_data)
|
|
data_fetcher.persist_into_pickle(
|
|
combined_data={"closes": raw_data["Adj Close"], "volumes": raw_data["Volume"]},
|
|
ohcls_per_ticker=ohlcs_data
|
|
)
|
|
df_cv, df_ohlc = data_fetcher.load_from_pickle()
|
|
|
|
# TODO: validation yaz (hist_data ve ohlcs_data için) ve burada validate edip logger.success bas
|
|
logger.success("historical data preprocessing is done")
|
|
|
|
# Refactor Note:
|
|
# removed this b/c backtesting.py format only require OHLC, gonna transform later
|
|
#portf_closediffs = data_transformer.calc_diffs(portf_closes)
|
|
#data_fetcher.persist_into_pickle({"portf_closediffs": portf_closediffs})
|
|
|
|
|
|
|