我正在尝试使用 xtb api 关闭订单。但我仍然收到错误
An exception occured: SE199: Internal error
并且我不知道这个错误意味着什么。
public void Sell(long? orderNumber)
{
TradesResponse tradesResponse = APICommandFactory.ExecuteTradesCommand(connector, true);
TradeRecord tradeRecordToClose = null;
foreach (TradeRecord tradeRecord in tradesResponse.TradeRecords)
{
if (tradeRecord.Order2 == orderNumber)
{
tradeRecordToClose = tradeRecord;
}
}
TradeTransInfoRecord tradeTransInfoRecord = new(
TRADE_OPERATION_CODE.BUY,
TRADE_TRANSACTION_TYPE.ORDER_CLOSE,
tradeRecordToClose.Close_price.GetValueOrDefault(),
0.0,
0.0,
tradeRecordToClose.Symbol,
0.1,
tradeRecordToClose.Order.GetValueOrDefault(),
"close trade",
0
);
var test = APICommandFactory.ExecuteTradeTransactionCommand(connector, tradeTransInfoRecord, true);
}
我正在按照文档中所示的方式进行操作。但没有成功。 数量是硬编码的,但它与现有订单中的数量相对应。我刚刚从服务器收到错误响应,但我不知道为什么。感谢您的任何提示。
错误SE199:内部错误意味着服务器端出现意外问题,导致您的命令无法执行。发生这种情况的原因有多种,例如:
• 服务器过载或正在维护。您可以使用 ping 命令或 serverTime 命令检查服务器的状态。您还可以联系 XTB 支持团队报告问题并获取更多信息。
• 命令无效或不完整。您可以检查 tradeTransaction 命令和 TradeTransInfoRecord 对象的语法和参数。您还可以使用 tradeTransactionStatus 命令来获取错误和请求的详细信息。
• 帐户或订单无效或授权。您可以使用登录命令和 getMarginLevel 命令检查帐户的凭据和权限。您还可以使用 getTrades 命令和 getTradeRecords 命令检查订单的状态和详细信息。
要解决此问题,您还可以通过将配置键 xtb.api.debug 设置为 true 来启用 XTB API 的调试模式。这将在日志中打印有关错误和请求详细信息的更多信息。