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

Termos de Referência

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


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


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

Пример:

Цена идет против нас. Усредняемся. Имеем сетку - 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.


Respondido

1
Desenvolvedor 1
Classificação
(588)
Projetos
1053
49%
Arbitragem
39
28% / 41%
Expirado
49
5%
Livre
2
Desenvolvedor 2
Classificação
(45)
Projetos
76
20%
Arbitragem
7
0% / 86%
Expirado
14
18%
Livre
3
Desenvolvedor 3
Classificação
(5)
Projetos
3
0%
Arbitragem
19
0% / 100%
Expirado
0
Livre
4
Desenvolvedor 4
Classificação
(48)
Projetos
73
37%
Arbitragem
22
9% / 41%
Expirado
14
19%
Trabalhando
5
Desenvolvedor 5
Classificação
(356)
Projetos
632
26%
Arbitragem
89
73% / 13%
Expirado
12
2%
Trabalhando
6
Desenvolvedor 6
Classificação
(340)
Projetos
588
36%
Arbitragem
31
45% / 3%
Expirado
16
3%
Livre
7
Desenvolvedor 7
Classificação
(4)
Projetos
5
40%
Arbitragem
1
0% / 100%
Expirado
0
Livre
8
Desenvolvedor 8
Classificação
(564)
Projetos
933
47%
Arbitragem
302
59% / 25%
Expirado
125
13%
Livre
9
Desenvolvedor 9
Classificação
(13)
Projetos
34
76%
Arbitragem
1
100% / 0%
Expirado
6
18%
Livre
Pedidos semelhantes
Cоветник для MT5, работает с отложенными ордерами, с заменой отложенных ордеров на увеличенные c множителем лота (как Мартингейл), с небольшой панелью управления, ручной и автоматический режим торговли, активный и деактивированный ТР. Временной фильтр и фильтр по индикатору ATR для разрешения торговли в автомате. При установке советника на график он не начинает сразу торговать. Должна быть панель управления на
Ищем опытного разработчика для завершения и улучшения торгового советника для платформы MetaTrader 4 (MT4). Советник уже имеет основную логику, но требуется интеграция квантовых алгоритмов и машинного обучения для улучшения точности прогнозов и увеличения эффективности стратегии. Задачи для доработки: 1. Завершение логики торговли: • Доработка алгоритма открытия и закрытия ордеров на основе анализа разницы между
Добрый день! --- Снова -Я тут ничаина удалил ето обевления, напишыте снова пажалуста, ишче раз извиняюс за неудобства Ищу программиста для долгосрочного сотрудничества. Немного о себе: я создаю индикаторы и роботов на постоянной основе, насколько позволяет время. Под временем я подразумеваю создание технической спецификации (ТС), что является достаточно трудоёмким процессом. Я подхожу к созданию Т3 основательно: 1

Informações sobre o projeto

Orçamento
30 - 40 USD
Desenvolvedor
27 - 36 USD
Prazo
de 1 para 3 dias