Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1136

 
Artyom Trishkin:

No. Ho spiegato sopra qual è il livello di gelo.

Grazie Artem, lo esaminerò domani.

 
Artyom Trishkin:

SL e TP sono ordini. "Livelli" - perché questi sono i livelli a cui sono impostati questi ordini. Potete anche chiamarli rientro o distanza in pip. Questo non li rende ordini.

Sono disposto ad accettare che funzioni così, ma quello che non capisco è se SL e TP sono ordini, allora perché non sono nella lista degli ordini, per esempio OrdersTotal() oHistoryOrdersTotal();

 
Fast235:

Grazie Artem, lo esaminerò domani.

Capisco che ))))


 

1) Qual è la differenza tra uno script e un servizio?

2) È possibile eseguire l'indicatore in qualsiasi finestra desiderata dall'EA senza utilizzare modelli?

 
Alexandr Sokolov:

1) Qual è la differenza tra uno script e un servizio?

2) È possibile eseguire l'indicatore da un EA in qualsiasi finestra desiderata senza utilizzare modelli?

Ecco la funzione - dall'EA https://www.mql5.com/ru/docs/chart_operations/chartindicatoradd

//+------------------------------------------------------------------+
//| Функция проверки и добавления индикатора на график               |
//+------------------------------------------------------------------+
bool AddIndicator()
  {
//--- выводимое сообщение
   string message;
//--- проверим на совпадение символ индикатора и символ графика
   if(_Symbol!=_Symbol)
     {
      message="Демонстрация использования функции Demo_ChartIndicatorAdd():";
      message=message+"\r\n";
      message=message+"Нельзя на график добавить индикатор, рассчитанный на другом символе.";
      message=message+"\r\n";
      message=message+"Укажите в свойствах эксперта символ графика - "+_Symbol+".";
      Alert(message);
      //--- досрочный выход, не будем добавлять индикатор на график
      return false;
     }
//--- проверим на совпадение таймфрейм индикатора и таймфрейм графика
   if(_Period!=_Period)
     {
      message="Нельзя на график добавить индикатор, рассчитанный на другом таймфрейме.";
      message=message+"\r\n";
      message=message+"Укажите в свойствах эксперта таймфрейм графика - "+EnumToString(_Period)+".";
      Alert(message);
      //--- досрочный выход, не будем добавлять индикатор на график
      return false;
     }
//--- все проверки прошли, символ и период индикатора соответствуют графику
   if(indicator_handle==INVALID_HANDLE)
     {
      Print(__FUNCTION__,"  Создаем индикатор");
      indicator_handle=iCustom(_Symbol,_Period,InpIndi_name);
      if(indicator_handle==INVALID_HANDLE)
        {
         Print("Не удалось создать индикатор. Код ошибки ",GetLastError());
        }
     }
//--- сбросим код ошибки
   ResetLastError();
//--- накладываем индикатор на график
   Print(__FUNCTION__,"  Добавляем индикатор на график");
   Print("Индикатор построен на ",_Symbol,"/",EnumToString(_Period));
//--- получим номер нового подокна, в которое добавим индикатор
   int subwindow=(int)ChartGetInteger(0,-1);
   PrintFormat("Добавляем индикатор на окно %d графика",subwindow);
   if(!ChartIndicatorAdd(0,subwindow,indicator_handle))
     {
      PrintFormat("Не удалось добавить индикатор на окно %d графика. Код ошибки  %d",
                  subwindow,GetLastError());
     }
//--- добавление индикатора на график прошло успешно
   return(true);
  }
//+------------------------------------------------------------------+
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
  • www.mql5.com
//| Expert initialization function                                   |                                                                                       ); "Внимание! %s: Попробуем добавить индикатор MACD(%s/%s) на график %s/%s. Получим ошибку 4114"                         subwindow...
 
Alexsandr San:

Ecco la funzione - dal consulente https://www.mql5.com/ru/docs/chart_operations/chartindicatoradd

Grazie!

 
Alexandr Sokolov:

1) Qual è la differenza tra uno script e un servizio?

lo script è legato a un grafico, il servizio non è

lo script viene avviato "manualmente", il servizio viene avviato dal terminale

Non conosco altre differenze, non ci sono informazioni sui servizi

 
Igor Makanu:

lo script è legato a un grafico, il servizio non è

lo script viene avviato "manualmente", il servizio viene avviato dal terminale

Non conosco altre distinzioni, non ci sono informazioni sui servizi

Ho capito bene? gli indicatori e gli advisor in esecuzione dopo la chiusura del terminale hanno le proprietà del servizio, ma lo script no, cioè se uno script, un indicatore e un advisor erano in esecuzione e il terminale è stato chiuso, quando si apre il terminale, solo l'indicatore e l'advisor saranno caricati nella finestra, mentre lo script no?

 
Valeriy Yastremskiy:

Ho capito bene? Gli indicatori e gli advisor in esecuzione dopo la chiusura del terminale hanno le proprietà del servizio, ma lo script no, cioè se ci fossero in esecuzione script, indicatore e advisor e il terminale fosse chiuso, quando si apre il terminale, solo indicatore e advisor saranno caricati nella finestra, ma non lo script?

no

la cosa più importante in MQL è "il grafico".

Tutti loro - indicatori, Expert Advisors e script - sono legati al grafico

Ma il servizio non è legato a nulla - parte dal terminale e non ha un grafico, cioè non può controllare nulla come al solito... Bene, _Symbol, _Digits - niente che siamo abituati a usare, questi dati sono tutti dati dal grafico


Non fa differenza per gli indicatori e gli EA se si chiude il grafico o l'intero terminale, per quanto riguarda il servizio, se si chiudono tutti i grafici, funzionerà fino a quando si chiude il terminale

Se chiudete l'EA chiudendo il grafico, allora dopo il riavvio del terminale, non ci sarà nessun miracolo - nessun grafico, nessun EA, e il servizio parte sempre quando si avvia il grafico


è così, sulle mie dita ))))

ieri ho fatto un esempio del servizio,https://www.mql5.com/ru/forum/170952/page173#comment_16044829

Non so ancora cosa fare con loro.


ZS: se stiamo parlando di uno script, EA e indicatore - qual è la differenza, l'indicatore non può commerciare, ma può disegnare i buffer dell'indicatore, lo script può fare la stessa cosa dell'EA, ma funziona "una volta" e si scarica, non per scaricare - ciclo infinito, ma ancora il terminale scaricherà lo script quando si passa il TF


Non posso spiegarlo più facilmente, basta guardare i primi capitoli, è tutto lì

 

Igor Makanu:

ma il servizio non è legato a nulla, parte dal terminale e non ha un grafico, cioè non può scoprire nulla come al solito... bene _Symbol, _Digits - niente di niente che siamo abituati a usare, sono tutti dati dati dati dal grafico

Chi te l'ha detto? Usando _Symbol o _Digits specificamente, non si può, ma è facile ottenere quei valori. Tutto ciò che è sulla carta tutto ciò che si può ottenere dal servizio. Non ero particolarmente interessato a loro, ma alla luce dei recenti cambiamenti uso il servizio per rimuovere le frecce e le linee delle posizioni chiuse che odio. Avvio il terminale, eseguo il servizio e cancello tutti questi segni su tutti i grafici senza toccare quelli creati manualmente o da altri programmi.

Motivazione: