From 34c006e3600670c41af34f681a891dd1d822532d Mon Sep 17 00:00:00 2001 From: "Bobby (aider)" Date: Tue, 11 Feb 2025 17:43:49 -0800 Subject: [PATCH] refactor: Reorder TradingPlan dataclass fields to comply with Python requirements --- src/trading/trading_plan.py | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/src/trading/trading_plan.py b/src/trading/trading_plan.py index dd53c98..fd600f2 100644 --- a/src/trading/trading_plan.py +++ b/src/trading/trading_plan.py @@ -36,11 +36,6 @@ class TradingPlan: # General Info plan_name: str status: PlanStatus - created_at: datetime = None - updated_at: datetime = None - id: int = None - - # Strategy Definition timeframe: Timeframe market_focus: MarketFocus entry_criteria: str @@ -51,35 +46,30 @@ class TradingPlan: trade_frequency: TradeFrequency market_conditions: str indicators_used: str - - # Trade Execution Rules entry_confirmation: str position_sizing: float maximum_drawdown: float max_trades_per_day: int max_trades_per_week: int - - # Risk Management total_risk_per_trade: float max_portfolio_risk: float adjustments_for_drawdown: str risk_controls: str + plan_author: str - # Performance Tracking + # Fields with default values must come after required fields + created_at: datetime = None + updated_at: datetime = None + id: int = None + strategy_version: int = 1 win_rate: Optional[float] = None average_return_per_trade: Optional[float] = None profit_factor: Optional[float] = None historical_backtest_results: Optional[str] = None real_trade_performance: Optional[str] = None - - # Notes & Evolution improvements_needed: Optional[str] = None - strategy_version: int = 1 - plan_author: str trade_review_notes: Optional[str] = None future_testing_ideas: Optional[str] = None - - # Optional fields sector_focus: Optional[str] = None fundamental_criteria: Optional[str] = None options_strategy_details: Optional[str] = None