Задачка. Найти точку нулевого профита.

Программирование прибыли: от азов к секретам мастерства. Читайте, спрашивайте, делитесь опытом.
Бонус за сообщение 0.5$
Ответственный Модератор - Haos

Задачка. Найти точку нулевого профита.

Сообщение Рэндом » 06 сен 2016, 03:42

Например у нас есть 6 сел ордеров и 4 бай ордера. Задача найти цену на которой профит будет равен 0. Все позиции открыты одинаковым лотом, на разных уровнях. А так же хорошо рассмотреть вариант с разным объемом позиций.
Мозг сломал. Что-то никак не соображу.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:10

Это задача о нахождении центра масс.

image001.gif

В нашем случае:
Xi - значения цен,
Mi - соответствующие значения величин лотов.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:13

Более правильно в рамках вертикальной шкалы было бы написать Y вместо X, но суть это не меняет.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Задачка. Найти точку нулевого профита.

Сообщение Рэндом » 06 сен 2016, 05:20

А как быть если есть и бай и сел позиции?
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

Re: Здачка. Найти точку нулевого профита.

Сообщение Рэндом » 06 сен 2016, 05:27

Пример если больше бай позиций.
Код: выделить все
double sb=0.0;
            double ss=0.0;
            double pb=0;
            double ps=0;
            int limit=OrdersTotal();
            for(int i=0;i<limit;i++)
            {
               rez=OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
               if(OrderSymbol()==Symbol())
               {
                  if(OrderType()==OP_BUY){sb=sb+OrderOpenPrice()*OrderLots();pb=pb+OrderLots();}
                  if(OrderType()==OP_SELL){ss=ss+OrderOpenPrice()*OrderLots();ps=ps+OrderLots();}
               }
            }
            double sp=NormalizeDouble(ss/ps,Digits);
            double bp=NormalizeDouble(sb/pb,Digits);
            double prs=NormalizeDouble(bp+(bp-sp),Digits);

Надеюсь все правильно.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:37

Приведенная формула для заданного вопроса в первом посте, т.е. для наличия и бай и селл позиций. Ты подставляешь координаты всех позиций(xi) и величины соотв. им лотов (mi)!
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:40

Кстати, функцию, осуществ. данный расчет, я давно выкладывал. Можно поискать.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Задачка. Найти точку нулевого профита.

Сообщение Рэндом » 06 сен 2016, 05:48

Я уже написал свою. Считаем среднее для бай и сел отдельно. Потом находим разность, а дальше в зависимости от перевеса прибавляем или отнимаем разность.
Аватар пользователя
Рэндом
Специалист MQL
 
Сообщений: 13700
Зарегистрирован: 18 июл 2013, 08:05
Средств на руках: 31.45 Доллар
Группа: Администраторы
Благодарил (а): 1131 раз.
Поблагодарили: 3174 раз.
Каждый заблуждается в меру своих возможностей.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:50

Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.

Re: Задачка. Найти точку нулевого профита.

Сообщение Haos » 06 сен 2016, 05:52

Рэндом писал(а):Я уже написал свою. Считаем среднее для бай и сел отдельно. Потом находим разность, а дальше в зависимости от перевеса прибавляем или отнимаем разность.

Ты спросил как - я ответил.
Аватар пользователя
Haos
Специалист MQL
 
Сообщений: 24699
Зарегистрирован: 29 мар 2014, 16:07
Средств на руках: 193.70 Доллар
Группа: Главные модераторы
Благодарил (а): 3379 раз.
Поблагодарили: 8200 раз.


Вернуться в MQL – теория и практика

Кто сейчас на форуме?

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 48

Права доступа к форуму

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения