Hilfe bei der Codierung - Seite 781

 
Bitte, werden Sie bereit sein zu helfen?

Ich habe diesen Indikator, der einige Werte beim Schließen der Kerze aktualisieren soll, aber er reagiert nicht früh genug, normalerweise 20-40 Sekunden nach dem Schließen der Kerze.

Können Sie helfen, das zu beheben?
Dateien:
 
Savior: Es wird angenommen, dass einige Werte beim Schließen der Kerze aktualisiert werden,

So etwas gibt es nicht. Eine Kerze gilt als geschlossen, wenn ein neuer Tick nach der letzten Sekunde der aktuellen Kerze eintrifft und eine neue Kerze beginnt.

Während der asiatischen Sitzung können Minuten zwischen den Ticks liegen (siehe M1-Chart). Größere Charts, z. B. am Wochenende oder an Feiertagen (länder- und maklerspezifisch) erfordern die Kenntnis der Start- und Endzeiten Ihres Maklers (die nicht unbedingt mit denen des Marktes übereinstimmen müssen).
Charts "Frei von Löchern" - MQL4 Artikel20. Juni 2006
Keine Kerze wenn open = close ? -MQL4 Programmierung Forum2010.06.06

Der Code läuft einmal pro Sekunde auf einem Timer und aktualisiert, wenn ein Symbol einen neuen Balken beginnt. Nichts falsch.

 

Hallo an alle -

Richten Sie einige anständige EA's mit EA Builder jedoch bin kämpfen, um eine mit Fraktale einrichten.

Angesichts Fraktale erscheinen als Mittelpunkt in 5-Candle-Serie, ich erwarte, dass ich möglicherweise immer die "Verschiebung" & Index falsch.

Ich versuche, einen einfachen Long zu erstellen (sobald ich den Shift/Index verstehe, kann ich die Parameter erhöhen)

Open, Fractal, Time Frame (Current), Indicator (Upper) Shift (3) 'is above' Candlestick, Index (3), Value (Low)

Die Idee ist, dass das Fraktal unter einer niedrigen Kerze liegt und bereit ist, einen Aufwärtstrend zu starten. Da die meisten zwei aktuellen Kerzen höhere Hochs haben, würde ich dies als Limit-Kauf bei einem Pullback nicht unter dem Fraktal verwenden

Ich wäre Ihnen sehr dankbar für Ihre Hilfe! Vielen Dank, David

 
  1. David-Toronto: Vielen Dank für Ihre Hilfe! Danke, David
    Wobei soll ich Ihnen helfen? Sie haben kein Problem genannt, Sie haben nicht einmal einen Wunsch geäußert?

  2. David-Toronto : Einige anständige EAs mit EA Builder einrichten
    EA Builder, EATree, Etasoft forex generator, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EABuilder, fxDreema, FxPro, Molanis, Online Forex Expert Advisor Generator, Strategy Builder FX, Strategy Quant, Visual Trader Studio, MQL5 Wizard, etc., sind alle das Gleiche. Sie werden schnell etwas bekommen, aber dann werden Sie viel mehr Zeit damit verbringen, es richtig hinzubekommen, als wenn Sie die Sprache im Voraus gelernt und es dann einfach geschrieben hätten.
    1. Da Sie MQL4/5 nicht gelernt haben, gibt es für uns keine gemeinsame Sprache zur Kommunikation.
      Wenn wir Ihnen sagen, was Sie brauchen, können Sie es nicht codieren.
      Wenn wir Ihnen den Code geben, wissen Sie nicht, wie Sie ihn in Ihr System integrieren können.
      Wir sind bereit, Ihnen zu HELFEN, wenn Sie uns Ihren Versuch (unter Verwendung von SRC) und die Art Ihres Problems mitteilen, aber wir werden nicht Ihre Hunderte von Codezeilen debuggen. Sie sind im Wesentlichen auf sich allein gestellt.

    2. EA-Builder macht schlechten Code, der beim Schließen mehrerer Aufträge mitzählt.
      EA Builder macht schlechten Code Bars ist unzuverlässig (Max Bars im Chart), Volumen ist unzuverlässig (Miss Ticks.) Verwenden Sie immer Zeit.
      EA builder macht schlechten Code, nicht die Anpassung für 4/5 Stelle Makler, TP / SL und Schlupf.
      EA-Builder macht schlechten Code, keine Anpassung für ECN-Broker. pre-Build 500)
      EA-Builder macht schlechten Code, keine
      Überprüfung der Return-Codes.

    3. EATree verwendet Objekte im Diagramm, um Werte zu speichern - keine dauerhafte Speicherung(Dateien oder GV+Flush.) Keine Wiederherstellung (Absturz/Stromausfall.)

    4. FX EA Builder macht schlechten Code, prüft Return Codes nicht.
      FX EA Builder macht fehlerhaften Code, verliert offene Tickets beim Neustart des Terminals. Keine Wiederherstellung (Absturz/Stromausfall).
      FX EA Builder macht fehlerhaften Code, passt Stops nicht an den Spread an.
      FX EA Builder macht fehlerhaften Code, indem er OrdersTotal direkt verwendet.

    5. FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, nicht aktualisierende globale Variablen.
      FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, Kompilierungsfehler.
      FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, nicht überprüfte Rückgabewerte.

    Lernen Siezuprogrammieren, oder bezahlen Sie jemanden (Freelancer), deres programmiert.
    Skript schreiben lassen - Allgemeines - MQL5 Programmierforum

 
