修复趋势回调顺势加仓的交易记录
This commit is contained in:
@@ -47,6 +47,11 @@ from fib_key_monitor_lib import (
|
||||
key_signal_type_for_trade_record,
|
||||
stored_key_signal_type,
|
||||
)
|
||||
from strategy_trade_labels import (
|
||||
STRATEGY_ENTRY_REASON_OPTIONS,
|
||||
entry_reason_for_monitor_type,
|
||||
trade_record_monitor_type as resolve_trade_record_monitor_type,
|
||||
)
|
||||
from okx_orders_lib import cancel_okx_all_open_orders, fetch_okx_all_open_orders
|
||||
from journal_chart_lib import (
|
||||
JOURNAL_CHART_DEFAULT_LIMIT,
|
||||
@@ -946,7 +951,7 @@ ENTRY_REASON_OPTIONS = (
|
||||
"关键位收敛突破",
|
||||
"关键位斐波0.618",
|
||||
"关键位斐波0.786",
|
||||
)
|
||||
) + STRATEGY_ENTRY_REASON_OPTIONS
|
||||
|
||||
STATS_SEGMENT_DEFS = (
|
||||
("all", "全部交易", {"segment": "all"}),
|
||||
@@ -2062,7 +2067,12 @@ def insert_trade_record(
|
||||
close_ts_ms = _to_ms_with_fallback(closed_at_ms, close_ts)
|
||||
kst = key_signal_type_for_trade_record(key_signal_type, KEY_MONITOR_AUTO_TYPES)
|
||||
snap_sl = initial_stop_loss if initial_stop_loss not in (None, "") else stop_loss
|
||||
er = (entry_reason or "").strip() or entry_reason_from_key_signal(kst) or ""
|
||||
er = (
|
||||
(entry_reason or "").strip()
|
||||
or entry_reason_from_key_signal(kst)
|
||||
or entry_reason_for_monitor_type(monitor_type)
|
||||
or ""
|
||||
)
|
||||
conn.execute(
|
||||
"INSERT INTO trade_records (symbol,monitor_type,key_signal_type,direction,trigger_price,stop_loss,initial_stop_loss,take_profit,margin_capital,leverage,pnl_amount,hold_seconds,trade_style,risk_amount,planned_rr,actual_rr,hold_minutes,opened_at,opened_at_ms,closed_at,closed_at_ms,result,miss_reason,exchange_trade_id,entry_reason,trend_plan_id) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)",
|
||||
(
|
||||
@@ -2152,6 +2162,12 @@ def order_row_monitor_type(row):
|
||||
return ORDER_MONITOR_TYPE_MANUAL
|
||||
|
||||
|
||||
def trade_record_monitor_type(conn, row):
|
||||
return resolve_trade_record_monitor_type(
|
||||
conn, row, default_manual=ORDER_MONITOR_TYPE_MANUAL
|
||||
)
|
||||
|
||||
|
||||
def order_row_key_signal_type(row):
|
||||
if row is None:
|
||||
return None
|
||||
@@ -3302,7 +3318,7 @@ def reconcile_external_closes(conn, days=None):
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=r["symbol"],
|
||||
monitor_type=order_row_monitor_type(r),
|
||||
monitor_type=trade_record_monitor_type(conn, r),
|
||||
key_signal_type=order_row_key_signal_type(r),
|
||||
direction=r["direction"],
|
||||
trigger_price=r["trigger_price"],
|
||||
@@ -4843,7 +4859,7 @@ def check_order_monitors():
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=sym,
|
||||
monitor_type=order_row_monitor_type(r),
|
||||
monitor_type=trade_record_monitor_type(conn, r),
|
||||
key_signal_type=order_row_key_signal_type(r),
|
||||
direction=direction,
|
||||
trigger_price=trigger_price,
|
||||
@@ -4901,7 +4917,7 @@ def check_order_monitors():
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=sym,
|
||||
monitor_type=order_row_monitor_type(r),
|
||||
monitor_type=trade_record_monitor_type(conn, r),
|
||||
key_signal_type=order_row_key_signal_type(r),
|
||||
direction=direction,
|
||||
trigger_price=trigger_price,
|
||||
@@ -4969,7 +4985,7 @@ def check_order_monitors():
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=sym,
|
||||
monitor_type=order_row_monitor_type(r),
|
||||
monitor_type=trade_record_monitor_type(conn, r),
|
||||
key_signal_type=order_row_key_signal_type(r),
|
||||
direction=direction,
|
||||
trigger_price=trigger_price,
|
||||
@@ -5034,7 +5050,7 @@ def force_close_before_reset():
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=r["symbol"],
|
||||
monitor_type=order_row_monitor_type(r),
|
||||
monitor_type=trade_record_monitor_type(conn, r),
|
||||
key_signal_type=order_row_key_signal_type(r),
|
||||
direction=direction,
|
||||
trigger_price=trigger_price,
|
||||
@@ -6680,7 +6696,7 @@ def del_order(id):
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=row["symbol"],
|
||||
monitor_type=order_row_monitor_type(row),
|
||||
monitor_type=trade_record_monitor_type(conn, row),
|
||||
key_signal_type=order_row_key_signal_type(row),
|
||||
direction=row["direction"],
|
||||
trigger_price=row["trigger_price"],
|
||||
@@ -6734,7 +6750,7 @@ def del_order(id):
|
||||
insert_trade_record(
|
||||
conn,
|
||||
symbol=row["symbol"],
|
||||
monitor_type=order_row_monitor_type(row),
|
||||
monitor_type=trade_record_monitor_type(conn, row),
|
||||
key_signal_type=order_row_key_signal_type(row),
|
||||
direction=row["direction"],
|
||||
trigger_price=row["trigger_price"],
|
||||
|
||||
Reference in New Issue
Block a user