Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools
Zurück   Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools > Metatrader 5 > Programmierung MQL5 > Codeschnipsel

Codeschnipsel Codeschnipsel für MQL5.


Portalsuche


Werbung

Login
Benutzername:
Kennwort:


Statistik
Themen: 3359
Beiträge: 33848
Benutzer: 5.342
Aktive Benutzer: 599
Links: 79
Wir begrüßen unseren neuesten Benutzer: maxi
Mit 483 Benutzern waren die meisten Benutzer gleichzeitig online (21.04.16 um 17:12).
Neue Benutzer:
vor 5 Stunden
- maxi
vor 20 Stunden
- athaclena
vor einem Tag
- Naale
vor einem Tag
- csabi911
vor einem Tag
- Adlerflüge...

Onlineuser
'Wer ist online' anzeigen Benutzer: 3
Gäste: 34
Gesamt: 37
Team: 0
Team:  
Benutzer:  fxnoob, Naale, SentiTrader
Freunde anzeigen

Empfehlungen

Werbung

Antwort
 
Themen-Optionen Thema durchsuchen Ansicht
  #1 (permalink)  
Alt 23.10.16
Benutzerbild von Kronenchakra
Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 110
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard Code Snippets - AccountExpertAllowed

Vorerst herzlichen Dank an den Admin, der hier ein neues Kapitel aufgetan hat!

Die Abfrage ob auf einem Account maschinelles handeln erlaubt ist oder nicht, ist natürlich bei einem EA auch wichtig und informiert den Anwender.

Ich denke, das ist auch ein gutes Beispiel mit wenig Code logische Werte umzudrehen, um dann das Programm leichter lesbar zu gestalten.

Diesen Code zB. in die 'MyUtils.mqh' einfügen:

Code:
string AccountString()
{
   return(AccountInfoString (ACCOUNT_COMPANY)+" | "+
          AccountInfoString (ACCOUNT_SERVER )+" | "+
          AccountInfoString (ACCOUNT_NAME   )+" | "+
  (string)AccountInfoInteger(ACCOUNT_LOGIN  ));
}

bool AccountExpertAllowed()
{
   if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED)) 
      { 
         Alert("Autotrading in the terminal is disabled, Expert Advisor will be removed.");
         return(false); 
      }
   if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED))
      {
         Alert(AccountString()+" | Error: Trading not allowed.");
         return(false); 
      }
   if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT))
      {
         Alert(AccountString()+" | Error: Experts not allowed.");
         return(false); 
      }
   return(true);
}

bool AccountExpertForbidden()
{
   return(!AccountExpertAllowed());
}
AccountString() kann man natürlich auch einfacher gestalten.

Und so wird's verwendet:
Code:
int OnInit()
  {
   if(AccountExpertForbidden())
      {
         ExpertRemove();
         return(INIT_FAILED);
      }   
//.......
    return(INIT_SUCCEEDED);
   }
Anmerkung: Sämtliche Bibliotheksfunktionen die ich hier poste sind relativ jung.
Da können sich natürlich auch Fehler einschleichen.
Jeder der hier Fehler findet oder Verbesserungsvorschläge hat, ist herzlich dazu eingeladen diese zu posten.

Liebe Grüße und evtl. kann's jemand brauchen.
Mit Zitat antworten
  #2 (permalink)  
Alt 27.10.16
Mitglied
 
Registriert seit: Aug 2014
Beiträge: 40
marquez befindet sich auf einem aufstrebenden Ast
Standard

Bist Du Dir eigentlich sicher, dass nach dem Expertremove Dein return(INIT_FAILED) überhaupt noch ausgeführt wird ?

Und ich hab mir angewöhnt als bsp. nicht immer alles direkt als Alert auszugeben, sondern per Input vom Indi / EA eine Option einzubauen, ob das ganze als Alert oder Print ausgegeben werden soll.

Bsp:
Wenn Du Deine Routine nimmst, den Expert enabled hast (also trade allowed), dann 10 Währungspaare nutzt, die Abfrage im Init kommt, Du aber vorm beenden vom MT Dein allowed abschaltest. Danach den MT startest ohne dass dann allowed aktiv ist, hauen Dir alle 10 Assets einen Alarm um die Ohren !
Mit Zitat antworten
  #3 (permalink)  
Alt 27.10.16
Benutzerbild von Kronenchakra
Mitglied
 
Registriert seit: Feb 2016
Ort: 2100 Österreich
Beiträge: 110
Kronenchakra befindet sich auf einem aufstrebenden Ast
Standard

Ja das stimmt!
Alert ist halt die wirkungsvollste Art mich zu informieren, daß was nicht passt.
Es sind ja Codebeispiele die jeder seinen Bedürfnissen anpasssen kann.
Das wesentlich hier ist ja die Abfrage der Einstellungen.
Ich trage hier so Schnipsel zusammen, nach denen ich oft lange gesucht habe,
oder zufällig darauf gestoßen bin.
Danke für das Feedback
Liebe Grüße
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
accountexpertallowed, codeschnipsel, codeschnipsel mql5, programmierung, programmierung metatrader


Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus




Alle Zeitangaben in WEZ +1. Es ist jetzt 15:16 Uhr.



-----------------------------------------------------------------------------------------------------------------------------
Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.
Powered by vBCMS® 2.7.0 ©2002 - 2016 vbdesigns.de
SEO by vBSEO 3.6.1
Copyright ©2009 - 2016 by Expert-Advisor.com - Das Metatrader Forum
MetaTrader bzw. MetaTrader 4 und MetaTrader 5 sind eingetragene Marken der MetaQuotes Software Corp.
-----------------------------------------------------------------------------------------------------------------------------