---
title: "MetaTrader 5 build 2980: 交易操作的推送通知 - 更新历史"
description: "如果在您的计算机关闭时在服务器上触发止盈，您将收到来自服务器的平仓通知。 - 更新历史"
image: "https://www.metatrader5.com/c/17/0/terminal-1__58.png"
---

# MetaTrader 5 build 2980: 交易操作的推送通知

## 如果在您的计算机关闭时在服务器上触发止盈，您将收到来自服务器的平仓通知。

18 六月 2021

### 程序端

1. 添加从服务器接收推送通知的功能。即使您的程序端关闭的情况下，您也能收到已执行交易操作的通知。

   ![](https://www.metatrader5.com/c/17/0/terminal-1__58.png)

    在早期版本中，[移动设备的通知](https://www.metatrader5.com/zh/terminal/help/startworking/settings#notifications)只能从交易者桌面程序端发送。交易操作执行后，程序端向设置中指定的MetaQuotes ID发送相关通知。通知只能从正在运行的程序端发送。此要求已被取消。如果在您的计算机关闭时在服务器上触发止盈，您将收到来自服务器的平仓通知。要开始从服务器接收通知，您应该：

     - 拥有真实账户，因为服务器通知不适用于模拟账户
     - 在您的智能手机上安装MetaTrader 5 [iOS](https://www.metatrader5.com/zh/mobile-trading/iphone)或[Android](https://www.metatrader5.com/zh/mobile-trading/android)
     - 在移动端打开消息部分，找到您的[MetaQuotes ID](https://www.metatrader5.com/zh/mobile-trading/iphone/help/settings_messages#my_id)并将其指定在桌面程序端的设置中
     - 在桌面程序端设置中启用服务器通知

   **服务器通知应由您的交易商提供**支持三种通知类型：订单操作、交易操作和结余操作。当您启用该选项时，可用的通知类型将显示在程序端日志中：

    '1222': subscribed to deals, orders, balance notifications from trade server
2. 更新[MetaTrader VPS](https://www.mql5.com/zh/vps)展示。VPS部分变得更加方便：

     - 界面适应任何屏幕宽度。
     - 展示区占用的垂直空间更少，以适应工作区域。
     - 必要的信息仅在需要时出现。付款详细信息仅在您选择付款计划后显示。

   ![](https://www.metatrader5.com/c/17/0/terminal-2__50.png)

   程序端：在策略测试面板中，添加用于快速切换到MQL5服务和工具箱窗口的命令。这些命令仅显示在“概览”部分，而在其他选项卡中，该面板用于管理测试。

   ![](https://www.metatrader5.com/c/17/0/terminal-3__42.png)
3. 为MQL5服务添加窗口状态的保存。如果您在关闭程序端之前将市场保持打开状态，相关窗口将在您下次启动程序端时打开。
4. 修正定期同步MQL5账户状态。由于出现错误，信号复制在某些情况下可能会失败。
5. 修正显示一系列推荐的市场产品。
6. 修正导航器中的信号快捷菜单。您可以使用菜单查看您订阅的信号或取消订阅信号。

### MQL5

1. 修正在标准程序库(file MQL5\Include\Math\Alglib\complex.mqh)中实现复数时的"-"运算符错误。
2. 现在您可以在初始化序列中使用任何表达式，而不仅仅是常量表达式。这可以提高可用性和与C++代码的兼容性。

   ```
   struct POINT   {    int x,y;   }; int GetYFunc(y)   {    return(y * y);   } void SomeFunction(int x1,int x2,int y)   {    POINT pt={ x1+x2, GetYFunc(y) };    ProcessPoint(pt);   };
   ```
3. 修正在以大量数据数组编译[union](https://www.mql5.com/zh/docs/basis/types/classes#union)时发生的错误。
4. 修正[StringToCharArray](https://www.mql5.com/zh/docs/convert/stringtochararray)函数操作。现在它将整个传递的字符串转换为Char数组，而不是在第一个终止[null字符](https://en.wikipedia.org/wiki/Null-terminated_string)处停止。
5. 如果类/结构的父类没有默认构造函数，则添加对类/结构的构造函数调用的显式存在的控制。

### MetaEditor

1. 在[分析工具](https://www.metatrader5.com/zh/metaeditor/help/development/profiling)报告中添加显示内联函数的调用位置。在下面示例中，func();调用现在突出显示如下：

   ![](https://www.metatrader5.com/c/17/0/metaeditor-1__15.png)

    func函数本身不会突出显示，因为它的完整代码位于OnStart中。
2. 添加创建空[项目](https://www.metatrader5.com/zh/metaeditor/help/mql5storage/projects)的功能。对于具有默认模板不适合的特定文件结构的非标准开发项目，这是一个有用的功能。

   ![](https://www.metatrader5.com/c/17/0/metaeditor-2__15.png)

    在这种情况下，将创建一个空设置文件"mqproj"。应手动创建源代码文件。
3. 实现快速启动MetaEditor。
4. 修正[调试](https://www.metatrader5.com/zh/metaeditor/help/development/debug)期间观察表达式列表中的数据显示。在某些条件下，该列表可能会显示不正确的变量值。
5. 修正将".py"扩展名自动添加到使用MQL向导创建的[Python](https://www.metatrader5.com/zh/metaeditor/help/development/python)脚本文件的问题。

更新文档。

**请参阅前面的新闻：**

- [MetaTrader 5 Build 2940: 在主工作区MQL5服务的显示布局及更新设计](https://www.metatrader5.com/zh/releasenotes/terminal/2196)
- [MetaTrader 5 build 2875：其他改进和修复](https://www.metatrader5.com/zh/releasenotes/terminal/2190)
- [MetaTrader 5 build 2860：增强改进Wine和SQL集成](https://www.metatrader5.com/zh/releasenotes/terminal/2188)
- [MetaTrader 5 build 2815: 从Python访问市场深度，改进调试器和分析工具](https://www.metatrader5.com/zh/releasenotes/terminal/2186)
- [MetaTrader 5 build 2755：弹出价格窗口和改善调试器](https://www.metatrader5.com/zh/releasenotes/terminal/2180)
