#!/bin/bash # runs in container # -------------------------------------------------------------------------- #[program:trader_alpaca] #directory=/home/cvtt/prod #command=/home/cvtt/.pyenv/python3.10-venv/bin/python3 # -u /home/cvtt/prod/cvttpy/apps/trader_app.py # --config=http://cloud16.cvtt.vpn:6789/apps/cvtt_eqt_alpac # --active_exchanges=ALPACA_SNDBX-MDPORTAL # --book=ALPACA_BK02 # # --dynamic_instruments=ALPACA_SNDBX # --algo=TRDALGO_MOOMOC_01 # --admin_port=7226 # --log_level=INFO # --log_file=/home/cvtt/prod/logs/%%T.TRADER_APP.log # runs on host to start container usage() { echo -n "Usage: $0" echo -n " -b " echo -n " -A (dflt: TRDALGO_001)" echo -n " [-c ]" echo -n " [-e ]" echo -n " [-a "] echo exit 1 } # ConfigServer=cloud16.cvtt.vpn ConfigServer=cloud23.cvtt.vpn:6789 ActiveExchanges=ALPACA_SNDBX-MDPORTAL AdminPort=7226 Algo=TRDALGO_001 Book="" while getopts ":b:c:e:a:" opt; do case ${opt} in c ) ConfigServer=$OPTARG ;; e ) ActiveExchanges=$OPTARG ;; a ) AdminPort=$OPTARG ;; b ) Book=$OPTARG ;; A ) Algo=$OPTARG ;; \? ) echo "Invalid option: -$OPTARG" >&2 usage ;; : ) echo "Option -$OPTARG requires an argument." >&2 usage ;; esac done if [ "${Book}" == "" ]; then echo "Book is missing" usage fi Cmd="python3.10" Cmd="${Cmd} cvttpy/apps/trader_app.py" Cmd="${Cmd} --config=http://${ConfigServer}/apps/cvtt_eqt_alpaca" Cmd="${Cmd} --credentials_file=/.creds" Cmd="${Cmd} --book=${Book}" Cmd="${Cmd} --algo=${Algo}" Cmd="${Cmd} --allow_dynamic_exch_inst" Cmd="${Cmd} --active_exchanges=${ActiveExchanges}" Cmd="${Cmd} --admin_port=${AdminPort}" Cmd="${Cmd} --log_file=/logs/%T.TRADER.${Book}.log" Cmd="${Cmd} --compress_log" echo ${Cmd} eval ${Cmd}