Нужен советник по моей стратегии

MQL5 Experts

Spécifications

  • Сама стратегия будет предоставлена разработчику после того как будут согласованы все пункты описаные ниже.

  • Качество кода: Работа должна содержать чистый код с комментариями на английском языке.

  • Организация структур: Все структуры должны содержать только простые типы данных. Для оптимального выравнивания памяти данные внутри структур должны быть организованы от самого большого типа к самому малому. Допускается использование статических массивов простых типов внутри структур.

  • Типы данных: Массивы и переменные должны быть только простых типов.

  • Входные параметры: Все input -параметры должны использоваться в коде через единую структуру, поля которой дублируют входные параметры.

  • Глобальные переменные: * Использование автономных глобальных и статических переменных запрещено.

    • Если без глобального состояния не обойтись, все такие переменные должны быть собраны в структуру и использоваться только через неё.

  • Парадигма программирования: Использование классов и объектов (ООП) запрещено. Код должен быть написан строго в стиле функционального программирования.

  • Интерфейс и графика: Использование графических объектов на графике и расчеты на их основе в логике советника запрещены.

  • Индикаторы: Вызов стандартных и ка с томных индикаторов через iCustom или встроенные функции MQL запрещен. Все необходимые индикаторы должны быть полностью реализованы (написаны с нуля) внутри кода советника.

  • Информация о символе: Данные из SymbolInfo , относящиеся к торговому инструменту, должны быть занесены в структуру и инициализированы один раз в специальной функции. В коде должны использоваться данные только из этой структуры.

  • Тиковые данные: Текущая рыночная информация должна храниться в структуре типа MqlTick , которая заполняется в самом начале функции OnTick . Все расчеты должны использовать данные только из этой структуры.

  • Работа с временем:

    • Тип данных datetime полностью исключен; вместо него используется только тип int .

    • Получение текущего времени допускается только из структуры MqlTick последнего пришедшего тика.

    • Использование стандартных функций MQL для работы с временем (например, TimeCurrent() , TimeToStruct() и др.) не допускается .

    • Запрещённые типы данных: color, double. Вместо double всегда использовать float.

    • Использование ArraySetAsSeries(rates,true) запрещено.

  • История: Получение исторической информации (баров) — только с использованием структуры MqlRates .

  • Единицы измерения: Все дистанции и отступы измеряются в SYMBOL_TRADE_TICK_SIZE .

  • Оптимизация производительности:

    • Использовать умножение вместо деления везде, где это возможно.

    • Использовать сложные условия вместо множественных вложенных if .

    • Избегать вложенных циклов везде, где это возможно.

  • Логирование: Все важные события, торговые операции и ошибки должны выводиться в журнал с помощью функции Print() . Сообщения должны быть информативными и на английском языке. Запрещено использовать функции Alert() , MessageBox() или любые другие, прерывающие работу или требующие взаимодействия с пользователем.

  • Стиль кода: Названия функций с маленькой буквы camelCase, названия переменных snake_case. SCREAMING_SNAKE_CASE для констант.

  • Описание кода: Каждая функция должна иметь краткое описание, которое должно содержать об щее описание, описание аргументов и возвращаемого значения.

  • Библиотеки: Если в предоставленной базе кода (codebase) есть аналог стандартной функции MQL, необходимо использовать версию из базы кода.

  • Кроссплатформенность: Советник должен компилироваться без ошибок и предупреждений как в MT4, так и в MT5.



Répondu

1
Développeur 1
Évaluation
(392)
Projets
544
40%
Arbitrage
30
57% / 3%
En retard
57
10%
Travail
Publié : 11 codes
2
Développeur 2
Évaluation
(91)
Projets
109
17%
Arbitrage
6
33% / 17%
En retard
5
5%
Gratuit
Publié : 1 code
3
Développeur 3
Évaluation
(172)
Projets
185
32%
Arbitrage
5
60% / 20%
En retard
3
2%
Gratuit
Publié : 3 codes
4
Développeur 4
Évaluation
(28)
Projets
45
49%
Arbitrage
2
50% / 50%
En retard
0
Gratuit
5
Développeur 5
Évaluation
(9)
Projets
21
10%
Arbitrage
2
0% / 50%
En retard
2
10%
Travail
6
Développeur 6
Évaluation
(176)
Projets
227
19%
Arbitrage
21
38% / 24%
En retard
0
Travail
7
Développeur 7
Évaluation
(540)
Projets
622
33%
Arbitrage
37
38% / 51%
En retard
11
2%
Occupé
8
Développeur 8
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
9
Développeur 9
Évaluation
(265)
Projets
596
35%
Arbitrage
64
20% / 58%
En retard
147
25%
Travail
Publié : 1 article, 22 codes
10
Développeur 10
Évaluation
(9)
Projets
13
38%
Arbitrage
0
En retard
3
23%
Travail
11
Développeur 11
Évaluation
(845)
Projets
1446
72%
Arbitrage
119
29% / 47%
En retard
355
25%
Travail
Publié : 3 articles
12
Développeur 12
Évaluation
(38)
Projets
51
20%
Arbitrage
15
27% / 67%
En retard
7
14%
Gratuit
Publié : 1 code
13
Développeur 13
Évaluation
(110)
Projets
128
55%
Arbitrage
1
0% / 0%
En retard
0
Gratuit
14
Développeur 14
Évaluation
(13)
Projets
31
23%
Arbitrage
7
29% / 57%
En retard
5
16%
Gratuit
15
Développeur 15
Évaluation
Projets
0
0%
Arbitrage
0
En retard
0
Gratuit
Publié : 6 codes
16
Développeur 16
Évaluation
(333)
Projets
400
53%
Arbitrage
20
55% / 15%
En retard
29
7%
Occupé
17
Développeur 17
Évaluation
(1)
Projets
1
0%
Arbitrage
1
0% / 100%
En retard
0
Gratuit
18
Développeur 18
Évaluation
Projets
1
0%
Arbitrage
0
En retard
1
100%
Gratuit
19
Développeur 19
Évaluation
(7)
Projets
8
25%
Arbitrage
0
En retard
1
13%
Occupé

Informations sur le projet

Budget
30 - 250 USD
Délais
à 14 jour(s)

Client

(67)
Commandes passées74
Nombre d'arbitrages0