Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 1423

 

Bitte geben Sie ein Beispiel für die Verwendung dieser Funktion in EA.

bool  FrameAdd( 
   const string  name,        // публичное имя/метка 
   long          id,          // публичный id 
   double        value,       // значение 
   const string  filename     // имя файла с данными 
   );
 
mwwm #:

Bitte geben Sie ein Beispiel für die Verwendung dieser Funktion in EA.

Sie können hier schauen.

Оцениваем ядра CPU для оптимизации - Попробуйте скомпилировать советники на Phenom 2 x4 975.
Оцениваем ядра CPU для оптимизации - Попробуйте скомпилировать советники на Phenom 2 x4 975.
  • 2022.09.29
  • www.mql5.com
должно получиться 6 результатов оптимизации - приложите логи журнала тестера стратегий. то проведите оптимизацию отдельно в течении часа - интересно сопоставить расчетное время на оптимизацию с реальным. По поводу журнала - вероятно не стоит галка - ставиться по нажатию ПКМ во вкладке Тестера стратегий
 
Hallo!
Bitte helfen Sie mir zu verstehen, was ich falsch mache!

Sobald ich einen Kommentar in den unten angehängten Code einfüge, funktioniert mein Roboter nicht mehr.
Ohne den Kommentar - alles funktioniert. Ich ändere das Konto auf normal und fake.
Was mache ich falsch?
   void OnTick()
     {
      if(AccountInfoInteger(ACCOUNT_LOGIN) != 12345678)
         Comment("На этом счете - робот не работает");
      return;
     }
 
Sprut 185 #:
Hallo!
Bitte helfen Sie mir zu verstehen, was ich falsch mache!

Sobald ich einen Kommentar in den unten angehängten Code einfüge, funktioniert mein Roboter nicht mehr.
Ohne den Kommentar - alles funktioniert. Ich ändere das Konto auf normal und fake.
Was mache ich falsch?


https://www.mql5.com/ru/search#!keyword=ACCOUNT_LOGIN&module=mql5_module_forum

 
Sprut 185 #:
Hallo!
Bitte helfen Sie mir zu verstehen, was ich falsch mache!

Sobald ich einen Kommentar in den unten angehängten Code einfüge, funktioniert mein Roboter nicht mehr.
Ohne den Kommentar - alles funktioniert. Ich ändere das Konto auf normal und fake.
Was mache ich falsch?
 

Du hast die Klammern im if vergessen. Wenn nicht gleich der Punktzahl, dann Kommentar und dann retourn. Und wenn es nicht gleich der Punktzahl ist, geht es weiter und trifft retourn.

void OnTick()
     {
      if(AccountInfoInteger(ACCOUNT_LOGIN) != 12345678) 
     {
         Comment("На этом счете - робот не работает");
      return;
     }
     }
 
Valeriy Yastremskiy #:

Danach wird OnTick beendet und auf den nächsten Tick gewartet. Es geht nicht weiter!!!!

Danke !!! Ich habe es herausgefunden, behoben und es funktioniert jetzt.

Es war nur eine Panne, die mir zu Kopf gestiegen ist.

 

Können Sie mir sagen, ob es möglich ist, einen Aufruf aus dem Expert Advisor zu machen

void OnTradeTransaction()

aus einer externen Datei aufzurufen?

Ich habe eine Testdatei *mqh erstellt und sie dort hinzugefügt.

void OnTradeTransaction(const MqlTradeTransaction &trans,

                        const MqlTradeRequest &request,

                        const MqlTradeResult &result)

  {

  }

Im Expert Advisor habe ich diese Datei hinzugefügt

#include <тест.mqh>

Aber OnTradeTransaction wird nicht vom Expert Advisor aufgerufen.

Wie kann ich es richtig machen?

 
TrederMT5 OnTradeTransaction Expert Advisor wird nicht ausgeführt.

Wie mache ich es richtig?

Ich würde das Gegenteil tun. Schreiben Sie in der .mqh-Datei eine Klasse, zum Beispiel CTest in der Datei test.mqh.

Verbinden Sie die Klasse

#include <test.mqh>
CTest onTest;


void CTest::MyOnTradeTransaction(const MqlTradeTransaction &trans,
                                 const MqlTradeRequest &request,
                                 const MqlTradeResult &result)

  {

  }

Und aus dem EA von der OnTradeTransaction Funktion meine Funktion aufrufen

/*********************TradeTransaction function**********************/
void OnTradeTransaction(const MqlTradeTransaction& trans,
                        const MqlTradeRequest& request,
                        const MqlTradeResult& result)
 {
      onTest.MyOnTradeTransaction(trans, request, result);
 }/******************************************************************/
 
Alexey Viktorov #:

Ich würde das Gegenteil tun. In die .mqh-Datei würde ich eine Klasse schreiben, zum Beispiel CTest in der Datei test.mqh.

Verbinden der Klasse


Und aus dem EA von der Funktion OnTradeTransaction meine Funktion aufrufen

Dankeschön
 

Ich habe mich mal an einen ersten einfachen EA gewagt und er funktioniert auch fehlerfrei.

Wenn ich ihn aber bei MQL im Markt hochlade bekomme ich die Fehlermeldung


Woran liegt das ? Liegt das am netting Account ?

Ich habe schon einige englischsprachige Forumsbeiträge dazu durchgelesen, aber ich verstehe das Problem nicht.

Das Volume wird vom EA fest vorgegeben. Auch 0,01 Lot etc. funktionieren nicht.
Wäre dankbar für jemanden der mir auf die Sprünge hilft.