Warum gibt es KEINEN vollständigen EA in der Code-Basis? - Seite 2

 

Ich bin ein bisschen besorgt über die gemeinsame Nutzung meiner benutzerdefinierten Indikatoren und EAs, weil, wenn ich tat und jeder begann mit ihnen sie nicht mehr funktionieren würde... Ist jemand anderer Meinung?

Ich weiß, das klingt ein bisschen egoistisch... aber wenn ich 5 Millionen erreicht habe, werde ich teilen ;-)

 

Das stimmt nicht.

Der Devisenmarkt ist genau der Ort, an dem Sie das tun WOLLEN, was die Mehrheit der Marktteilnehmer tut. Lange Zeit habe ich das nicht verstanden und wollte warmes Wasser erfinden, wo es nicht nötig war. Es stellte sich heraus, dass ich einen Freund brauchte, der mich darauf hinwies - warum gegen den Wind pissen?

Es stellte sich heraus, dass, wenn man sich sicher ist, dass jeder in der Devisenbranche das tut, was man tut, man das tun möchte, da sich der Markt sicher in Ihre Richtung bewegen wird. (tl;dr, wenn jeder geht lang in der Welt, Sie wollen zu gehen lang :) und umgekehrt).

Wie auch immer. Ich glaube nicht, dass der OP uns aufgefordert hat, unsere funktionierenden Indikatoren und EAs offen zu legen, in deren Entwicklung wir (in der Tat) unsere Zeit und unser Geld investiert haben. Was er meinte, war, dass die Dokumentation, das Buch und der Artikelabschnitt nicht gründlich genug waren und nicht ALLES erklärten, was ein MQL4-Programmierer wissen sollte. Um das zu verbessern, schlug OP vor, dass wir unsere grundlegenden Codeschnipsel teilen - die Art und Weise, wie wir Aufträge, Trennungen, Stringmanipulationen, Zahlenmanipulationen behandeln.... Grundlegende Dinge, die jeder von uns sonst für sich selbst programmiert.

Auf der ersten Seite hat WHRoeders seine Basisdatei veröffentlicht. Sie ist großartig. Schauen Sie es sich an. Im Grunde genommen ist es für MICH überflüssig, irgendetwas zu posten oder zu teilen :) da ist mehr drin, als die meisten von uns brauchen.

 
mbirrell:

Ich bin ein bisschen besorgt über die gemeinsame Nutzung meiner benutzerdefinierten Indikatoren und EAs, weil, wenn ich tat und jeder begann mit ihnen sie nicht mehr funktionieren würde... Ist jemand anderer Meinung?

Ich weiß, das klingt ein bisschen egoistisch... aber wenn ich 5 Millionen erreicht habe, werde ich teilen ;-)


Deshalb streicht man die Handelslogik heraus oder stellt Durchschnittssysteme zur Verfügung. Bei einem kompletten EA geht es nicht darum, den Leuten einen profitablen EA zu geben. Profitable EA's können plötzlich unprofitabel werden und umgekehrt. Ich bin in der Regel sehr motiviert, wenn ich an EAs für die breite Masse arbeite und nicht für mich selbst. Die einzige andere Denkweise, die mich mehr motiviert, ist, wenn ich für das Schreiben von EAs bezahlt werde. Ich würde mich jedoch nicht wohl dabei fühlen, von anderen Geld für die Programmierung zu verlangen, wenn ich keinen Standard-EA programmieren könnte.

Das Problem, das ich habe, wenn ich versuche, etwas zur Code-Basis beizutragen, ist, das Programm universell genug zu machen. Wie z.B. 4- oder 5-stellige Broker. Nicht anzunehmen, dass ich der einzige EA bin, den sie benutzen usw. Obwohl ich nicht alle Standards in meinen eigenen EA(s) implementiert habe, kann ich nicht in gutem Glauben offensichtliche Probleme übersehen, weil ich mir ihrer bewusst bin.

 
ok, hier ist ein Code-Schnipsel, der für mich sehr gut funktioniert. Er zeigt den durchschnittlichen wahren Bereich eines gleitenden Durchschnitts an - genau wie der reguläre ATR-Indikator erkennt er plötzliche Änderungen und auch, ob die Trendlinie trending.... ist. Bearbeiten Sie einfach den Abschnitt des ATR-Codes, der die ATR berechnet, mit diesem Code: Fügen Sie auch dies unter AtrPeriod ein: extern int MA_AtrPeriod=20;
i=Bars-counted_bars-1;
   while(i>=0)
     {
      double high=iMA(NULL,0,MA_AtrPeriod,8,MODE_SMMA,High,i);
      double low =iMA(NULL,0,MA_AtrPeriod,8,MODE_SMMA,Low,i);
      if(i==Bars-1) TempBuffer[i]=high-low;
      else
        {
         double prevclose=iMA(NULL,0,MA_AtrPeriod,8,MODE_SMMA,Close,i);
         TempBuffer[i]=MathMax(high,prevclose)-MathMin(low,prevclose);
        }
      i--;
     }
 
forexCoder:

Das stimmt nicht.

Der Devisenmarkt ist genau der Ort, an dem Sie das tun WOLLEN, was die Mehrheit der Marktteilnehmer tut. Lange Zeit habe ich das nicht verstanden und wollte warmes Wasser erfinden, wo es nicht nötig war. Es stellte sich heraus, dass ich einen Freund brauchte, der mich darauf hinwies - warum gegen den Wind pissen?

