mirror of
https://github.com/silencesdg/mt5_python_ea_suite.git
synced 2026-08-06 23:47:55 +00:00
feat: 一票制并发锁 + MT5硬止损兜底
- 一票制: _pending_long/_pending_short 计数器防同一周期内多信号穿透 - 硬止损: MT5下单时附带sl/tp,倍率1.5x(止损)/1.3x(止盈),比EA软止损更宽 - config.py: 新增 hard_sl_multiplier/hard_tp_multiplier - 全部 send_order 链路(abc/remote/live/server/dryrun/backtest) 支持 sl/tp 参数 - 对冲模块: 彻底移除 - 日志: 去重+30轮摘要
This commit is contained in:
+4
-1
@@ -68,6 +68,8 @@ class OrderRequest(BaseModel):
|
||||
symbol: str
|
||||
order_type: str
|
||||
volume: float
|
||||
sl: float = None # ★ 硬止损价格
|
||||
tp: float = None # ★ 硬止盈价格
|
||||
|
||||
class CloseRequest(BaseModel):
|
||||
ticket: int
|
||||
@@ -146,7 +148,8 @@ def api_symbol(symbol: str):
|
||||
def api_order(req: OrderRequest):
|
||||
_ensure_connected()
|
||||
with _lock:
|
||||
result = _provider.send_order(req.symbol, req.order_type, req.volume)
|
||||
result = _provider.send_order(req.symbol, req.order_type, req.volume,
|
||||
sl=req.sl, tp=req.tp)
|
||||
if result is None:
|
||||
return JSONResponse(status_code=503, content={"error": "下单失败"})
|
||||
return serialize_order_result(result)
|
||||
|
||||
Reference in New Issue
Block a user