Archived
ЧТО: code/ (стенд и методы), results/ (сводки), charts/ (3 графика), reports/ (издержки, плацебо, по годам), docs/REJECTED.md. ПОЧЕМУ: цель — найти кандидатов на 5м или доказать с цифрами их отсутствие. КАК ПРОВЕРЕНО: движок сверен с прод-движком TON-бота 1:1; плацебо и рандом-контроль в отчёте; бутстрап по дням.
29 lines
1.4 KiB
Bash
Executable File
29 lines
1.4 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Прогон банка методов. Каждый метод — ОТДЕЛЬНЫМ процессом (иначе OOM на 250 парах),
|
|
# уже посчитанные строки пропускаются (results/rows/<метод><тег>.csv), затем мейкер и слияние.
|
|
set -u
|
|
cd /opt/data/work/screener5m || exit 1
|
|
LOG=reports/methods_run.log
|
|
METHODS=(xs_reversal_15m xs_momentum_15m hour_xs_reversal xs_reversal_costaware intraday_momentum
|
|
lead_lag_btc pairs_btc_eth ou_ema_revert ou_ema_costaware vwap_revert clv_flow
|
|
liquidity_sweep vol_breakout prod_mr_5m)
|
|
echo "=== СТАРТ $(date '+%H:%M:%S') ===" >> "$LOG"
|
|
for mode in taker maker; do
|
|
tag=""; flag=""
|
|
if [ "$mode" = "maker" ]; then tag="_maker"; flag="--maker"; fi
|
|
for m in "${METHODS[@]}"; do
|
|
row="results/rows/${m}${tag}.csv"
|
|
if [ -f "$row" ]; then
|
|
echo "--- пропуск $mode $m (строка уже есть)" >> "$LOG"
|
|
continue
|
|
fi
|
|
echo "--- $mode $m $(date '+%H:%M:%S')" >> "$LOG"
|
|
.venv/bin/python tools/methods.py $flag "$m" >> "$LOG" 2>&1 || echo "!!! $mode $m упал" >> "$LOG"
|
|
done
|
|
done
|
|
echo "=== СЛИЯНИЕ $(date '+%H:%M:%S') ===" >> "$LOG"
|
|
.venv/bin/python tools/merge_rows.py >> "$LOG" 2>&1
|
|
.venv/bin/python tools/merge_byyear.py >> "$LOG" 2>&1
|
|
.venv/bin/python tools/make_report.py >> "$LOG" 2>&1
|
|
echo "=== ГОТОВО $(date '+%H:%M:%S') ===" >> "$LOG"
|