- archive/hermes-dead-tools-20260820/: hermes独有不在cron不被import的111个一次性排查/测试工具 - archive/hermes-dead-tools-20260820/: 4个废弃scanner(btd1_v3/market_scanner/market_thermometer已废弃/s2v2) - archive/legacy-cleanup-20260820/: MoFin根2旧版(mo_models/technical_analysis)+/home/hmo/scripts无引用旧项目+MoFin/scripts重复prepare_report_data - 删除MoFin根mo_models.py(根旧版,deploy/profile-scripts权威保留) - 保留: mofin_db.py/mo_data.py硬链接(server.py多层sys.path需各目录访问同一inode,非冗余) - fix_gateway.py保留(Gateway看门狗fix_gateway_port.py的活跃依赖,勿误删) - 验证: cron所有脚本引用无缺失, key模块import正常 - hermes独有从116收敛到5核心(alert_logger/market_screener/prepare_report_data/self_todo_executor_v2/xmpp_zhiwei_bot)
24 lines
1014 B
Python
24 lines
1014 B
Python
import sqlite3
|
|
conn = sqlite3.connect('/home/hmo/MoFin/data/mofin.db')
|
|
conn.row_factory = sqlite3.Row
|
|
|
|
print('=== 中心 85~110 的活跃自选/持仓 ===')
|
|
rows = conn.execute(
|
|
"SELECT code, name, entry_low, entry_high, decision_type, strategy_type, created_at, updated_at "
|
|
"FROM holding_strategies WHERE status='active' AND entry_low > 0").fetchall()
|
|
found = 0
|
|
for r in rows:
|
|
c = (r['entry_low'] + r['entry_high']) / 2
|
|
if 85 <= c <= 110:
|
|
print(f" {r['code']} {r['name']}: 区{r['entry_low']}~{r['entry_high']} 中心{c:.2f} | {r['decision_type']}/{r['strategy_type']} | created={r['created_at']} updated={r['updated_at']}")
|
|
found += 1
|
|
print(f'共 {found} 只')
|
|
print()
|
|
|
|
# holding_strategies 表结构 + 默认值
|
|
print('=== holding_strategies schema ===')
|
|
sql = conn.execute("SELECT sql FROM sqlite_master WHERE name='holding_strategies'").fetchone()[0]
|
|
for line in sql.split('\n'):
|
|
if '97' in line or 'DEFAULT' in line.upper():
|
|
print(' ', line.strip())
|
|
conn.close() |