feat: add position-aware conditions to StockCondition #171

Closed
opened 2026-02-20 08:23:30 +09:00 by agentson · 0 comments
Collaborator

문제

StockCondition이 순수 기술적 지표(RSI, 거래량비율, 가격)만 지원.
AI가 '보유 5일 이상 + 미실현손익 +3% 이상이면 SELL' 규칙을 생성해도 평가 불가.

구현

  1. StockCondition에 필드 추가:
    • unrealized_pnl_pct_above: float | None
    • unrealized_pnl_pct_below: float | None
    • holding_days_above: int | None
    • holding_days_below: int | None
  2. ScenarioEngine.evaluate_condition()에 새 필드 평가 추가
  3. trading_cycle에서 market_data에 unrealized_pnl_pct, holding_days 추가
  4. AI 프롬프트 스키마에 새 조건 필드 예시 추가

테스트

  • test_evaluate_condition_unrealized_pnl_above
  • test_evaluate_condition_unrealized_pnl_below
  • test_evaluate_condition_holding_days_above
  • test_market_data_enriched_with_position_info
## 문제 StockCondition이 순수 기술적 지표(RSI, 거래량비율, 가격)만 지원. AI가 '보유 5일 이상 + 미실현손익 +3% 이상이면 SELL' 규칙을 생성해도 평가 불가. ## 구현 1. StockCondition에 필드 추가: - unrealized_pnl_pct_above: float | None - unrealized_pnl_pct_below: float | None - holding_days_above: int | None - holding_days_below: int | None 2. ScenarioEngine.evaluate_condition()에 새 필드 평가 추가 3. trading_cycle에서 market_data에 unrealized_pnl_pct, holding_days 추가 4. AI 프롬프트 스키마에 새 조건 필드 예시 추가 ## 테스트 - test_evaluate_condition_unrealized_pnl_above - test_evaluate_condition_unrealized_pnl_below - test_evaluate_condition_holding_days_above - test_market_data_enriched_with_position_info
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jihoson/The-Ouroboros#171