MetaEditor 为项目处理提供了许多实用功能。它允许您将文件组织成单一结构,管理项目设置,并通过 MQL5 Algo Forge 与版本控制进行协作。
项目是一个 MQPROJ 文件,它存储设置、参数以及编译 MQL5 应用程序所需的任何信息。
双击 MQPROJ 文件会打开“项目”选项卡,这是一个独立的工作区,便于在导航器中处理项目。此选项卡上所有项目文件和文件夹均按类别排列。
在顶部菜单中,点击“文件”>“新建项目”或按 Ctrl + Shift + N。选择所需的程序类型,并在 MQL5 向导中继续操作。

输入名称和其他详细信息,添加参数,并选择事件处理函数。
该向导还支持创建空项目,以容纳与默认模板不兼容的文件结构。空项目包含一个空白的 MQPROJ 文件,需要您手动创建源代码文件。
右键单击 MQ5 文件,然后选择“从源文件创建新项目”。

目录中将会出现一个同名的新 MQPROJ 项目文件。源代码中通过 #property 指定的主要程序属性将自动添加到项目中,包括名称、版权、版本、开发者网站链接以及程序描述。所有通过 #include 指令包含在源代码中的文件都将添加到项目的“依赖项”部分。
您可以从单独的对话框访问项目的设置,而无需编辑 MQ5 文件源代码。只需在“项目”选项卡上双击 MQPROJ 文件即可。

以下项目设置可用:
当项目文件中指定的属性与源代码中定义的属性发生冲突时,前者具有优先权。
源代码中使用的所有文件都会自动添加到项目导航器中。例如,如果您使用 #include 指令添加了一个新的 MQH 文件,该文件将自动出现在导航器的 “Dependencies” 部分。已使用的头文件被添加到 “Headers” 部分;项目中作为资源(通过 #resource 指令)使用的图像、声音和其他 MQL 程序被添加到 “Resources” 部分。
MQL5 文件及其源代码显示在 “Sources” 部分。其他文件,如用于测试的设置文件和图表模板,可以添加到 “Settings and files” 部分。
您可以使用上下文菜单命令将现有文件添加到项目中或从中删除文件。删除文件时要小心,因为你可能会从项目中移除文件(解除绑定)或将其从磁盘中彻底删除。

“添加现有文件夹”命令可将选定目录中所有支持的文件批量添加到项目中。
手动添加到项目中的文件不会包含在程序代码中,也不会复制到项目目录中。该文件仅链接到要在导航器中显示的项目。
要获取项目的 EX5 可执行文件,请打开项目或程序的主 MQ5 文件,然后运行编译命令(F7)。该文件将在包含 MQPROJ 项目文件的目录中创建。
当您编译组项目时,可执行文件会根据程序类型自动复制到本地的 Experts、Indicators 或 Scripts 目录。这样您就可以在 MetaTrader 中立即运行该程序,而无需手动将其复制到所需目录。
“共享项目”是专门用于协作项目的部分。您在此部分创建的任何项目都将自动推送到在线存储。
要创建新的共享项目,请右键单击 “Shared Projects”,然后选择“新项目”。

然后,在 MQL5 向导中完成标准步骤:设置所需程序的类型、名称和属性。对于协作项目,你应该使用清晰易懂的名称,这样其他参与者就能轻松找到它们。项目名称中只可以使用没有空格的拉丁字符和数字。
创建共享项目完成后,它将以您的名义作为私有存储库出现在 MQL5 Algo Forge 网站上。
您可以选择将存储库设为公开,或授予特定用户访问权限。右键单击项目文件夹,然后选择“共享项目设置”。
将“共享”从“个人项目”更改为一个新选项:

您可以授予特定用户访问权限。点击“添加新用户”,然后输入用户的 MQL5.community 登录名。点击“权限”下拉菜单,即可查看您可以授予用户的可用权限:
公共项目是指可见性设置为公开的存储库。任何 MQL5 用户都可以下载公开项目的文件,将其分叉 以创建自己的副本,与项目所有者或维护者合作,并 提出 代码更改建议。
MetaEditor 中的“公共项目”选项卡正在开发中。作为替代,您可以 浏览 MQL5 Algo Forge 网站上可用的公共项目,该网站就像是算法交易社区的 GitHub。

在您 分叉 一个公共项目后,您的分叉副本将以您的名字出现在网站上,作为一个公共存储库。在 MetaEditor 中克隆分支副本后,它将出现在 “ Shared Projects” 下。
如果你希望将现有项目设置为公开项目,请将其可见性设置为公开。在 MetaEditor 中执行 此操作 ,或按照以下说明在 MQL5 Algo Forge 网站上执行此操作:
打开您的存储库页面,然后点击右上角的“设置”。

取消选中“将存储库设为私有”选项,然后单击“保存设置”。