# Edit this file to introduce tasks to be run by cron.
#
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command


SHELL=/bin/bash
LOGDIR=/data/log
REPORTS=/home/prod/gqr/model/model/utils/reports/
UTILS=/home/prod/gqr/model/model/utils

MODEL_ROOT=/home/prod/gqr/model/
MODEL_BRANCH=model
PYTHONE=/home/prod/miniconda3/envs/env1/bin/python
DATAPROC=/home/prod/gqr/DataProc/DataProc
GQR_ENV=/home/prod/gqr/extra/env
PYTHONPATH=/home/prod/gqr/DataProc

######################## START AWS DELETION JOBS #########
0 2 * * * ${PYTHONE} ${GQR_ENV}/prune_aws_backups_by_plan.py --backup-plan-name "prod-EGProd1-backup" --region us-west-2 --no-dry-run 2>&1
0 2 * * * ${PYTHONE} ${GQR_ENV}/prune_aws_backups_by_plan.py --backup-plan-name "refinitiv-server-bkup" --region us-west-2 --no-dry-run 2>&1
0 2 * * * ${PYTHONE} ${GQR_ENV}/prune_aws_backups_by_plan.py --backup-plan-name "gqr-sql-server-bkup" --region us-west-2 --no-dry-run 2>&1
0 2 * * * ${PYTHONE} ${GQR_ENV}/prune_aws_backups_by_plan.py --backup-plan-name "prod-server1-bkup" --region us-west-2 --no-dry-run 2>&1
######################## END AWS DELETION JOBS #########

######################## START CRON JOBS MOVED FROM OLD PROD #########

15 8 15 6,12 *  ${PYTHONE} ${DATAPROC}/QAD/Ds2Views.py             > ${LOGDIR}/QAD.Ds2Views.crontab  2>&1
16 8 15 6,12 *  ${PYTHONE} ${DATAPROC}/QAD/RKDViews.py             > ${LOGDIR}/QAD.RKDViews.crontab  2>&1
17 8 15 6,12 *  ${PYTHONE} ${DATAPROC}/QAD/TREViews.py             > ${LOGDIR}/QAD.TREViews.crontab  2>&1

######################## END CRON JOBS MOVED FROM OLD PROD #########

# Run the GS Stability files daily at this time. Since we are not sure when GS writes today's file we will get files from 2 days ago till today. We need files before the optimizer runs, Since they send files many times during the day we will 
# run this job twice once just before the optimizer starts and one when we receive the actual GS_China_Connect_IN files

0 2 * * * source /home/prod/gqr/live_model.env && ${PYTHONE} ${DATAPROC}/PBData/process_gs_stability_files.py --start_date $(date -d '2 days ago' +\%Y-\%m-\%d) --end_date $(date +\%Y-\%m-\%d)
0 14 * * * source /home/prod/gqr/live_model.env && ${PYTHONE} ${DATAPROC}/PBData/process_gs_stability_files.py --start_date $(date -d '2 days ago' +\%Y-\%m-\%d) --end_date $(date +\%Y-\%m-\%d)

#  alpha T0, 1pm, 4pm each day (now not Friday..) 20250827.. looks like fri is back but no sunday.. 
55 12 * * 0-5   /usr/bin/cp ${LOGDIR}/alpha_report.crontab ${LOGDIR}/alpha_report.crontab.ydy
00 13,16,18,23 * * 0-5      ${PYTHONE} ${REPORTS}/alpha_report.py  > ${LOGDIR}/alpha_report.crontab  2>&1
00 21 * * *        ${PYTHONE} ${REPORTS}/alpha_join_fwd.py --acf -re=ALL,HK,SZ,SS,T > ${LOGDIR}/alpha_join_fwd.crontab  2>&1

# detailed tradelist file.  T+1 each Sun thru Thu @ 17:00ET 
55 16 * * 0-4      /usr/bin/cp ${LOGDIR}/detailed_tradelist_report.BY_EXCH.crontab ${LOGDIR}/detailed_tradelist_report.BY_EXCH.crontab.ydy
55 16 * * 0-4      /usr/bin/cp ${LOGDIR}/detailed_tradelist_report.ALL.crontab ${LOGDIR}/detailed_tradelist_report.ALL.crontab.ydy
00 17 * * 0-4      ${PYTHONE} ${REPORTS}/detailed_tradelist_report.py --by_exch > ${LOGDIR}/detailed_tradelist_report.BY_EXCH.crontab  2>&1
00 17 * * 0-4      ${PYTHONE} ${REPORTS}/detailed_tradelist_report.py  > ${LOGDIR}/detailed_tradelist_report.ALL.crontab  2>&1

# universe response file, T+1 each Sun thru Thu @ 16:20ET 
15 16 * * 0-4      /usr/bin/cp ${LOGDIR}/universe_report.crontab ${LOGDIR}/universe_report.crontab.ydy
20 16 * * 0-4      ${PYTHONE} ${REPORTS}/universe_report.py > ${LOGDIR}/universe_report.crontab  2>&1

# EG eod file scrape.  each T Mon thru Fri, at about 7am :)
55 6 * * 1-5       /usr/bin/cp ${LOGDIR}/process_eod_EG.write_GQR_files.crontab ${LOGDIR}/process_eod_EG.write_GQR_files.crontab.ydy
00 7 * * 1-5       ${PYTHONE} ${UTILS}/process_eod_EG.write_GQR_files.py > ${LOGDIR}/process_eod_EG.write_GQR_files.crontab  2>&1

# Exec Fill/shortfall reports
59 20 * * *         /usr/bin/cp ${LOGDIR}/shortfall_report.crontab ${LOGDIR}/shortfall_report.crontab.ydy
00 21 * * *         ${PYTHONE} ${REPORTS}/shortfall_report.py > ${LOGDIR}/shortfall_report.crontab  2>&1

# PERISCOPE + BASE.  Combine target files and send EOD portfolio report
35 15 * * 0-4       ${UTILS}/BOX_TGTS_COMB.sh  > ${LOGDIR}/BOX_TGTS_COMB.sh.crontab  2>&1

5 12 * * 4 /usr/bin/crontab -l > /home/prod/crontab.out
