[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 532

 
Pyro:
Спасибо, это более простое решение чем я наколдовал))
 
tol64:

Я не специально.))
Получается, что это относительное понятие.)) Баланс - это зафиксированные прибыли/убытки. И это реально. Средства, AccountEquity(), ещё могут измениться сколько угодно раз и это в принципе тоже реально, но уже довольно расплывчато. Доводить свой счёт до критической величины конечно не стоит и загрузку депозита и риски нужно контролировать подальше от стоп-аута и маржин-кола в процентном соотношении. Такой пример уже был выше. Тот самый "камикадзе".)))

В таком случае novicek нужно вопрос было поставить более конкретно и использовать чёткие, всем понятные определения такие, как Баланс/Эквити (чётко), а не Реально/Нереально (расплывчато). Пример ниже Вам бы подошёл тогда?

Для меня AccountEquity(), как не сформировавшаяся свеча и другие показатели, которые меня интересуют, рассчитываю по балансу, но и за средствами конечно тоже слежу, чтобы быть в курсе, когда эквити (средства) превращать в реальные или виртуальные (если это тест) деньги, то есть баланс. ))

как раз то что искал
где можно скачать?

P.S.
Ссори не правильно сформулировал

 

Привет всем,

(пока мы проектируем ЭС про которую я писал выше)

Были ли факты регистрации у одного ДЦ нескольких торговых счетов и реализация следующего:

1. натравливались ли экстремальные МТС на один ДЦ ? (при условии 1 МТС на один счет)...(ДЦ вроде как приветствует открытие любого кол-ва счетов)

2. интересует не интеграция нескольких торговых алгоритмов в один жадный советник, а "просторная система" - "каждому своя дорога".


То есть, если не сложно, напишите односложно перечень диаметральных МТС, если он есть. Интересен Ваш взгляд на диаметральность.

Нет - так нет.

Одно из наших исследований подразумевает одновременный старт нескольких экстремальных МТС в одном ДЦ на разных счетах (и одновременное завершение их работы, разумеется). Если это уже делалось, прошу дать ссылку на результат или обсуждение краха. Интересует наблюдение и скромный анализ. Будет неприятно, если мы ради этих тестов - запустим свой "офис тестов" ))) если есть информация - поделитесь пжста. Просто без поддержки с Вашей стороны мы не расскажем Вам как низко мы пали в своей истории исследований и у Вас не будет повода злорадно усмехнуться в наш адрес )))

P.S. как я писал ранее - нас интересует решение прикладной задачи - "твердый плюс". Над чем мы собственно брейнстормим последнее время. А потом уже все остальное.

 

Обратил внимание в статье Николая Косицина (https://www.mql5.com/ru/articles/1516) на то, что индикаторные значения загружаются в буферы.

//----+ ВЫЧИСЛЕНИЕ ИНДИКАТОРНЫХ ЗНАЧЕНИЙ И ЗАГРУЗКА ИХ В БУФЕРЫ        
  for(bar = 1; bar <= 3; bar++)
      Mov[bar - 1] = iCustom(NULL, Timeframe_Dn, "JFatl", Length_Dn, Phase_Dn, 0, IPC_Dn, 0, bar);
           
           //----+ ОПРЕДЕЛЕНИЕ СИГНАЛОВ ДЛЯ СДЕЛОК
           dMov12 = Mov[0] - Mov[1];
           dMov23 = Mov[1] - Mov[2]; 
                                           
           if (dMov23 > 0)
              if (dMov12 < 0)
                       SELL_Sign = true;
                          
           if (dMov12 > 0)
                       SELL_Stop = true; 

По моим соображениям такой подход использования индикаторов в эксперте будет экономичнее к ресурсам, чем такой:

Mov_1 = iCustom(NULL, Timeframe_Dn, "JFatl", Length_Dn, Phase_Dn, 0, IPC_Dn, 0, 1);
Mov_2 = iCustom(NULL, Timeframe_Dn, "JFatl", Length_Dn, Phase_Dn, 0, IPC_Dn, 0, 2);
Mov_3 = iCustom(NULL, Timeframe_Dn, "JFatl", Length_Dn, Phase_Dn, 0, IPC_Dn, 0, 3);


Верно ли моё предположение или второй вариант идентичен первому?

 
novicek:
как раз то что искал
P.S.
Ссори не правильно сформулировал


В принципе правильно Вы сформулировали, а я просто не правильно понял.)) Вы написали ведь и цифры также:

сумма находящийся на счете = 10000
сумма денег при плече = 10000
сумма реальных денег = 100

По цифрам получается, что на счёте 10000 по балансу, а по эквити уже 100 осталось. Экстремально.))

 
novicek:

где можно скачать?

