Path: blob/master/ invest-robot-contest_TradingCompetition2022-main/mainer.py
5925 views
import configparser1import keyTool2from account.AccountBuilder import AccountBuilder3from stock.StockStorage import StockStorage4from session.Session import Session5from tinkoff.invest import Client6from report.Report import ReportBuilder789def main():10""" Start Trading (MAIN point)"""11# Load config and keys12config = configparser.ConfigParser()13config.read('config.ini')14api_token = keyTool.readKeys(config)15app_name = config.get(section='main', option='app_name')1617# Market Session18with Client(api_token, app_name=app_name) as client:19# account for trading20account = AccountBuilder.build_account(client, config)21# Create and storage all stock instance for trading """22stock_storage = StockStorage.collect_stock(client, config, StockStorage())23# Session for trading24session = Session.get_session(account, stock_storage)25# Subscribe to market data26session.subscribe_last_price()27# Trading loop (receive market data and do trading)28session.trading_loop()29# Get result of session3031session_result = session.get_session_result()32report = ReportBuilder.buildSessionResultReport(report_name=session.session_id,33report_source=session_result)34report.save_to_pdf(file_name=session.session_id)353637if __name__ == '__main__':38main()394041