主力合约回测
This commit is contained in:
@@ -57,7 +57,7 @@ class SimpleLimitBuyStrategy(Strategy):
|
||||
"""
|
||||
每接收到一根Bar时,执行策略逻辑。
|
||||
"""
|
||||
current_portfolio_value = self.context.get_current_portfolio_value(bar)
|
||||
current_portfolio_value = self.context.get_account_cash()
|
||||
# print(f"[{bar.datetime}] Strategy processing Bar. Current close price: {bar.close:.2f}. Current Portfolio Value: {current_portfolio_value:.2f}")
|
||||
|
||||
# 1. 撤销上一根K线未成交的订单
|
||||
@@ -108,16 +108,19 @@ class SimpleLimitBuyStrategy(Strategy):
|
||||
)
|
||||
|
||||
# 通过上下文发送订单
|
||||
trade = self.send_order(order)
|
||||
if trade:
|
||||
print(
|
||||
f"[{bar.datetime}] 策略: 发送并立即成交限价买单 {trade.volume} 股 @ {trade.price:.2f}(open:{bar.open}, close:{bar.close}) (订单ID: {order.id})")
|
||||
# 如果立即成交,_last_order_id 仍然保持 None
|
||||
else:
|
||||
# 如果未立即成交,将订单ID记录下来,以便下一根Bar撤销
|
||||
self._last_order_id = order.id
|
||||
print(
|
||||
f"[{bar.datetime}] 策略: 发送限价买单 {trade_volume} 股 @ {limit_price:.2f} (未成交,订单ID: {order.id} 已挂单)")
|
||||
# trade = self.send_order(order)
|
||||
# if trade:
|
||||
# print(
|
||||
# f"[{bar.datetime}] 策略: 发送并立即成交限价买单 {trade.volume} 股 (open:{bar.open}, close:{bar.close}) (订单ID: {order.id})")
|
||||
# # 如果立即成交,_last_order_id 仍然保持 None
|
||||
# else:
|
||||
# # 如果未立即成交,将订单ID记录下来,以便下一根Bar撤销
|
||||
# self._last_order_id = order.id
|
||||
# print(
|
||||
# f"[{bar.datetime}] 策略: 发送限价买单 {trade_volume} 股 @ {limit_price:.2f} (未成交,订单ID: {order.id} 已挂单)")
|
||||
order = self.send_order(order)
|
||||
if order:
|
||||
print(f"[{bar.datetime}]发送订单 {order.id}, direction {order.direction}")
|
||||
else:
|
||||
# print(f"[{bar.datetime}] 策略: 当前已有持仓或有未成交订单,不重复下单。")
|
||||
pass
|
||||
Reference in New Issue
Block a user