Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1510

 
Denis Karavaev #:

Баланс 1100

еврик +10

франк  -110. закрыли только что

Баланс 990

Проверяем еврик на тиках. Баланс 990 , 1%  = 9.9 . Профит 10. Закрываем профит еврик

Продолжаем. Сколько наш баланс? и сколько 1% от него?

И так в цикле по открытым позициям

А если закрыли +110 тогда откуда считать? Ждали +11, а теперь будем ждать 12.1… Дальше закроется ещё и ещё… Это один вариант…

А если текущая прибыль только 7, а закрылось с убытком -400… Тогда получается больше и не надо???

У вас каждая формула на один случай жизни. А их достаточно много…

 
Alexey Viktorov #:

А если закрыли +110 тогда откуда считать? Ждали +11, а теперь будем ждать 12.1… Дальше закроется ещё и ещё… Это один вариант…

А если текущая прибыль только 7, а закрылось с убытком -400… Тогда получается больше и не надо???

У вас каждая формула на один случай жизни. А их достаточно много…

Всё верно, смотрим Т.З. "прописать код закрытия прибыли каждой валютной пары в отдельности в процентах от баланса, если на счету одновременно работают несколько пар.  "

Если нужен иной вариант. Фикс.

 - то выносим в Инпут  БалансБазовый = 1000. И пляшем от этой цифры.

Ещё вариант С балансовыми шагами. Шаг баланса 1000. В глобалке храним колено. Пока не превысили 2к. Используем 1000 в расчётоах.

Баланс текущий превысил 2к. Исспользуем в расчётах ровео 2к. Далее то же самое и т.д.

Что желаете то и закодирую ) 

 
Denis Karavaev #:

Всё верно, смотрим Т.З. "прописать код закрытия прибыли каждой валютной пары в отдельности в процентах от баланса, если на счету одновременно работают несколько пар.  "

Если нужен иной вариант. Фикс.

 - то выносим в Инпут  БалансБазовый = 1000. И пляшем от этой цифры.

Ещё вариант С балансовыми шагами. Шаг баланса 1000. В глобалке храним колено. Пока не превысили 2к. Используем 1000 в расчётоах.

Баланс текущий превысил 2к. Исспользуем в расчётах ровео 2к. Далее то же самое и т.д.

Что желаете то и закодирую ) 

С шагами будет интересный вариант, закодируйте если не затруднит

 
R3008 #:

С шагами будет интересный вариант, закодируйте если не затруднит

С удовольствием, оставьте заявку на фриланс

 
Denis Karavaev #:

С удовольствием, оставьте заявку на фриланс

Спасибо, но мне будет достаточно примера кода в пределах данной ветки

 
Denis Karavaev #:

Всё верно, смотрим Т.З. "прописать код закрытия прибыли каждой валютной пары в отдельности в процентах от баланса, если на счету одновременно работают несколько пар.  "

Если нужен иной вариант. Фикс.

 - то выносим в Инпут  БалансБазовый = 1000. И пляшем от этой цифры.

Ещё вариант С балансовыми шагами. Шаг баланса 1000. В глобалке храним колено. Пока не превысили 2к. Используем 1000 в расчётоах.

Баланс текущий превысил 2к. Исспользуем в расчётах ровео 2к. Далее то же самое и т.д.

Что желаете то и закодирую ) 

Желаю чтобы считалось от текущего баланса без ступеней и прочей ерунды в любой момент, независимо от полученной прибыли\убытка другими советниками.

 
Здравствуйте!  
Есть возможность окрасить панель созданную с помощью <Controls\Dialog.mgh>?  
Могли бы поделиться примером кода, как это можно сделать? (Если это конечно возможно) 
 
Igor168 #:
Здравствуйте!  
Есть возможность окрасить панель созданную с помощью <Controls\Dialog.mgh>?  
Могли бы поделиться примером кода, как это можно сделать? (Если это конечно возможно) 

Совсем не уверен, но кажется барабашка показывал это. А может я просто ошибаюсь…

 
Alexey Viktorov #:
без ступеней и прочей ерунды в любой момент, независимо от полученной прибыли\убытка другими со

То же можно.

Делаем так. на сигнале, Рассчитываем риск \  ТП \ СЛ \ Запоминаем баланс \

Открываем ордер (или группу). соответственно знаем профит +1= 10 и знаем убыток -1=-10.

Готово.

 
Здравствуйте!
//+------------------------------------------------------------------+
//| Event handler                                                    |
//+------------------------------------------------------------------+
void CControlsDialog::OnClickButton2(void)
  {
  for(int i=0; i<SymbolsTotal(true);i++){ 
btn2[i].ColorBorder(clrGreen);  
Comment(__FUNCTION__);
   }
  }
 
//+------------------------------------------------------------------+
Есть ли возможность, добавить действия к созданным кнопкам из библиотеки <Controls\Button.mqh>
С помощью приведенного выше кода у меня не получилось.

//Глобальная переменная
CButton btn2[];

//Макросы
void              OnClickButton2(void); 

// Событие
for(int i=0; i<SymbolsTotal(true);i++){ 
ON_EVENT(ON_CLICK,btn2[i],OnClickButton2)
}


//OnInit
for(int i=0; i<SymbolsTotal(true);i++){ 
int total = SymbolsTotal(true);

ArrayResize(btn2, total);
btn2[i].Create(0,"BTN1"+ IntegerToString(i),0,130,20+i*20,100,40); 
btn2[i].Height(BTN_HEIGHT);
btn2[i].Text(CharToString(182));  
btn2[i].Font("Wingdings");       
ExtDialog.Add(btn2[i]); 

//Нажатие кнопки
void CControlsDialog::OnClickButton2(void)
  {
  for(int i=0; i<SymbolsTotal(true);i++){ 
btn2[i].ColorBorder(clrGreen);  
Comment(__FUNCTION__);
   }
  }
 
//+------------------------------------------------------------------+  
Полный код с участием btn2, заранее спасибо
Причина обращения: