oyama
Александр

 
Уровень 17

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2146



РЕКОМЕНДУЮ




Лучшее от oyama



Путь самурая Комментариев 2
2015-10-10 12:41:01Рейтинг 0

Просто совпадения ? Комментариев 11
2016-10-31 18:38:17Рейтинг 0

Неделя Комментариев 4
2015-08-28 11:12:33Рейтинг 0

Три сына. Комментариев 1
2015-09-11 11:43:15Рейтинг 0

Кросс на кроссе. Комментариев 2
2015-10-30 09:08:13Рейтинг 0

Сумма профита

Добрый день! Андрей, можешь ли ты сделать простейший индикатор, который бы показывал общий профит в валюте депо по тому инструменту на котором установлен ( общий по всем сделкам, и бай и селл) Так же, желательно что бы сумма отображалась или в правом или в левом НИЖНЕМ углу. Если профита нет то просто пусть показывает 00.00
Спасибо.
  • +3
  • Просмотров: 2167
  • 16 мая 2017, 19:07
  • oyama
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Интересует советник для WForex БО
Следующая запись в группе  
Прошу создать советник
15 мая 2017
18 мая 2017

Брокер для ваших роботов, 15 лет на рынке

Комментарии (6)

+
+3
avatar

  35  AM2 Сообщений: 16265 - Андрей

  • 16 мая 2017, 21:07
+
0
Андрей, я начинаю сомневаться в своих умственных способностях, мне кажется что я плохо стал формулировать тех.задания. Но попробую повторить тебе его ещё раз. Мне не надо повтор общего профита который и так есть в терминале, Мне нужно что бы индикатор показывал только сумму ВСЕХ ПРОФИТНЫХ ОРДЕРОВ!!! только профитные, те у кого плюс, те что в плюсе он считал, И показывал бы общую сумму. Сумму ВСЕХ ПЛЮСОВЫХ ОРДЕРОВ, и на селл и на бай, в ОБЩЕЙ СУММЕ.
А пока это не то.
Редактирован: 17 мая 2017, 13:33
avatar

  17  oyama Автор Сообщений: 350 - Александр

  • 17 мая 2017, 12:33
+
0
Да ё-маё… Я думал, что отдельно для каждой пары считает…
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 17 мая 2017, 21:05
+
0
Кстати, хорошая идея, удобно.
Благодарю обоих, как за идею, так и за реализацию.
avatar

  24  ShamanHand Сообщений: 1092 - Наношу добро, причиняю пользу.

  • 17 мая 2017, 06:47
+
+1
Мне нужно что бы индикатор показывал только сумму ВСЕХ ПРОФИТНЫХ ОРДЕРОВ!!!


Вот только по профитным:


//+------------------------------------------------------------------+
//|                                                       Profit.mq4 |
//|                                              Copyright 2017, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict
#property indicator_chart_window

input int corner=0;
input color clr=Red;
input string fnt="Arial";
input int size=12;
input int x=22;
input int y=22;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutLabel(string text)
  {
   ObjectDelete(0,"L");
//--- создадим текстовую метку
   ObjectCreate(0,"L",OBJ_LABEL,0,0,0);
//--- установим координаты метки
   ObjectSetInteger(0,"L",OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,"L",OBJPROP_YDISTANCE,y);
//--- установим угол графика, относительно которого будут определяться координаты точки
   ObjectSetInteger(0,"L",OBJPROP_CORNER,corner);
//--- установим текст
   ObjectSetString(0,"L",OBJPROP_TEXT,text);
//--- установим шрифт текста
   ObjectSetString(0,"L",OBJPROP_FONT,fnt);
//--- установим размер шрифта
   ObjectSetInteger(0,"L",OBJPROP_FONTSIZE,size);
//--- установим цвет
   ObjectSetInteger(0,"L",OBJPROP_COLOR,clr);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double AllProfit()
  {
   double profit=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol())
           {
            if(OrderType()<2 && OrderProfit()>0) profit+=OrderProfit()+OrderCommission()+OrderSwap();
           }
        }
     }
   return (profit);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   PutLabel("Profit: "+string(NormalizeDouble(AllProfit(),2)));
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|                                                       Profit.mq4 |
//|                                              Copyright 2017, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict
#property indicator_chart_window

input int corner=0;
input color clr=Red;
input string fnt="Arial";
input int size=12;
input int x=22;
input int y=22;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- indicator buffers mapping

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutLabel(string text)
  {
   ObjectDelete(0,"L");
//--- создадим текстовую метку
   ObjectCreate(0,"L",OBJ_LABEL,0,0,0);
//--- установим координаты метки
   ObjectSetInteger(0,"L",OBJPROP_XDISTANCE,x);
   ObjectSetInteger(0,"L",OBJPROP_YDISTANCE,y);
//--- установим угол графика, относительно которого будут определяться координаты точки
   ObjectSetInteger(0,"L",OBJPROP_CORNER,corner);
//--- установим текст
   ObjectSetString(0,"L",OBJPROP_TEXT,text);
//--- установим шрифт текста
   ObjectSetString(0,"L",OBJPROP_FONT,fnt);
//--- установим размер шрифта
   ObjectSetInteger(0,"L",OBJPROP_FONTSIZE,size);
//--- установим цвет
   ObjectSetInteger(0,"L",OBJPROP_COLOR,clr);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double AllProfit()
  {
   double profit=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol())
           {
            if(OrderType()<2 && OrderProfit()>0) profit+=OrderProfit()+OrderCommission()+OrderSwap();
           }
        }
     }
   return (profit);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---
   PutLabel("Profit: "+string(NormalizeDouble(AllProfit(),2)));
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+


avatar

  35  AM2 Сообщений: 16265 - Андрей

  • 17 мая 2017, 17:46
+
0
Да, это он, спасибо))
avatar

  17  oyama Автор Сообщений: 350 - Александр

  • 17 мая 2017, 18:13

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий