This commit is contained in:
Cryptoval Trading Technologies 2026-02-02 00:51:22 +00:00
parent a821e8f7a8
commit 487573a64b
8 changed files with 57 additions and 13 deletions

12
.env
View File

@ -1,5 +1,17 @@
CREDS_FILE=/config/.creds CREDS_FILE=/config/.creds
# ==================================== daily_ohlcv
OHLCV_IMAGE_VERSION=1.0.7
OHLCV_CONFIG_FILE=http://cloud16.cvtt.vpn:6789/apps/md/ohlcv_recorder/archive_ohlcv
OHLCV_CONFIG_SERVICE=cloud16.cvtt.vpn:6789
OHLCV_MD_DATE=
OHLCV_RSYNC_TARGETS=
OHLCV_RSYNC_TARGETS="${OHLCV_RSYNC_TARGETS} cvtt@cloud21.cvtt.vpn:/works/cvtt/md_archive/crypto/olhcv"
OHLCV_RSYNC_TARGETS="${OHLCV_RSYNC_TARGETS} cvtt@hs01.cvtt.vpn:/works/cvtt/md_archive/crypto/olhcv"
OHLCV_ADD_ARGS="--log_stdout"
# ==================================== daily_crypto_md # ==================================== daily_crypto_md
CRYPTO_IMAGE_VERSION=0.0.6 CRYPTO_IMAGE_VERSION=0.0.6
CRYPTO_CONFIG_FILE=http://cloud16.cvtt.vpn:6789/apps/utils/mktdata/daily_md_crypto CRYPTO_CONFIG_FILE=http://cloud16.cvtt.vpn:6789/apps/utils/mktdata/daily_md_crypto

View File

@ -7,6 +7,29 @@
name: daily_mktdata_services name: daily_mktdata_services
services: services:
daily_ohlcv:
image: cloud16.cvtt.vpn:5543/daily_ohlcv:${OHLCV_IMAGE_VERSION}
container_name: daily_ohlcv
user: ${CVTT_USER:-1001:1001}
pull_policy: always
restart: no
environment:
CONFIG_FILE: ${OHLCV_CONFIG_FILE}
CONFIG_SERVICE: ${OHLCV_CONFIG_SERVICE}
CREDS_FILE: ${CREDS_FILE}
MD_DATE: ${OHLCV_MD_DATE}
RSYNC_TARGETS: ${OHLCV_RSYNC_TARGETS}
LOG_FILE: /logs/%D.daily_ohlcv.log
ADD_ARGS: ${OHLCV_ADD_ARGS:-}
volumes:
- ./config:/config
- ./logs:/logs
- ./config/identity/id_rsa:/home/cvtt/.ssh/id_rsa:ro
- ./config/identity/id_rsa.pub:/home/cvtt/.ssh/id_rsa.pub:ro
daily_crypto_cloud28: daily_crypto_cloud28:
image: cloud16.cvtt.vpn:5543/daily_crypto_md:${CRYPTO_IMAGE_VERSION} image: cloud16.cvtt.vpn:5543/daily_crypto_md:${CRYPTO_IMAGE_VERSION}
container_name: ${CRYPTO_CONTAINER_NAME_PFX}.cloud28 container_name: ${CRYPTO_CONTAINER_NAME_PFX}.cloud28

View File