William Roeder:
  1. Womit soll ich Ihnen helfen? Sie haben kein Problem genannt, Sie haben nicht einmal einen Wunsch geäußert?

  2. EA builder, EATree, Etasoft forex generator, Forex Strategy Builder, FOREXEADVISOR STRATEGY BUILDER, FX EABuilder, fxDreema, FxPro, Molanis, Online Forex Expert Advisor Generator, Strategy Builder FX, Strategy Quant, Visual Trader Studio, MQL5 Wizard, etc., sind alle das Gleiche. Sie werden schnell etwas bekommen, aber dann werden Sie viel mehr Zeit damit verbringen, es richtig hinzubekommen, als wenn Sie die Sprache im Voraus gelernt und es dann einfach geschrieben hätten.
    1. Da Sie MQL4/5 nicht gelernt haben, gibt es für uns keine gemeinsame Sprache zur Kommunikation.
      Wenn wir Ihnen sagen, was Sie brauchen, können Sie es nicht codieren.
      Wenn wir Ihnen den Code geben, wissen Sie nicht, wie Sie ihn in Ihren integrieren können.
      Wir sind bereit, Ihnen zu HELFEN, wenn Sie uns Ihren Versuch (unter Verwendung von SRC) und die Art Ihres Problems mitteilen, aber wir werden nicht Ihre Hunderte von Codezeilen debuggen. Sie sind im Wesentlichen auf sich allein gestellt.

    2. EA-Builder macht schlechten Code, der beim Schließen mehrerer Aufträge mitzählt.
      EA Builder macht schlechten Code Bars ist unzuverlässig (Max Bars im Chart), Volumen ist unzuverlässig (Miss Ticks.) Verwenden Sie immer Zeit.
      EA builder macht schlechten Code, nicht die Anpassung für 4/5 Stelle Makler, TP / SL und Schlupf.
      EA-Builder macht schlechten Code, keine Anpassung für ECN-Broker. pre-Build 500)
      EA-Builder macht schlechten Code, keine
      Überprüfung der Return-Codes.

    3. EATree verwendet Objekte im Chart, um Werte zu speichern - keine dauerhafte Speicherung(Dateien oder GV+Flush.) Keine Wiederherstellung (Absturz/Stromausfall.)

    4. FX EA Builder macht schlechten Code, prüft Return Codes nicht.
      FX EA Builder macht fehlerhaften Code, verliert offene Tickets beim Neustart des Terminals. Keine Wiederherstellung (Absturz/Stromausfall).
      FX EA Builder macht fehlerhaften Code, passt Stopps nicht an den Spread an.
      FX EA Builder macht fehlerhaften Code, indem er OrdersTotal direkt verwendet.

    5. FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, nicht aktualisierende globale Variablen.
      FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, Kompilierungsfehler.
      FOREXEADVISOR STRATEGY BUILDER macht fehlerhaften Code, nicht überprüfte Rückgabewerte.

    Lernen Siezuprogrammieren, oder bezahlen Sie jemanden (Freelancer), deres programmiert.
    Skript schreiben lassen - Allgemeines - MQL5 Programmierforum

