def place_order(stock, amount):
"""根据股票代码是否为科创板,选择不同的下单方式"""
if stock.startswith('688'): # **科创板股票**
# **获取当前市场价格**
current_data = get_current_data()
last_price = current_data[stock].last_price # **最新成交价**
if last_price is None or last_price < = 0:
log.info(f"{stock}: 获取最新价格失败,无法下单")
return
# **设置保护限价**
limit_price = last_price * 1.02 # **保护限价设为当前价格上浮 2%(避免超出涨跌停范围)**
limit_price = min(limit_price, 9999) # **确保不超过 10000 元**
log.info(f"{stock}: 采用限价单下单,价格 {limit_price}")
order(stock, amount, LimitOrderStyle(limit_price)) # **限价单**
else:
# **非科创板,直接使用市价单**
log.info(f"{stock}: 采用市价单下单")
order(stock, amount, MarketOrderStyle())
2025-03-09