@ -92,7 +92,7 @@ get_equity_retrofit_dates() {
local day_count=${3:-} local day_count=${3:-}
if [[ -z "$host" || -z "$filename_glob" || -z "$day_count" ]]; then if [[ -z "$host" || -z "$filename_glob" || -z "$day_count" ]]; then
echo "usage: get_equity_retrofit_dates <host> <root_dir> <filename_glob> <day_count>" >&2 echo "usage: get_equity_retrofit_dates <host> <filename_glob> <day_count>" >&2
return 1 return 1
fi fi

View File

@ -26,7 +26,9 @@ for dt in ${DATES}; do
echo $dt echo $dt
Cmd="CRYPTO_MD_DATE=${dt}" Cmd="CRYPTO_MD_DATE=${dt}"
Cmd+=" /usr/bin/docker compose" Cmd+=" /usr/bin/docker compose"
Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml run --rm" Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml"
Cmd+=" -p daily_crypto_${SourceHost}"
Cmd+=" run --rm"
Cmd+=" daily_crypto_${SourceHost}" Cmd+=" daily_crypto_${SourceHost}"
echo ${Cmd} echo ${Cmd}

View File

@ -10,7 +10,7 @@ Source=cvtt@${MD_HOST:-cloud21.cvtt.vpn}
FileGlob=${FILE_GLOB:-${DEFAULT_FGLOB}} FileGlob=${FILE_GLOB:-${DEFAULT_FGLOB}}
BackDaysCount=${BACKDAYS_COUNT:-50} BackDaysCount=${BACKDAYS_COUNT:-50}
Cmd="get_equity_retrofit_dates ${Source} /works/cvtt/md_archive/equity/alpaca_md/2025/N/NVDA ${FileGlob} ${BackDaysCount}" Cmd="get_equity_retrofit_dates ${Source} /works/cvtt/md_archive/equity/alpaca_md/2025/N/NVDA/${FileGlob} ${BackDaysCount}"
echo $Cmd echo $Cmd
DATES=$($Cmd) DATES=$($Cmd)
@ -19,7 +19,9 @@ for dt in ${DATES}; do
echo $dt echo $dt
Cmd="EQUITY_HBAR_DATE=${dt}" Cmd="EQUITY_HBAR_DATE=${dt}"
Cmd+=" /usr/bin/docker compose" Cmd+=" /usr/bin/docker compose"
Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml run --rm" Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml"
Cmd+=" -p daily_equity_hbar"
Cmd+=" run --rm"
Cmd+=" daily_equity_hbar" Cmd+=" daily_equity_hbar"

View File

@ -21,7 +21,9 @@ DATES=$($Cmd)
for dt in ${DATES}; do for dt in ${DATES}; do
Cmd="DAILY_SIM_CRYPTO_DATE=${dt}" Cmd="DAILY_SIM_CRYPTO_DATE=${dt}"
Cmd+=" /usr/bin/docker compose" Cmd+=" /usr/bin/docker compose"
Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml run --rm" Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml"
Cmd+=" -p daily_sim_crypto" # unique network name
Cmd+=" run --rm"
Cmd+=" daily_sim_crypto" Cmd+=" daily_sim_crypto"
echo ${Cmd} echo ${Cmd}

View File

@ -20,7 +20,9 @@ DATES=$($Cmd)
for dt in ${DATES}; do for dt in ${DATES}; do
Cmd="DAILY_SIM_EQUITY_DATE=${dt}" Cmd="DAILY_SIM_EQUITY_DATE=${dt}"
Cmd+=" /usr/bin/docker compose" Cmd+=" /usr/bin/docker compose"
Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml run --rm" Cmd+=" -f /works/docker/daily_mktdata/docker-compose.yml"
Cmd+=" -p daily_sim_equity"
Cmd+=" run --rm"
Cmd+=" daily_sim_equity" Cmd+=" daily_sim_equity"
echo ${Cmd} echo ${Cmd}

15
run.sh
View File

@ -5,14 +5,15 @@ set -euo pipefail
COMPOSE_FILE="/works/docker/daily_mktdata/docker-compose.yml" COMPOSE_FILE="/works/docker/daily_mktdata/docker-compose.yml"
PROJECT_DIR="/works/docker/daily_mktdata" PROJECT_DIR="/works/docker/daily_mktdata"
PROJECT_NAME="daily_mktdata" PROJECT_NAME="daily_mktdata"
NETWORK_NAME="daily_mktdata_default"
SERVICE="${1:?usage: $0 <service-name>}" SERVICE="${1:?usage: $0 <service-name>}"
# Run the service as a one-off job and auto-remove container # Run the service as a one-off job and auto-remove container
exec docker compose \ Cmd=(docker compose)
--project-name "${PROJECT_NAME}" \ Cmd+=(--project-name "${PROJECT_NAME}")
--project-directory "${PROJECT_DIR}" \ Cmd+=(--project-directory "${PROJECT_DIR}")
-f "${COMPOSE_FILE}" \ Cmd+=(-f "${COMPOSE_FILE}")
run --rm --no-deps \ Cmd+=(run --rm --no-deps)
"${SERVICE}" Cmd+=("${SERVICE}")
echo "Running: ${Cmd[*]}"
exec "${Cmd[@]}"