Es stellte sich heraus, dass, wenn man sich sicher ist, dass jeder im Devisenhandel das tut, was man tut, man das tun möchte, da sich der Markt sicher in Ihre Richtung bewegen wird. (tl;dr, wenn jeder geht lang in der Welt, Sie wollen zu gehen lang :) und umgekehrt).

Wie auch immer. Ich glaube nicht, dass der OP uns aufgefordert hat, unsere funktionierenden Indikatoren und EAs offen zu legen, in deren Entwicklung wir (in der Tat) unsere Zeit und unser Geld investiert haben. Was er meinte, war, dass die Dokumentation, das Buch und der Artikelabschnitt nicht gründlich genug waren und nicht ALLES erklärten, was ein MQL4-Programmierer wissen sollte. Um das zu verbessern, schlug OP vor, dass wir unsere grundlegenden Codeschnipsel teilen - die Art und Weise, wie wir Aufträge, Trennungen, Stringmanipulationen, Zahlenmanipulationen behandeln.... Grundlegende Dinge, die jeder von uns sonst für sich selbst programmiert.

Auf der ersten Seite hat WHRoeders seine Basisdatei veröffentlicht. Sie ist großartig. Schauen Sie es sich an. Im Grunde genommen ist es für mich überflüssig, irgendetwas zu posten oder zu teilen :) es ist mehr drin, als die meisten von uns brauchen.


Einige bestehen darauf, dass man sich im Forex-Einzelhandel in einem geschlossenen Markt befindet, der nur aus denjenigen besteht, die im Forex-Einzelhandel tätig sind, und dass es für jede Long-Position eine entgegengesetzte Short-Position geben muss. Wenn also alle auf die gleiche Weise handeln würden, würde Ihr Auftrag nicht ausgeführt werden, da es niemanden gäbe, der die entgegengesetzte Position einnehmen würde, oder, was wahrscheinlicher ist, wenn eine große Mehrheit auf die gleiche Weise handeln würde, würden Sie große Requotes erhalten.

 

> Einige bestehen darauf, dass man sich im Forex-Einzelhandel in einem geschlossenen Markt befindet, der nur aus denjenigen besteht, die im Forex-Einzelhandel handeln.

Dies könnte auf einen "Dealing Desk"-Broker zutreffen, bei dem der Broker seinen eigenen "internen Markt" bildet und immer gegen den Einzelhändler positioniert ist.
Mir ist jedoch kein Mainstream-Broker bekannt, der noch ein 'Dealing Desk' ist...

Und nein, wir nennen hier keine Namen, also fangen wir nicht an, über einzelne Broker zu diskutieren, aber seien Sie sich bewusst, ob Ihr Broker ein 'Dealing Desk' ist oder nicht!

-BB-

 
SDC:


Einige bestehen darauf, dass man sich im Forex-Einzelhandel in einem geschlossenen Markt befindet, der nur aus denjenigen besteht, die im Forex-Einzelhandel tätig sind, und dass es für jede Long-Position eine gegnerische Short-Position geben muss, so dass man, wenn alle auf die gleiche Weise handeln würden, seinen Auftrag nicht erfüllt bekäme, da es niemanden gäbe, der die gegnerische Position einnehmen würde, oder, was wahrscheinlicher ist, wenn eine große Mehrheit auf die gleiche Weise handeln würde, würde man große Requotes erhalten.


Ich habe es gelesen. Es ist wie das Newtonsche Gesetz der Ruhe im Devisenhandel.

Das bedeutet aber auch, dass, wenn alle Leute versuchen würden, in eine Richtung zu gehen, die Aufgabe unmöglich wäre, aber die Nachfrage danach (all diese Leute würden entweder long oder short gehen wollen) würde entweder einen unendlichen Preis für diese Ware (long gehen) oder einen Nullpreis (short gehen) erzeugen. In beiden Fällen käme es zu einem Marktzusammenbruch, was wir nicht wollen, aber ich nehme dieses Grenzbeispiel als Grundlage für meine Theorie, dass ich immer das tun möchte, was die Mehrheit der Spieler (gemessen am Handelsvolumen, nicht an der Anzahl der Teilnehmer) tun möchte.

 
WHRoeder:
Hier ist meine ohne die eigentliche Handelslogik.
Hallo William, ich hoffe, es macht Ihnen nichts aus, aber ich habe mir heute Ihren Code angesehen und habe eine Frage.

Wenn ich es richtig verstehe, behältst du die Equity at Risk ( ModifyStops() ) nicht nur für den Chart im Auge, auf dem der EA platziert ist (chart.at.risk), sondern auch für alle Aufträge, die auf allen Charts platziert werden (equity.at.risk) ? Bei der Berechnung des Eigenkapitals verwenden Sie eine Variable namens perLotPerPoint, die aus einer Funktion PointValuePerLot() stammt. Wenn ich mir diese Funktion ansehe, funktioniert sie nur für das aktuelle Chart-Symbol. . also bin ich ein wenig verwirrt, wie equity.at.risk korrekt sein kann?
 

Gut gefangen. Offensichtlich ist PointValuePerLot() für andere Paare nicht richtig und die Berechnung kann nicht korrekt sein.

Die Idee war, Margin Calls zu vermeiden, wenn mehrere Trades eröffnet werden (d.h. Grid Trading). Das Berechnungsergebnis wird in LotSize() mit AccountFreeMarginCheck() verwendet.

Dies wurde auf dasselbe Paar/andere Zeitrahmen und dann auf andere mögliche Paare erweitert.

Durch die Übergabe des Symbols wird die Funktion fixiert und die Variable ist keine Konstante mehr, muss also innerhalb der Schleife stehen.

 
Gut, danke für die Bestätigung.