Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 14 additions & 2 deletions .github/workflows/sync-cloud-run-env.yml
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,12 @@ jobs:
output.write(
f"requires_strategy_config_path={str(bool(selected.get('requires_strategy_config_path'))).lower()}\n"
)
output.write(
f"config_source_policy={str(selected.get('config_source_policy') or 'none')}\n"
)
output.write(
f"reconciliation_output_policy={str(selected.get('reconciliation_output_policy') or 'none')}\n"
)
PY

- name: Validate env sync inputs
Expand All @@ -114,6 +120,8 @@ jobs:
REQUIRES_SNAPSHOT_ARTIFACTS: ${{ steps.strategy_requirements.outputs.requires_snapshot_artifacts }}
REQUIRES_SNAPSHOT_MANIFEST_PATH: ${{ steps.strategy_requirements.outputs.requires_snapshot_manifest_path }}
REQUIRES_STRATEGY_CONFIG_PATH: ${{ steps.strategy_requirements.outputs.requires_strategy_config_path }}
CONFIG_SOURCE_POLICY: ${{ steps.strategy_requirements.outputs.config_source_policy }}
RECONCILIATION_OUTPUT_POLICY: ${{ steps.strategy_requirements.outputs.reconciliation_output_policy }}
run: |
set -euo pipefail

Expand All @@ -135,8 +143,12 @@ jobs:
required_vars+=(IBKR_FEATURE_SNAPSHOT_MANIFEST_PATH)
fi

if [ "${REQUIRES_STRATEGY_CONFIG_PATH:-}" = "true" ]; then
required_vars+=(IBKR_STRATEGY_CONFIG_PATH IBKR_RECONCILIATION_OUTPUT_PATH)
if [ "${REQUIRES_STRATEGY_CONFIG_PATH:-}" = "true" ] && [ "${CONFIG_SOURCE_POLICY:-}" = "env_only" ]; then
required_vars+=(IBKR_STRATEGY_CONFIG_PATH)
fi

if [ "${RECONCILIATION_OUTPUT_POLICY:-}" = "required" ]; then
required_vars+=(IBKR_RECONCILIATION_OUTPUT_PATH)
fi

missing_vars=()
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ ACCOUNT_GROUP=default
IB_ACCOUNT_GROUP_CONFIG_SECRET_NAME=ibkr-account-groups
IBKR_FEATURE_SNAPSHOT_PATH=/var/data/tech_communication_pullback_enhancement_feature_snapshot_latest.csv
IBKR_FEATURE_SNAPSHOT_MANIFEST_PATH=/var/manifests/tech_communication_pullback_enhancement_feature_snapshot_latest.csv.manifest.json
IBKR_STRATEGY_CONFIG_PATH=/workspace/research/configs/growth_pullback_tech_communication_pullback_enhancement.json
# IBKR_STRATEGY_CONFIG_PATH is optional; the bundled canonical default is used when unset.
IBKR_DRY_RUN_ONLY=true
GLOBAL_TELEGRAM_CHAT_ID=<telegram-chat-id>
NOTIFY_LANG=zh
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ACCOUNT_GROUP=default
IB_ACCOUNT_GROUP_CONFIG_SECRET_NAME=ibkr-account-groups
IBKR_FEATURE_SNAPSHOT_PATH=/var/data/tech_communication_pullback_enhancement_feature_snapshot_latest.csv
IBKR_FEATURE_SNAPSHOT_MANIFEST_PATH=/var/manifests/tech_communication_pullback_enhancement_feature_snapshot_latest.csv.manifest.json
IBKR_STRATEGY_CONFIG_PATH=/workspace/research/configs/growth_pullback_tech_communication_pullback_enhancement.json
# IBKR_STRATEGY_CONFIG_PATH is optional; the bundled canonical default is used when unset.
IBKR_RECONCILIATION_OUTPUT_PATH=/var/log/ibkr_tech_communication_pullback_enhancement_reconciliation.json
IBKR_DRY_RUN_ONLY=true
GLOBAL_TELEGRAM_CHAT_ID=<telegram-chat-id>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ACCOUNT_GROUP=default
IB_ACCOUNT_GROUP_CONFIG_SECRET_NAME=ibkr-account-groups
IBKR_FEATURE_SNAPSHOT_PATH=/var/data/tech_communication_pullback_enhancement_feature_snapshot_latest.csv
IBKR_FEATURE_SNAPSHOT_MANIFEST_PATH=/var/manifests/tech_communication_pullback_enhancement_feature_snapshot_latest.csv.manifest.json
IBKR_STRATEGY_CONFIG_PATH=/workspace/research/configs/growth_pullback_tech_communication_pullback_enhancement.json
# IBKR_STRATEGY_CONFIG_PATH is optional; the bundled canonical default is used when unset.
IBKR_RECONCILIATION_OUTPUT_PATH=/var/log/ibkr_tech_communication_pullback_enhancement_reconciliation.json
IBKR_DRY_RUN_ONLY=true
GLOBAL_TELEGRAM_CHAT_ID=<telegram-chat-id>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ ACCOUNT_GROUP=default
IB_ACCOUNT_GROUP_CONFIG_SECRET_NAME=ibkr-account-groups
IBKR_FEATURE_SNAPSHOT_PATH=/var/data/tech_communication_pullback_enhancement_feature_snapshot_latest.csv
IBKR_FEATURE_SNAPSHOT_MANIFEST_PATH=/var/manifests/tech_communication_pullback_enhancement_feature_snapshot_latest.csv.manifest.json
IBKR_STRATEGY_CONFIG_PATH=/workspace/research/configs/growth_pullback_tech_communication_pullback_enhancement.json
# IBKR_STRATEGY_CONFIG_PATH is optional; the bundled canonical default is used when unset.
IBKR_RECONCILIATION_OUTPUT_PATH=/var/log/ibkr_tech_communication_pullback_enhancement_reconciliation.json
IBKR_DRY_RUN_ONLY=false
GLOBAL_TELEGRAM_CHAT_ID=<telegram-chat-id>
Expand Down
20 changes: 20 additions & 0 deletions research/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Research Notes

This directory keeps IBKR-side research artifacts that are still useful for
current live strategy review.

Live strategy behavior is owned by `UsEquityStrategies`, platform runtime
configuration, and the snapshot pipeline repositories. Historical IBKR-local
research files that used retired TQQQ, SOXL/SOXX, growth-pullback, or
stock-alpha assumptions have been removed so they are not reused as current
performance references.

Current retained research:

- `backtest_video_qqq_tqqq_dual_drive.py`
- `results/video_qqq_tqqq_dual_drive_comparison.csv`
- `results/video_qqq_tqqq_dual_drive_recommendation.json`
- `results/video_qqq_tqqq_dual_drive_summary.md`

Use `UsEquitySnapshotPipelines` outputs when reviewing snapshot-backed live
strategy performance.
80 changes: 0 additions & 80 deletions research/README_stock_alpha.md

This file was deleted.

Loading