Изменить алгоритм частичного закрытия позиций в существующем советнике

Spezifikation

Добрый день, уважаемые программисты!


Есть вспомогательный советник (открытый код). Описание функций этого советника есть в прикрепленном файле. В двух словах советник сопровождает открытые позиции, наилучшим образом работает с сетками, тралит последние ордера, полученным профитом "кусает" лотность сетки, может полностью закрывать ордера полученным профитом от последнего ордера и т.п.


Одна из функций советника (в которую необходимо внести изменения) - "частичное перекрытие" ордеров.

Пример:

Цена идет против нас. Усредняемся. Имеем сетку - 4 ордера - 0.1,  0.2,  0.4,  0.8

Рынок разворачивается, как только ордер 0.8 выходит в плюс на определенные выставленные параметры, включается трал "частичного перекрытия". При возврате цены к линии трала произойдет закрытие части ордеров. Например, согласно логике профитом ордера 0.8 закроется часть убытка от первых трех ордеров что в просадке, то есть от каждого согласно суммы может "откусится" по 0.05 убытка. В итоге в рынке останется 0.05, 0.15, 0.35


ИСХОДНЫЕ ДАННЫЕ ЗАДАЧИ: 

Сейчас частичное "откусывание" ордеров в функционирует по следующей логике:
Есть сеть 0,1 / 0,2 / 0,4 /0,8. Ордер 0,8 - стралился и профитом готов "покусать" часть ордеров. И ордера начинают кусаться в порядке - сначал 0,4,  потом -  0,2, потом - 0,1 (тестировал на сетке 4 ордера, возможно при большем количестве ордеров логика может меняться). Это все происходит за миллисекунды, т.е. как одно действие. Но тем не менее порядок такой - от большего ордера к меньшему (не знаю каким образом он определяет - по лотности, дате или по номеру). 

Когда частично кроется ордер, ордер меняет номер в советнике. Номера меняются в порядке возрастания. Т.е. если мы идем в порядке откусывания, как сделано сейчас в советнике, то откусанный ордер 0,1 (самый маленький) будет иметь самый большой номер ордера, так как был изменен последним. В этом случаи, если "кусание" происходило по логике данного советника, самый маленький по объему ордер будет иметь самый последний номер ордера.


Пример:

В порядке возрастания по номеру ордера:

Была сеть 0,1 /0,2 / 0,4 /0,8. Покусалась, стала 0,3 / 0,15 / 0,05.  Самый большой номер ордера после "кусания" стал у 0,05. 


ЗАДАЧА:

1) Изменить логику частичного перекрытия ордеров на противоположную. Чтобы ордера кусались в порядке от меньшего к большему по лотности. Т.е. в предыдущем примере с сеткой 0,1 / 0,2 / 0,4 / 0,8. Профитом последнего оредра сначала кусался бы - 0,1, потом - 0,2, потом - 0,4. Таким образом наибольший по объему из оставшихся ордеров имел самый большой (последний) номер ордера. 

2) Не менее важная задача - при изменении логики ничего больше не повредить в коде, не задеть, не изменить и т.п. Т.е. все должно работать так, как работает сейчас, кроме пункта 1.


Bewerbungen

