fix: update position queries to use new trading_days schema

Changes:
- Update get_today_init_position_from_db to query trading_days table
- Remove obsolete add_no_trade_record_to_db calls from BaseAgent
- Simplify _handle_trading_result (trading_day record handles both scenarios)

Root Cause:
- Code was still querying old positions table after schema migration
- The add_no_trade_record_to_db function is obsolete in new schema

New Schema Behavior:
- trading_day record created at session start (regardless of trading)
- trading_day record updated at session end with final results
- No separate "no-trade" record needed

Impact:
- Fixes: "no such table: positions" error in get_today_init_position_from_db
- Removes unnecessary database writes for no-trade scenarios
- Simplifies codebase by removing obsolete function calls

Related: tools/price_tools.py:340-364, agent/base_agent/base_agent.py:661-673
This commit is contained in:
2025-11-04 22:49:01 -05:00
parent 9da65c2d53
commit 7c71a047bc
2 changed files with 12 additions and 27 deletions

View File

@@ -660,8 +660,6 @@ Summary:"""
async def _handle_trading_result(self, today_date: str) -> None:
"""Handle trading results with database writes."""
from tools.price_tools import add_no_trade_record_to_db
if_trade = get_config_value("IF_TRADE")
if if_trade:
@@ -669,23 +667,10 @@ Summary:"""
print("✅ Trading completed")
else:
print("📊 No trading, maintaining positions")
# Get context from runtime config
job_id = get_config_value("JOB_ID")
session_id = self.context_injector.session_id if self.context_injector else None
if not job_id or not session_id:
raise ValueError("Missing JOB_ID or session_id for no-trade record")
# Write no-trade record to database
add_no_trade_record_to_db(
today_date,
self.signature,
job_id,
session_id
)
write_config_value("IF_TRADE", False)
# Note: In new schema, trading_day record is created at session start
# and updated at session end, so no separate no-trade record needed
def register_agent(self) -> None:
"""Register new agent, create initial positions"""