Danke William, aber ich bin noch nicht bereit zu programmieren und brauche keinen Stein auf dem Kopf.

An jemanden, der mit EA Builder angefangen oder ihn benutzt hat, bitte nur antworten, wenn Sie helfen können. Danke


Die Frage ist, wie man einen Long-Trade (mit EA Builder) für ein Fraktal eröffnet, das oberhalb einer Kerze auftritt.

Mein Versuch ist es, Kaufaufträge zu erteilen, die nach jedem Auftreten eines Fraktals (oberhalb oder unterhalb einer Kerze) auftreten.

mit: Fraktal, Zeitrahmen (Aktuell), Indikator (Obere) Verschiebung (3) 'ist über' Candlestick, Index (3), Wert (Niedrig)

 

Guten Tag

Ich bin ziemlich neu in der Codierung und würde gerne etwas Hilfe bei einem Indikator, den ich versuche zu codieren. Ich bin im Grunde machen meine eigenen MA ein Band der offenen und schließen Werte von Bars, je nachdem, welche wo ist, dh wenn offen ist höher als schließen, ist es an der oberen Array gespeichert, sonst ist es in der unteren Array gespeichert. Ich habe ein gutes Stück der Fehlersuche auf einem EA ich schrieb getan, aber ich kann nicht das gleiche Ergebnis auf den Indikator, leider erhalten.

