System Logs

Total: 19225 Errors
Clear
Time Level Category Symbol Source Message
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 613658), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 655913), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 655919)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 613658), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 649755), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 649763)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 613658), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 643050), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 643058)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 613658), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 636758), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 636765)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 613658), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 630540), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 630547)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 INFO order order_tracker_service 📋 Order 42277739866882048 FILLED (source=polling): NFLX entry qty=10 price=$77.93 pnl=$0.00
02-18 23:00:14 INFO order tiger_client Order 42277739866882048 Tiger data: avgFillPrice=77.929, filledQuantity=10, totalQuantity=10, realizedPnl=0, commission=2.98, reason=, order_type=LMT, outside_rth=True
02-18 23:00:14 INFO order tiger_client Order 42277739866882048 available attributes: ['account', 'action', 'active', 'adjust_limit', 'algo_params', 'algo_strategy', 'attr_desc', 'attr_list', 'aux_price', 'avg_fill_price', 'can_modify', 'charges', 'combo_type', 'combo_type_desc', 'commission', 'contract', 'contract_legs', 'discount', 'expire_time', 'external_id', 'filled', 'filled_cash_amount', 'filled_scale', 'gst', 'id', 'is_open', 'is_partially_filled', 'latest_price', 'limit_price', 'liquidation', 'order_id', 'order_legs', 'order_time', 'order_type', 'orders', 'outside_rth', 'parent_id', 'percent_offset', 'quantity', 'quantity_scale', 'realized_pnl', 'reason', 'refund_cash_amount', 'remaining', 'secret_key', 'source', 'status', 'sub_ids', 'time_in_force', 'to_dict', 'total_cash_amount', 'trade_time', 'trading_session_type', 'trail_stop_price', 'trailing_percent', 'update_time', 'user_mark']
02-18 23:00:14 ERROR order order_tracker_service ❌ Error in handle_fill_event for 42277739866882048: Failed to create Position for NFLX paper 2026-02-18 after 5 attempts
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 232469), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 263884), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 263893)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 232469), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 258079), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 258086)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 232469), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 252317), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 252323)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 232469), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 246297), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 246304)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 232469), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 240298), 'updated_at': datetime.datetime(2026, 2, 18, 23, 0, 14, 240305)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 23:00:14 INFO order order_tracker_service 📋 Order 42277739866882048 FILLED (source=polling): NFLX entry qty=10 price=$77.93 pnl=$0.00
02-18 23:00:14 INFO order tiger_client Order 42277739866882048 Tiger data: avgFillPrice=77.929, filledQuantity=10, totalQuantity=10, realizedPnl=0, commission=2.98, reason=, order_type=LMT, outside_rth=True
02-18 23:00:14 INFO order tiger_client Order 42277739866882048 available attributes: ['account', 'action', 'active', 'adjust_limit', 'algo_params', 'algo_strategy', 'attr_desc', 'attr_list', 'aux_price', 'avg_fill_price', 'can_modify', 'charges', 'combo_type', 'combo_type_desc', 'commission', 'contract', 'contract_legs', 'discount', 'expire_time', 'external_id', 'filled', 'filled_cash_amount', 'filled_scale', 'gst', 'id', 'is_open', 'is_partially_filled', 'latest_price', 'limit_price', 'liquidation', 'order_id', 'order_legs', 'order_time', 'order_type', 'orders', 'outside_rth', 'parent_id', 'percent_offset', 'quantity', 'quantity_scale', 'realized_pnl', 'reason', 'refund_cash_amount', 'remaining', 'secret_key', 'source', 'status', 'sub_ids', 'time_in_force', 'to_dict', 'total_cash_amount', 'trade_time', 'trading_session_type', 'trail_stop_price', 'trailing_percent', 'update_time', 'user_mark']
02-18 23:00:13 INFO order tiger_client Retrieved 0 filled orders
02-18 23:00:13 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 23:00:13 INFO order tiger_client Retrieved 0 filled orders
02-18 23:00:13 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 23:00:13 INFO order tiger_client Retrieved 2 filled orders
02-18 23:00:13 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 23:00:13 INFO order tiger_client Retrieved 2 filled orders
02-18 23:00:13 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 23:00:13 WARN trailing_stop trailing_stop_scheduler ⚠️ Qty mismatch for NFLX (real): DB trailing_stop=1.0, Tiger=4
02-18 23:00:13 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.93 -> 78.23
02-18 23:00:13 INFO position trailing_stop_engine 📊 Syncing quantity for NFLX: 1.0 -> 4
02-18 23:00:12 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.94 -> 77.95
02-18 23:00:12 INFO trailing_stop trailing_stop_scheduler 🔄 Full sync: Processing 2 active trailing stop positions (API verification)
02-18 23:00:12 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 23:00:12 INFO position tiger_client Getting positions for symbol: all
02-18 23:00:12 WARN trailing_stop trailing_stop_scheduler ⚠️ Qty mismatch for NFLX (real): DB trailing_stop=1.0, Tiger=4
02-18 23:00:12 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.93 -> 78.23
02-18 23:00:12 INFO position trailing_stop_engine 📊 Syncing quantity for NFLX: 1.0 -> 4
02-18 23:00:12 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.94 -> 77.95
02-18 23:00:12 INFO trailing_stop trailing_stop_scheduler 🔄 Full sync: Processing 2 active trailing stop positions (API verification)
02-18 23:00:12 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 23:00:12 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465
02-18 23:00:12 INFO position tiger_client Getting positions for symbol: all
02-18 23:00:12 INFO position tiger_client Getting positions for symbol: all
02-18 23:00:11 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465
02-18 23:00:11 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:49 INFO position holdings_sync Holdings sync [paper]: 0 new, 1 updated, 0 removed, 1 total
02-18 22:59:49 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 22:59:49 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:48 INFO position holdings_sync Holdings sync [real]: 0 new, 1 updated, 0 removed, 1 total
02-18 22:59:48 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465
02-18 22:59:48 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:46 INFO position holdings_sync Holdings sync [paper]: 0 new, 1 updated, 0 removed, 1 total
02-18 22:59:46 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 22:59:45 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:45 INFO position holdings_sync Holdings sync [real]: 0 new, 1 updated, 0 removed, 1 total
02-18 22:59:45 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465
02-18 22:59:45 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:36 WARN websocket trailing_stop_scheduler 🔄 Auto re-subscribed symbols with stale WebSocket data: ['NFLX']
02-18 22:59:36 WARN websocket trailing_stop_scheduler 🔄 Auto re-subscribed symbols with stale WebSocket data: ['NFLX']
02-18 22:59:11 ERROR order order_tracker_service ❌ Error in handle_fill_event for 42277739866882048: Failed to create Position for NFLX paper 2026-02-18 after 5 attempts
02-18 22:59:11 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 389947), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 462037), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 462043)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:11 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 389947), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 455071), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 455078)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:11 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 389947), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 441635), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 441643)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:11 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 389947), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 423652), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 423662)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:11 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 389947), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 403240), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 11, 403249)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:11 INFO order order_tracker_service 📋 Order 42277739866882048 FILLED (source=polling): NFLX entry qty=10 price=$77.93 pnl=$0.00
02-18 22:59:11 INFO order tiger_client Order 42277739866882048 Tiger data: avgFillPrice=77.929, filledQuantity=10, totalQuantity=10, realizedPnl=0, commission=2.98, reason=, order_type=LMT, outside_rth=True
02-18 22:59:11 INFO order tiger_client Order 42277739866882048 available attributes: ['account', 'action', 'active', 'adjust_limit', 'algo_params', 'algo_strategy', 'attr_desc', 'attr_list', 'aux_price', 'avg_fill_price', 'can_modify', 'charges', 'combo_type', 'combo_type_desc', 'commission', 'contract', 'contract_legs', 'discount', 'expire_time', 'external_id', 'filled', 'filled_cash_amount', 'filled_scale', 'gst', 'id', 'is_open', 'is_partially_filled', 'latest_price', 'limit_price', 'liquidation', 'order_id', 'order_legs', 'order_time', 'order_type', 'orders', 'outside_rth', 'parent_id', 'percent_offset', 'quantity', 'quantity_scale', 'realized_pnl', 'reason', 'refund_cash_amount', 'remaining', 'secret_key', 'source', 'status', 'sub_ids', 'time_in_force', 'to_dict', 'total_cash_amount', 'trade_time', 'trading_session_type', 'trail_stop_price', 'trailing_percent', 'update_time', 'user_mark']
02-18 22:59:10 ERROR order order_tracker_service ❌ Error in handle_fill_event for 42277739866882048: Failed to create Position for NFLX paper 2026-02-18 after 5 attempts
02-18 22:59:10 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 952300), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 984427), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 984432)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:10 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 952300), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 979184), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 979190)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:10 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 952300), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 973560), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 973566)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:10 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 952300), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 966932), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 966938)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:10 WARN trailing_stop position_service 🔁 Position key collision for NFLX_2026-02-18_1 (paper), retrying with next sequence: (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "ix_position_position_key" DETAIL: Key (position_key)=(NFLX_2026-02-18_1) already exists. [SQL: INSERT INTO position (position_key, symbol, account_type, trade_date, sequence_number, side, status, total_entry_quantity, total_exit_quantity, avg_entry_price, avg_exit_price, realized_pnl, commission, trailing_stop_id, opened_at, closed_at, created_at, updated_at) VALUES (%(position_key)s, %(symbol)s, %(account_type)s, %(trade_date)s, %(sequence_number)s, %(side)s, %(status)s, %(total_entry_quantity)s, %(total_exit_quantity)s, %(avg_entry_price)s, %(avg_exit_price)s, %(realized_pnl)s, %(commission)s, %(trailing_stop_id)s, %(opened_at)s, %(closed_at)s, %(created_at)s, %(updated_at)s) RETURNING position.id] [parameters: {'position_key': 'NFLX_2026-02-18_1', 'symbol': 'NFLX', 'account_type': 'paper', 'trade_date': datetime.date(2026, 2, 18), 'sequence_number': 1, 'side': 'long', 'status': 'OPEN', 'total_entry_quantity': 0, 'total_exit_quantity': 0, 'avg_entry_price': None, 'avg_exit_price': None, 'realized_pnl': None, 'commission': None, 'trailing_stop_id': None, 'opened_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 952300), 'closed_at': None, 'created_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 959991), 'updated_at': datetime.datetime(2026, 2, 18, 22, 59, 10, 959999)}] (Background on this error at: https://sqlalche.me/e/20/gkpj)
02-18 22:59:10 INFO order order_tracker_service 📋 Order 42277739866882048 FILLED (source=polling): NFLX entry qty=10 price=$77.93 pnl=$0.00
02-18 22:59:10 INFO order tiger_client Order 42277739866882048 Tiger data: avgFillPrice=77.929, filledQuantity=10, totalQuantity=10, realizedPnl=0, commission=2.98, reason=, order_type=LMT, outside_rth=True
02-18 22:59:10 INFO order tiger_client Order 42277739866882048 available attributes: ['account', 'action', 'active', 'adjust_limit', 'algo_params', 'algo_strategy', 'attr_desc', 'attr_list', 'aux_price', 'avg_fill_price', 'can_modify', 'charges', 'combo_type', 'combo_type_desc', 'commission', 'contract', 'contract_legs', 'discount', 'expire_time', 'external_id', 'filled', 'filled_cash_amount', 'filled_scale', 'gst', 'id', 'is_open', 'is_partially_filled', 'latest_price', 'limit_price', 'liquidation', 'order_id', 'order_legs', 'order_time', 'order_type', 'orders', 'outside_rth', 'parent_id', 'percent_offset', 'quantity', 'quantity_scale', 'realized_pnl', 'reason', 'refund_cash_amount', 'remaining', 'secret_key', 'source', 'status', 'sub_ids', 'time_in_force', 'to_dict', 'total_cash_amount', 'trade_time', 'trading_session_type', 'trail_stop_price', 'trailing_percent', 'update_time', 'user_mark']
02-18 22:59:10 INFO order tiger_client Retrieved 0 filled orders
02-18 22:59:10 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 22:59:10 INFO order tiger_client Retrieved 0 filled orders
02-18 22:59:10 INFO order tiger_client Retrieved 2 filled orders
02-18 22:59:10 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 22:59:10 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 22:59:09 INFO order tiger_client Retrieved 2 filled orders
02-18 22:59:09 INFO order tiger_client Getting filled orders from 2026-02-17 to 2026-02-18
02-18 22:59:09 WARN trailing_stop trailing_stop_scheduler ⚠️ Qty mismatch for NFLX (real): DB trailing_stop=1.0, Tiger=4
02-18 22:59:09 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.93 -> 78.23
02-18 22:59:09 INFO position trailing_stop_engine 📊 Syncing quantity for NFLX: 1.0 -> 4
02-18 22:59:09 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.94 -> 77.95
02-18 22:59:09 INFO trailing_stop trailing_stop_scheduler 🔄 Full sync: Processing 2 active trailing stop positions (API verification)
02-18 22:59:09 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 22:59:09 WARN trailing_stop trailing_stop_scheduler ⚠️ Qty mismatch for NFLX (real): DB trailing_stop=1.0, Tiger=4
02-18 22:59:09 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.93 -> 78.23
02-18 22:59:09 INFO position trailing_stop_engine 📊 Syncing quantity for NFLX: 1.0 -> 4
02-18 22:59:09 INFO sync trailing_stop_engine 📊 Syncing avg cost for NFLX: 77.94 -> 77.95
02-18 22:59:09 INFO trailing_stop trailing_stop_scheduler 🔄 Full sync: Processing 2 active trailing stop positions (API verification)
02-18 22:59:09 INFO position tiger_client Position: NFLX, Qty: 10, Cost: 78.227
02-18 22:59:08 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:08 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:07 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465
02-18 22:59:07 INFO position tiger_client Getting positions for symbol: all
02-18 22:59:07 INFO position tiger_client Position: NFLX, Qty: 4, Cost: 77.9465