Ваша правка сообщения могла быть и не замечена. )) Это довольно просто написать, попробуйте опираясь на пример ниже. Скрипт показывает в правом верхнем углу текущее состояние баланса и эквити. Статический вариант. Чтобы обновлялось по тикам можно функцию соорудить и в эксперте вызывать.

   int    Y_pxls     = 10;
   int    X_pxls     = 10;
   int    n_X_pxls   = 70;
   int    corner     = 1;
   int    size_font  = 7;
   color  basic      = White;
   string font       = "Arial";
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
//---------------------------------- ИНФОРМАЦИЯ ТОРГОВОЙ СИСТЕМЫ -----------------------------------------//
//--- Names

   //--- Баланс депозита
         ObjectCreate("Account Balance",OBJ_LABEL,0,0,0);
         ObjectSetText("Account Balance","Account Balance ($) =",size_font,font,basic); 
         ObjectSet("Account Balance",OBJPROP_CORNER,corner);
         ObjectSet("Account Balance",OBJPROP_XDISTANCE,n_X_pxls); 
         ObjectSet("Account Balance",OBJPROP_YDISTANCE,Y_pxls*2);

   //--- Текущие средства
         ObjectCreate("Account Equity",OBJ_LABEL,0,0,0);
         ObjectSetText("Account Equity","Account Equity ($) =",size_font,font,basic); 
         ObjectSet("Account Equity",OBJPROP_CORNER,corner);
         ObjectSet("Account Equity",OBJPROP_XDISTANCE,n_X_pxls); 
         ObjectSet("Account Equity",OBJPROP_YDISTANCE,Y_pxls*3);

//--- Values
         
   //--- Баланс депозита
         ObjectCreate("Value Account Balance",OBJ_LABEL,0,0,0);
         ObjectSetText("Value Account Balance",""+DoubleToStr(AccountBalance(),0)+"",size_font,font,basic);
         ObjectSet("Value Account Balance",OBJPROP_CORNER,corner);
         ObjectSet("Value Account Balance",OBJPROP_XDISTANCE,X_pxls);
         ObjectSet("Value Account Balance",OBJPROP_YDISTANCE,Y_pxls*2);
   //--- Текущие средства
         ObjectCreate("Value Account Equity",OBJ_LABEL,0,0,0);
         ObjectSetText("Value Account Equity",""+DoubleToStr(AccountEquity(),0)+"",size_font,font,basic);
         ObjectSet("Value Account Equity",OBJPROP_CORNER,corner);
         ObjectSet("Value Account Equity",OBJPROP_XDISTANCE,X_pxls);
         ObjectSet("Value Account Equity",OBJPROP_YDISTANCE,Y_pxls*3);
//----
   return(0);
  }
 
Maxaxa:

Привет всем,

...

P.S. как я писал ранее - нас интересует решение прикладной задачи - "твердый плюс". Над чем мы собственно брейнстормим последнее время. А потом уже все остальное.


А разве обязательно открывать несколько счетов для этого? Можно ведь просто несколько экспертов на одном счёте запустить. Если нужен какой-то определённый инструмент, то открываете несколько окон с этим инструментом и везде свой эксперт. Во внешних параметрах должен быть параметр Magic_Number, для каждого эксперта свой номер выставляется.
 

вообще вроде бы и не новичок программирую несколько лет, переписывал индикатора с другого языка, и наткнулся на перерисовку. прошу подправьте и покажите где ошибка???

Файлы:
i_asi_total.mq4  14 kb
 
tol64:

А разве обязательно открывать несколько счетов для этого? Можно ведь просто несколько экспертов на одном счёте запустить. Если нужен какой-то определённый инструмент, то открываете несколько окон с этим инструментом и везде свой эксперт. Во внешних параметрах должен быть параметр Magic_Number, для каждого эксперта свой номер выставляется.

ну это к вопросу о "жадных" экспертах ))

Вы правы, но все Это просто для чистоты эксперимента, как минимум.

У меня(нас) помимо разных демо-счетов, несколько реальных (больше чем несколько))) ДЦ ведут себя вообще по-разному, не то чтобы разные картинки, - разная динамика. NDD счета - вообще здорово, для меня во всяком случае. Ох.. а сколько мы уже слили на реальных недельных тестах, это прости ужас... пора открывать Лосиную ферму ))

но может и получится что, посмотрим )))

 

Уважаемые, тестирую советника в тестере и в журнале выдается ошибка 138. Т.е. что получается, тестер генерирует реквоты? Подозреваю что у меня ошибка где то в этой части кода

   if (CloseOnFriday == TRUE && DayOfWeek() == Friday_Days && Hour() > HourStopSession && AccountEquity_>AccountBalance_) {
               RefreshRates();
               OrderClose(OrderTicket(), OrderLots(), Bid, Slippage, Orange);
            }
Если действительно ошибка - подскажите, что неправильно?