Нужна рабочая функция по закрытию противоположных ордеров перекрытием

Техническое задание

У меня есть рабочий БОТ, но мне необходимо его немного откорректировать. Приведу Вам некоторые функции реализованные в моем боте. 

Данная функция считает ПРОФИТ всех ордеров находящихся в рынке:

double CalculateProfit()
{
     double oProfit = 0;
     for (int i=OrdersTotal() -1; i>=0; i--)
     {
          if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
          {
              if (OrderSymbol() == Symbol() && OrderMagicNumber()== Magic)
              {
                  if (OrderType() == OP_BUY || OrderType() == OP_SELL)
                  {
                      oProfit += OrderProfit();
                  }
                
              }
          }
     }
     return (oProfit);
}
Далее выполняется условие в void OnTick() и при выполнении условия закрываются все ордера находящиеся в рынке:
 

double OP = CalculateProfit();

if (OP >= Profit)
{
CloseAll();
}

Вот функция которая закрывает все ордера:

void CloseAll()
{
for (int i = OrdersTotal() -1; i>=0; i--)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
{
if (OrderType() == OP_BUY)
{
if (!OrderClose (OrderTicket(), OrderLots(), Bid, Slippage))
Print ("не удалось закрыть ордер на покупку!");
}
if (OrderType() == OP_SELL)
{
if (!OrderClose (OrderTicket(), OrderLots(), Ask, Slippage))
Print ("не удалось закрыть ордер на продажу!");
}
}
}
}
}

Для корректной работы моего БОТА необходимо считать профит последнего ордера SELL и BUY  с наибольшим лотом. Т.е. последний тикет ордера на продажу и последний тикет на покупку и выдать их общий профит (но  лоты у них будут разные) и разом эти два ордера закрыть. А закрыть ордера необходимо перекрытием что позволит заработать еще и на спреде.

Откликнулись

1
Разработчик 1
Оценка
(473)
Проекты
1138
44%
Арбитраж
51
31% / 33%
Просрочено
500
44%
Свободен
2
Разработчик 2
Оценка
(280)
Проекты
650
28%
Арбитраж
111
19% / 61%
Просрочено
319
49%
Работает
3
Разработчик 3
Оценка
(356)
Проекты
632
26%
Арбитраж
89
73% / 13%
Просрочено
12
2%
Свободен
4
Разработчик 4
Оценка
(48)
Проекты
73
37%
Арбитраж
22
9% / 41%
Просрочено
14
19%
Работает
5
Разработчик 5
Оценка
(351)
Проекты
679
56%
Арбитраж
33
15% / 39%
Просрочено
63
9%
Свободен
6
Разработчик 6
Оценка
(106)
Проекты
189
46%
Арбитраж
34
24% / 41%
Просрочено
58
31%
Свободен
7
Разработчик 7
Оценка
(44)
Проекты
68
34%
Арбитраж
2
100% / 0%
Просрочено
7
10%
Свободен
8
Разработчик 8
Оценка
(25)
Проекты
33
12%
Арбитраж
1
0% / 100%
Просрочено
0
Свободен
9
Разработчик 9
Оценка
(14)
Проекты
22
59%
Арбитраж
2
0% / 50%
Просрочено
2
9%
Свободен
10
Разработчик 10
Оценка
(586)
Проекты
1046
49%
Арбитраж
39
28% / 41%
Просрочено
49
5%
Свободен
11
Разработчик 11
Оценка
(4)
Проекты
5
40%
Арбитраж
1
0% / 100%
Просрочено
0
Свободен
Похожие заказы
Что нужно будет делать: 1. Создавать и дорабатывать советники: - Придумать и написать нового советника по заранее согласованной стратегии. - Доработать старых советников: улучшить производительность, добавить новые функции и логику. 2. Разрабатывать индикаторы: - Создавать новые индикаторы на основе предоставленных математических моделей. - Модифицировать существующие индикаторы: улучшить визуализацию и
Что нужно делать: Интегрировать, проверять работоспособность Тестирование скриптов, сгенерированных нейронной сетью. Оказывать техническую поддержку: - Помогать с исправлением ошибок в уже работающих решениях. - Консультировать по вопросам использования наших инструментов. Также будет необходима техническая поддержка. Рассмотрю кандидатов с опытом работы и рекомендациями в данной области. Обязательное условие
Здравствуйте! 1) Нужно убрать лишние стрелки у индикатора и оставить/до написать две стрелки , бай и селл, при касании + пробои крайних верхней и нижний линий, сигнал подается после закрытия бара/свечи. 2) Интегрировать код отправки сообщения в Телеграм канал/группу, в сообщении должно быть указано: символ торгуемого инструмента, бай или сел сигнал, подход, касание, пробой, тайм фрейм инструмента
Добрый день. Необходимо перенести или написать индикатор в платформу TradingView под язык программирования pinescript. Индикатор простой. Строит уровни по предыдущим месяцам. Индикатор предоставлю при выборе кандидата. Исходный год необходимо предоставить заказчику
Есть код советника (mql4 - будет предоставлен в личных сообщениях совместно с подробным ТЗ). Нужно добавить в него следующие изменения: 1. Добавить четкие комментарии во все ордера советника (типа Sell 01, Sell 02 ... Sell 30 или Buy 01 и т.п.) В текущем советнике комментарии одинаковые и регулируются переменной. 2. Добавить в советника время торговли по времени (интервал времени указывается в настройках). 3
Индикатор оригинала не перерисовывается, соответственно когда будете вносить изменения в алгоритме индикатора, тоже не должен перерисовыватся. Необходимо найти в алгоритме индикатора, где есть условия, при которой индикатор выдает уведомления. Нужно посмотреть с расчетом на одну свечу назад на уже закрытой свече на каких условиях находится когда свеча открывалась, и на основание этого создать новое условие, чтобы
Нужен человек, который хорошо разбирается в mql4. Для связи лучше в ТГ писать: @aleksandr_poleshko, после договора в переписке можем здесь произвести оплату и тд. Необходимо переписать функции советника для стабильной работы, подробнее в личных сообщениях. Есть несколько готовых функций советника, только рыночные ордера, настроить сетки ордеров, а также будет отлично, если вы хорошо разбираетесь с WebRequest
При определенных сигналов от индикаторов и осцилляторов советник открывает сетку ордеров. При определенном наборе профита советник также закрывает сетку. И нужен дополнительный эксперт который поможет быстро закрыть все открытые сделки. Техническое задание уже готовое. Все подробности при связи

Информация о проекте

Бюджет
30 - 50 USD
Исполнителю
27 - 45 USD
Сроки выполнения
от 1 до 2 дн.