X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FTrader.git;a=blobdiff_plain;f=main.py;h=856d449fc16cf94263c81ad45b11bcb406a12ce0;hp=37f485d15c8008aaf8e1fdbc97f99e5f0cd8822a;hb=dc1ca9a306f09886c6c57f8d426c59a9d084b2b3;hpb=81d1db5117b61c2bb9f114cfc59f015e97c6eb9b diff --git a/main.py b/main.py index 37f485d..856d449 100644 --- a/main.py +++ b/main.py @@ -117,6 +117,8 @@ def parse_args(argv): parser.add_argument("--action", action='append', help="Do a different action than trading (add several times to chain)") + parser.add_argument("--parallel", action='store_true', default=True, dest="parallel") + parser.add_argument("--no-parallel", action='store_false', dest="parallel") args = parser.parse_args(argv) @@ -139,8 +141,15 @@ def main(argv): pg_config, report_path = parse_config(args.config) - for market_config, user_id in fetch_markets(pg_config, args.user): - process(market_config, user_id, report_path, args) + if args.parallel: + import threading + market.Portfolio.start_worker() + + for market_config, user_id in fetch_markets(pg_config, args.user): + threading.Thread(target=process, args=[market_config, user_id, report_path, args]).start() + else: + for market_config, user_id in fetch_markets(pg_config, args.user): + process(market_config, user_id, report_path, args) if __name__ == '__main__': # pragma: no cover main(sys.argv[1:])