将交易写入文本文件

Write transactions to text file

我想将所有交易记录写入一个文本文件。我用OrderSend()控制的很简单。如果交易因止损或止盈而被系统终止交易,我不知道如何让交易写入。是否可以捕获这些交易并将它们写入 CSV?

所有关于过去订单的信息都可以在订单历史中找到。

您需要先使用 OrderSelect() select 您想要的订单,语法如下:

  bool  OrderSelect(
    int     index,            // index or order ticket
    int     select,           // flag
    int     pool=MODE_TRADES  // mode
    );

然后您可以使用 OrderClosePrice() OrderCloseTime() 接收该订单的任何信息;订单利润();等等

本例returns仓位12的订单的开仓时间、平仓时间和盈利(亏损则为负数)

if(OrderSelect(12,SELECT_BY_POS,MODE_HISTORY)==true)
{
      datetime ctm=OrderOpenTime();
      if(ctm>0) Print("Open time for the order 12 ", ctm);
      ctm=OrderCloseTime();
      if(ctm>0) Print("Close time for the order 12 ", ctm);
      Print("Profit for the order 12 ",OrderProfit());
}
else
     Print("OrderSelect failed error code is",GetLastError());

OrderSelect 还允许您 select 通过打开订单时所拥有的票号来订购订单。

如果您查看 mql4 的参考文档,您将详细了解这些类型命令的语法。