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

명시

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


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


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

Пример:

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


응답함

1
개발자 1
등급
(589)
프로젝트
1070
50%
중재
39
28% / 41%
기한 초과
49
5%
무료
게재됨: 1 기고글, 8 코드
2
개발자 2
등급
(45)
프로젝트
76
20%
중재
7
0% / 86%
기한 초과
14
18%
무료
3
개발자 3
등급
(5)
프로젝트
3
0%
중재
19
0% / 100%
기한 초과
0
무료
4
개발자 4
등급
(48)
프로젝트
73
37%
중재
22
9% / 41%
기한 초과
14
19%
작업중
5
개발자 5
등급
(361)
프로젝트
644
26%
중재
92
72% / 14%
기한 초과
12
2%
작업중
게재됨: 1 코드
6
개발자 6
등급
(340)
프로젝트
588
36%
중재
31
45% / 3%
기한 초과
16
3%
무료
게재됨: 13 코드
7
개발자 7
등급
(4)
프로젝트
5
40%
중재
1
0% / 100%
기한 초과
0
무료
게재됨: 1 코드
8
개발자 8
등급
(574)
프로젝트
945
47%
중재
309
58% / 27%
기한 초과
125
13%
무료
9
개발자 9
등급
(13)
프로젝트
34
76%
중재
1
100% / 0%
기한 초과
6
18%
무료
비슷한 주문
Необходима помощь в настройке и запуске торгового робота сеточника. У нас своя разработка, очень сложная, много характеристик и деталей, которые нужно согласовать между собой в настройках. Работа будет объемная, прошу с опытом такой работы откликнуться
Нужно создать историю для терминала МТ4 в которой сделать самые сложные моменты для прохождения сеточника. Мне нужно для тестирования советника, чтобы история была очень сложной для прохождения. Нужно сделать черные лебеди и другие сложности для сеточника
Robot 30+ USD
Добрый день. Нужен торговый робот, который будет заходит в сделку на покупку при пересечении Stochastica Oscillator уровня 20 и продажу уровня 80 на 15-минутном тайм фрейме. В общем то и все...Пример закреплен в файле
Требуется опытный программист для разработки или предоставления готового торгового робота под золотую пару (XAUUSD). Ключевые требования : Торговый инструмент : XAUUSD (доп 2 пары) Интенсивность : скальпинг / агрессивная торговля (10–20+ сделок в день). Целевая доходность : агрессивный разгон депозита (ориентир от 100% в неделю). Логика алгоритма : на ваше усмотрение (готовы протестировать ваши рабочие стратегии)
ОПИСАНИЕ ЗАДАЧИ ДЛЯ ИСПОЛНИТЕЛЯ: У нас есть полностью готовый, рабочий торговый робот LEON. Исходный код логически завершен, но предыдущий программист поленился и оставил много сырых, наполовину сломанных настроек. Нам требуется провести глубокую, качественную доработку системы до идеала под реальный счет. ВАЖНОЕ ПРЕДУПРЕЖДЕНИЕ: На коленке за 2 часа или за 2 дня сделать работу не получится — мы это сразу увидим при
Ищу опытного разработчика для создания торгового советника (бота) на платформе MetaTrader 5. Бюджет до $500. ВАЖНО: Бот НЕ должен торговать автоматически! Его задача — анализировать рынок, находить точки входа и отправлять готовые сигналы в мой Telegram-канал. Я и мои подписчики будем открывать сделки вручную. Функциональные требования: Платформа: MetaTrader 5. Торговый инструмент: Приоритет XAUUSD (золото). Возможно
Hello, I need a professional MT4/MT5 Expert Advisor (EA) based on an existing compiled indicator (.ex4/.ex5). I do not have the source code. The indicator provides Entry, Take Profit (TP), and Stop Loss (SL) . Main Requirements 1. Indicator Integration • Integrate the indicator directly into the EA. • I should only attach the EA to the chart. • No need to attach the indicator separately. • Include all available
Нужен простой Expert Advisor для MT5. Советник ничего не торгует и не изменяет позиции. Работает на отдельном счёте Quattro Gold и отслеживает позиции XAUUSD объёмом 0.01. Логика: при появлении новой BUY позиции запомнить цену открытия; если цена снизилась на 20.00 USD по XAUUSD от цены входа — отправить один Push Notification в MT5; для SELL наоборот: если цена выросла на 20.00 USD от цены входа — отправить один

프로젝트 정보

예산
30 - 40 USD
기한
에서 1 로 3 일