1
Entwickler 1
Bewertung
(586)
Projekte
1046
49%
Schlichtung
39
28% / 41%
Frist nicht eingehalten
49
5%
Arbeitet
2
Entwickler 2
Bewertung
(45)
Projekte
76
20%
Schlichtung
7
0% / 86%
Frist nicht eingehalten
14
18%
Frei
3
Entwickler 3
Bewertung
(5)
Projekte
3
0%
Schlichtung
19
0% / 100%
Frist nicht eingehalten
0
Frei
4
Entwickler 4
Bewertung
(48)
Projekte
73
37%
Schlichtung
22
9% / 41%
Frist nicht eingehalten
14
19%
Arbeitet
5
Entwickler 5
Bewertung
(356)
Projekte
632
26%
Schlichtung
89
73% / 13%
Frist nicht eingehalten
12
2%
Frei
6
Entwickler 6
Bewertung
(341)
Projekte
588
36%
Schlichtung
31
45% / 3%
Frist nicht eingehalten
16
3%
Frei
7
Entwickler 7
Bewertung
(4)
Projekte
5
40%
Schlichtung
1
0% / 100%
Frist nicht eingehalten
0
Frei
8
Entwickler 8
Bewertung
(562)
Projekte
931
47%
Schlichtung
302
59% / 25%
Frist nicht eingehalten
123
13%
Arbeitet
9
Entwickler 9
Bewertung
(13)
Projekte
34
76%
Schlichtung
1
100% / 0%
Frist nicht eingehalten
6
18%
Frei
Ähnliche Aufträge
Здравствуйте.Необходимо добавить в индикатор что бы приходили звуковые и всплывающие аллерты в 2 стрелочных индикатора в терминал МТ5 веб версию. Нужно что бы это работало на любом таймфрейме от М1-М5-М15
Необходимо конвертировать индикатор в Mql5. Индикатор должен индентично работать иметь тот же функционал. Ссылка на индикатор а скриншоте . Планирую конвертировать в общей сложности 5 индикаторов. Надеюсь на продолжительное сотрудничество. Опыт в конвертации обязателен
Всех приветствую! Необходимо переписать простого робота с MQL4 на MQL5, примерно 1700 строк. Требования: должен работать на всех инструментах в терминалах МТ5 неттинг на форексе и на фьючерсах и акциях в "Финаме"
Приобрету готовый продукт, стратегию на pine TradingView или уже переведенный на python , который имеет 1.5-2+ профит фактор. Желательно чтобы торговля осуществлялась и в длинную, и в короткую. Робот обязательно должен контролировать риски, соответственно иметь SL ( не динамический!) на каждую сделку и не иметь огромных просадок (не в эквити, ни на чистом балансе). Просадки MDD выше 30% при оптимальных настройках
Ищу человека который напишет алгоритм для копитрейдинга. У меня есть несколько инвесторских счетов, на которых я торгую. Я хочу чтобы с 1 счёта, автоматически повторялись действия на других счетах. Открытия, закрытия сделок. Процентное соотношение лотов (не по деньгам, а по процентам), тейк профит и стоп лосс в одинаковых местах, отмены ордера и т д
****Весь программный код должен быть с комментариями, для возможности внесения изменений. Исключительное право на интеллектуальную собственность передается вместе с исходным кодом. *** Требования к реализации Советник написан на языке программирования MQL5 для платформы MetaTrader 5. Все параметры должны быть настраиваемыми через входные параметры (input variables) для гибкости настройки и тестирования. Код должен
1. Понимание экспоненциальной и линейной функций: - Экспоненциальная функция имеет вид: y = a * b^x, где a - начальное значение, b - основание экспоненты. - Линейная функция имеет вид: y = mx + b, где m - коэффициент наклона, b - свободный член. 2. Определение целевых значений: - Необходимо определить, к каким значениям на линейном графике должны соответствовать точки на экспоненциальном графике. 3. Решение
Приветствую вас. Прошу помочь в написании с нуля, скрипта или торгового индикатора "опционный канал" . Конкретно по факту алгоритма у меня нет такого. Может кто из программистов возьмётся?! Могу выслать скрин типа как т.з . Как должен выглядеть индикатор или скрипт. Бюджет 500 долларов
Нужен скрипт или советник. В программе заложены будут как сигналы так и данные индикаторов. В этом скрипте/советнике или возможно программе, будут различные индикаторы такие как Стохастик, RSI,RVI, MACD, Momentum, MFI, OBV, A/D, а также несколько Muving, BollingerB, ParabolicSAR, Semafor, также учитываться точки Pivot, линии тренда и уровни поддержки/сопротивления. Необходимо чтобы вышеуказанные индикаторы давали
Необходимо модифицировать советник под новое обновление торгового терминала МТ4 (Bulid 1420). До последнего обновления советник отлично работал, без нареканий, однако после обновления МТ4 выскакивает ошибка "cannot load". Готов к любым рекомендациям и решениям проблемы

Projektdetails

Budget
30 - 40 USD
Für die Entwickler
27 - 36 USD
Ausführungsfristen
von 1 bis 3 Tag(e)