---
title: "Создание и работа с проектом - Проекты и MQL5 Algo Forge - Справка по MetaEditor"
description: "MetaEditor предоставляет множество возможностей для работы с проектами. Вы можете объединять файлы в единую структуру... - Создание и работа с проектом - Проекты и MQL5 Algo Forge - Справка по MetaEditor"
image: "https://www.metatrader5.com/i/logo_metatrader5.png"
url: "https://www.metatrader5.com/ru/metaeditor/help/mql5storage/projects"
---

[Справка по MetaEditor](https://www.metatrader5.com/ru/metaeditor/help) → [Проекты и MQL5 Algo Forge](https://www.metatrader5.com/ru/metaeditor/help/mql5storage) → Создание и работа с проектом

# Создание и работа с проектом

MetaEditor предоставляет множество возможностей для работы с проектами. Вы можете объединять файлы в единую структуру, управлять настройками проекта и совместно работать над ним с помощью [MQL5 Algo Forge](https://www.metatrader5.com/ru/metaeditor/help/mql5storage) и системы контроля версий.

## Что такое проект

Проект — это файл MQPROJ, в котором хранятся настройки MQL5-программы, параметры компиляции и информация обо всех используемых файлах.

Двойной щелчок по файлу MQPROJ открывает вкладку «Проект» — отдельную рабочую область для удобной работы с проектами в окне Навигатора. На этой вкладке все файлы и папки проекта распределены по категориям.

![Структура и настройки проекта](https://www.metatrader5.com/i/help/metaeditor/ru/project.png)

## Создание проекта [#](#create)

В верхнем меню выберите «Файл \ Новый проект» или нажмите Ctrl+Shift+N. Выберите тип программы и продолжите работу в [Мастере MQL5](https://www.metatrader5.com/ru/metaeditor/help/mql5_wizard).

![Создание нового проекта](https://www.metatrader5.com/i/help/metaeditor/ru/project_new.png)

Укажите название проекта и другие параметры, добавьте входные параметры и выберите обработчики событий.

Мастер также позволяет создавать пустые проекты для размещения файловых структур, которые не соответствуют стандартным шаблонам. Пустой проект содержит только файл MQPROJ и требует самостоятельного создания файлов исходного кода.

## Создание проекта на основе MQ5-файла [#](#create_source)

Щелкните правой кнопкой мыши по файлу и выберите «Новый проект из исходного кода».

![Создание нового проекта на основе исходного файла](https://www.metatrader5.com/i/help/metaeditor/ru/project_from_source.png)

В каталоге появится новый файл проекта MQPROJ с тем же именем. В проект автоматически добавятся основные свойства программы, указанные в виде #property в исходном файле: имя, копирайт, версия, ссылка на разработчика и описание. Все файлы, включенные в исходный код при помощи директивы #include, будут добавлены в раздел "Dependencies" проекта.

## Свойства проект [#](#properties)

Настройки проекта можно изменять в отдельном диалоговом окне, не редактируя исходный код MQ5-файла. Для этого дважды щелкните файл MQPROJ на вкладке «Проект».

![Структура и настройки проекта](https://www.metatrader5.com/i/help/metaeditor/ru/project.png)

Для проекта доступны следующие настройки:

- Платформа — версия платформы, для которой разрабатывается продукт: MetaTrader 4 или MetaTrader 5.
- Тип программы — вид программы: советник (торговый робот), индикатор, скрипт или библиотека.
- Копирайт — информация об авторских правах, аналогично свойству "#property copyright ..." в исходном коде.
- Ссылка — ссылка на разработчика, аналогично свойству "#property link ..." в исходном коде.
- Версия — версия программы, аналогично свойству "#property version ..." в исходном коде.
- Иконка — иконка программы, аналогично свойству "#property icon ..." в исходном коде.
- Описание — описание программы, аналогично свойству "#property description ..." в исходном коде.
- CPU — оптимизация компиляции под определенные наборы инструкций процессора: X64 Regular, AVX, AVX2 + FMA3, AVX512 + FMA3.
- Максимальная оптимизация — при включении этой опции приложения выполняются быстрее.
- Проверять вещественные делители — приложения с отключенной проверкой работают несколько быстрее, поскольку ошибки деления на ноль не проверяются при исполнении кода.
- Использовать кэш оптимизации — при выполнении оптимизации тестер стратегий сохраняет все результаты выполненных проходов в кэш. Результаты сохраняются для каждого набора входных параметров. При повторной оптимизации на тех же параметрах это позволяет брать готовые результаты без затрат времени на повторные вычисления. Но для некоторых задач — например, при математических вычислениях — может потребоваться проводить расчеты независимо от наличия готовых результатов. В этом случае отключите в проекте опцию "Использовать кэш оптимизации". При этом сами результаты тестирования все равно будут сохраняться в кэше, чтобы вы могли посмотреть все данные по выполненным проходам в отчете тестера стратегий.
- Рассчитывать индикатор на каждом тике в тестере — эта опция доступна только для проектов индикаторов. Она принудительно включает их расчет на каждом тике при работе в тестере стратегий. Настройка влияет только на работу в тестере стратегий. Непосредственно в платформе индикаторы всегда рассчитываются при поступлении каждого нового тика.При тестировании советников, использующих индикаторы, тестер стратегий рассчитывает значения индикатора только при обращении к его данным, то есть при запросе значений буферов индикатора. Это дает существенное ускорение при тестировании и оптимизации, если эксперту не требуется получать значения индикатора на каждом тике. Включите эту опцию, если индикатор должен рассчитываться на каждом тике.В тестере стратегий индикаторы также рассчитываются принудительно на каждом тике в следующих случаях:

- при тестировании в визуальном режиме
- при наличии в индикаторе функций EventChartCustom, OnChartEvent, OnTimer
- если индикатор создан компилятором с номером билда ниже 1916

- Показывать окно подтверждения перед запуском скрипта — предотвращает случайный запуск скрипта.
- Показывать окно свойств перед запуском скрипта — позволяет просмотреть и изменить входные параметры перед запуском скрипта.

> Если свойства, указанные в файле проекта, отличаются от свойств, заданных в исходном коде, приоритет имеют значения из файла проекта.

## Добавление и удаление файлов из проекта [#](#add_delete_files)

Все файлы, используемые в исходном коде, автоматически добавляются в структуру проекта. Например, если подключить новый MQH-файл с помощью директивы #include, он будет автоматически показан в разделе "Dependencies" навигатора. В раздел "Headers" будут добавляться используемые заголовочные файлы, а в раздел "Resources" — изображения, звуки и другие MQL-программы, включенные в проект в виде ресурсов (директива #resource).

В разделе Sources показываются файлы с исходным кодом. В раздел Settings and files можно добавлять другие файлы, например, настройки для тестирования или шаблоны для графиков.

Для добавления существующих файлов в проект вручную и удаления из него файлов воспользуйтесь командами контекстного меню. Будьте внимательны при удалении: вы можете убрать файл из проекта (убрать привязку) или полностью удалить его с жесткого диска.

![Добавление и удаление файлов из проекта](https://www.metatrader5.com/i/help/metaeditor/ru/project_add_delete_files.png)

Команда "Добавить существующую папку" позволяет массово добавить в проект все поддерживаемые файлы из выбранного каталога.

> При добавлении файла в проект вручную он не включается каким-либо образом в код программы и не копируется в каталог проекта. Файл только привязывается к проекту для отображения в его навигаторе.

## Компиляция проекта [#](#compile)

Для получения исполняемого файла EX5 вы можете открыть либо проект, либо основной MQ5-файл программы, а затем выполнить команду компиляции (F7). Исполняемый файл будет создан в каталоге, где находится файл проекта MQPROJ.

> Для удобства работы при компиляции группового проекта конечный исполняемый файл (EX5) автоматически копируется в папку Experts, Indicators или Scripts в зависимости от типа программы. Таким образом, вы сразу можете запустить программу в терминале без ее ручного копирования в нужный каталог.

## Групповые проекты [#](#shared)

Shared Projects — специальный раздел для совместной работы над проектами. Любой проект, созданный в этом разделе, автоматически отправляется в онлайн-хранилище.

Для создания нового группового проекта выберите папку Shared Projects и нажмите "Новый проект" в контекстном меню:

![Создание группового проекта](https://www.metatrader5.com/i/help/metaeditor/ru/project_new_shared.png)

Далее пройдите стандартные шаги [Мастера MQL5](https://www.metatrader5.com/ru/metaeditor/help/mql5_wizard): задайте тип, имя и свойства будущей программы. Выбирайте для групповых проектов четкие и понятные имена, чтобы другие участники легко их различали. В имени допускаются только латинские буквы и цифры, пробелы не допускаются.

После создания общий проект появится на сайте MQL5 Algo Forge как приватный репозиторий под вашим аккаунтом.

### Изменение видимости общих проектов [#](#changing_visibility)

Вы можете сделать репозиторий публичным или предоставить доступ к нему определенным пользователям. Щелкните правой кнопкой мыши папку проекта и выберите «Свойства публичного проекта».

В поле «Доступ» вместо «Приватный проект» выберите нужный вариант:

- Приватный проект — доступ к проекту есть только у автора.
- Свободное участие в проекте — присоединиться к проекту может любой пользователь.
- Участие в проекте по запросу — для получения доступа к проекту необходимо отправить запрос автору

![Настройка доступа к групповому проекту](https://www.metatrader5.com/i/help/metaeditor/ru/project_settings.png)

Также можно предоставить доступ отдельному пользователю. Нажмите «добавить нового пользователя» и укажите его логин MQL5.community. В раскрывающемся списке «Права» выберите уровень доступа:

- Чтение — пользователь может видеть все данные проекта и скачивать файлы проекта.
- Чтение и запись — пользователь может видеть все данные проекта, скачивать файлы проекта и вносить в них изменения.
- Администратор — пользователь получает все права уровня записи и чтение, а также дополнительно может управлять списком участников проекта.

## Публичные проекты [#](#public)

Публичный проект — это репозиторий, для которого установлена публичная видимость. Любой пользователь MQL5 может скачать файлы публичного проекта, создать его [форк](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_merging#forking_projects), чтобы получить собственную копию, работать вместе с владельцем или сопровождающими проекта и [предлагать](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_merging#creating_pull_requests) изменения в коде.

Вкладка «Публичные проекты» в MetaEditor находится в разработке. Доступные публичные проекты вы можете [просматривать](https://forge.mql5.io/explore/repos) на [сайте MQL5 Algo Forge](https://forge.mql5.io/) — аналоге GitHub для сообщества разработчиков алгоритмических торговых систем.

![Сайт публичных проектов](https://www.metatrader5.com/i/help/metaeditor/ru/explore_projects_website.png)

После создания [форка](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_merging#forking_projects) публичного проекта его копия появится на сайте как публичный репозиторий в вашем аккаунте. После клонирования форка в MetaEditor он появится в разделе [Shared Projects](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/projects#shared).

### Изменение видимости проектов

Чтобы сделать существующий проект публичным, измените его настройки видимости. Это можно сделать с помощью [специальной команды](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/projects#changing_visibility) непосредственно в MetaEditor или на сайте MQL5 Algo Forge:

На странице репозитория нажмите «Настройки» в правом верхнем углу.

![Страница настроек репозитория](https://www.metatrader5.com/i/help/metaeditor/ru/repository_page_settings.png)

Снимите флажок «Частный репозиторий» и нажмите «Сохранить настройки».

![Изменение настроек репозитория](https://www.metatrader5.com/i/help/metaeditor/ru/repository_visibility_settings_page.png)

## In this section

- [Подключение MQL5 Algo Forge](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_connect)
- Создание и работа с проектом
- [Работа с MQL5 Algo Forge](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_working)
- [Просмотр истории проекта](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_diff)
- [Совместная работа и слияние версий](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_merging)
- [Внешний клиент Git](https://www.metatrader5.com/ru/metaeditor/help/mql5storage/mql5storage_external_client)

```json
{"@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ {"@type": "ListItem", "position": 1, "item": {"@id": "https://www.metatrader5.com/ru/metaeditor/help", "name": "Справка по MetaEditor"}}, {"@type": "ListItem", "position": 2, "item": {"@id": "https://www.metatrader5.com/ru/metaeditor/help/mql5storage", "name": "Проекты и MQL5 Algo Forge"}}, {"@type": "ListItem", "position": 3, "item": {"@id": "https://www.metatrader5.com/ru/metaeditor/help/mql5storage/projects", "name": "Создание и работа с проектом"}} ]}
{ "@context": "https://schema.org", "@type": "FAQPage", "mainEntity": [{ "@type": "Question", "name": "MetaTrader 5: Создание и работа с проектом", "acceptedAnswer": { "@type": "Answer", "text": "MetaEditor предоставляет множество возможностей для работы с проектами. Вы можете объединять файлы в единую структуру, управлять настройками..." } }] }
```