Dateien:
MA_Band.mq4  5 kb
 
  1. PLZFrosty: aber ich kann nicht das gleiche Ergebnis auf der Anzeige erhalten,

    "Funktioniert nicht" ist bedeutungslos - genau wie die Aussage, das Auto funktioniere nicht. Es springt nicht an, legt keinen Gang ein, hat keine Elektrik, der Schlüssel fehlt, die Reifen sind platt - sinnlos. Erwarten Sie wirklich eine Antwort? Wir sind hier keine Gedankenleser und unsere Kristallkugeln sind kaputt. Sie haben kein Problem genannt.

  2.       SetIndexBuffer(0, MA_top);
          ⋮
          SetIndexBuffer(1, MA_bot);
    
    Wie viele Puffer hat Ihr Indikator nach Ihren Angaben? Wenn Sie Ihre Rückgabecodes überprüft hätten, wüssten Sie warum.
    Programmeigenschaften (#property) - Präprozessor - Grundlagen der Sprache - MQL4-Referenz
 
William Roeder:
  1. "Funktioniert nicht" ist bedeutungslos - genau wie die Aussage, das Auto funktioniere nicht. Es springt nicht an, legt keinen Gang ein, hat keine Elektrik, der Schlüssel fehlt, die Reifen sind platt - sinnlos. Erwarten Sie wirklich eine Antwort? Wir sind hier keine Gedankenleser und unsere Kristallkugeln sind kaputt. Sie haben kein Problem genannt.

  2. Wie viele Puffer hat Ihr Blinker nach Ihren Angaben? Wenn Sie Ihre Rückgabewerte überprüft hätten, wüssten Sie warum.
    Programmeigenschaften (#property) - Präprozessor - Grundlagen der Sprache - MQL4 Referenz

Ich weiß, was es tun soll, aber ich weiß nicht, wie ich herausfinden kann, warum es nicht funktioniert. Ich habe die Funktion Comment verwendet, um herauszufinden, wo sie aufhört zu funktionieren, und festgestellt, dass sie an dem Punkt aufhört, an dem sie die Werte in die erwähnten Arrays setzen soll. Ich bitte um Hilfe bei der Fehlersuche, nicht darum, dass jemand das Problem für mich löst. Wenn Sie mir sagen, was ich übersehen oder falsch gemacht habe und wo ich die Lösung nachlesen kann, würde mir das sehr helfen. Danke für den Link. Wenigstens ist damit eines meiner Probleme gelöst. Gibt es einen effizienteren Weg als die Verwendung von Comment() zur Fehlersuche, wo der Code versagt hat?

Documentation on MQL5: Common Functions / Comment
Documentation on MQL5: Common Functions / Comment
  • www.mql5.com
[in]   Any values, separated by commas. To delimit output information into several lines, a line break symbol "\n" or "\r\n" is used. Number of parameters cannot exceed 64. Total length of the input comment (including invisible symbols) cannot exceed 2045 characters (excess symbols will be cut out during output). Data of double type are output...
 
PLZFrosty:

Ich weiß, was es tun soll, aber ich weiß nicht, wie ich herausfinden kann, warum es nicht funktioniert. Ich habe die Kommentarfunktion verwendet, um herauszufinden, wo es aufhört zu funktionieren, und festgestellt, dass es an dem Punkt aufhört, an dem es die Werte in die erwähnten Arrays setzen soll. Ich bitte um Hilfe bei der Fehlersuche, nicht darum, dass jemand das Problem für mich löst. Wenn Sie mir sagen, was ich übersehen oder falsch gemacht habe und wo ich die Lösung nachlesen kann, würde mir das sehr helfen. Danke für den Link. Wenigstens ist damit eines meiner Probleme gelöst. Gibt es einen effizienteren Weg als die Verwendung von Comment() zur Fehlersuche, wo der Code versagt hat?

Ich habe es irgendwie hinbekommen, aber ich habe keine Ahnung, warum es funktioniert und nicht andersherum. Ich habe einen kleinen Fehler in meiner Argumentation entdeckt und meine Funktion umgeschrieben. Sie zeigt mir immer noch nicht die Werte meines Arrays an, wenn ich Comment(DoubleToString(array[1], 3); verwende, aber sie zeichnet zumindest die MA-Linie. Gibt es eine Möglichkeit, dass ich meine Array-Werte anders als mit Comment() sehen kann?
 
input int SmallEMA = 50;
input int BigEMA = 100;
void OnTick()
  {
   string signal = "";
   double SmallMovingAvarage1 = iMA(Symbol(),PERIOD_CURRENT,SmallEMA,0,MODE_EMA,PRICE_CLOSE,0);
   double BigMovingAvarage1   = iMA(Symbol(),PERIOD_CURRENT,BigEMA,0,MODE_EMA,PRICE_CLOSE,0);
   
   if (BigMovingAvarage1 > SmallMovingAvarage1)
   
   {
   
      signal = "sell";
   }
   
   if (BigMovingAvarage1 < SmallMovingAvarage1)
    
   {
      signal = "buy";
   }
   
   
 
   if (signal == "sell" &&   OrdersTotal() == 0 )
   
   OrderSend(Symbol(),OP_SELL,0.02,Bid,10,0,0,NULL,0,0);
   
    
   
   if ( signal == "buy" && OrdersTotal() == 1)
   
   CloseSellPositions();
  
   
   
   if (signal == "buy" &&  OrdersTotal() == 0  )
   
    OrderSend(Symbol(),OP_BUY,0.02,Ask,10,0,0,NULL,0,0);
   
   //if (signal == "sell" && 0 <= OrdersTotal() <= 1)
   
   if (signal == "sell" && OrdersTotal() == 0)
   
   CloseBuyPositions();
    
   
   Comment ("The current signal is: ",signal);
   
   
  }


void CloseBuyPositions()
   {
   
   for(int i = OrdersTotal() -1 ; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_BUY)
      {
         
         OrderClose(OrderTicket(),0.02,Bid,10);
      }
   }
   
   
   }
void CloseSellPositions()
   {
   
   for(int i = OrdersTotal()- 1; i >= 1; i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      
      string CurrencyPair = OrderSymbol();
      
      if(Symbol() == CurrencyPair)
      
      if (OrderType () == OP_SELL)
      {
         OrderClose(OrderTicket(),0.02,Ask,10);
      }
    }
   } 

Hallo,


EMA (1) = 50

EMA (2) = 100


wenn (50 <100)

Offene Kaufposition schließen (falls vorhanden) und eine Verkaufsposition eröffnen


wenn (50> 100)


Schließen Sie die offene Verkaufsposition, falls vorhanden, und eröffnen Sie Kaufpositionen.


Ich möchte einen spezialisierten Berater entwickeln, der diese Bedingungen erfüllt, und habe den von mir geschriebenen Code weitergegeben. Aber es funktioniert nicht so, wie ich will.


Können Sie mir helfen, die fehlenden Teile in meinem Code zu vervollständigen?