Wie programmiert man? - Seite 53

 

Versuchen Sie das...

Setzen Sie

double ma_cross;[/CODE] as a global variable.

In the start function :

[CODE]

double ma1=NormalizeDouble(first_ma,Digits);

double ma2=NormalizeDouble(second_ma,Digits);

if(ma1=ma2)

{

ma_cross=ma1;

}

int spread=MarketInfo(Symbol(), MODE_SPREAD);

SLbuy=ma1+spread-SL*Point;

SLsell=ma1+SL*Point;

Hoffentlich hilft das

 

Schließen/Öffnen von Trades bei inversem Signal

Ich habe hier ein kleines Problem:

In meinem EA habe ich eine BuyCondition und Sell Condition und eine Close Order bei inversen Signalen. Um das Öffnen und Schließen von Trades innerhalb desselben Balkens zu verhindern, habe ich folgenden Code:

if(OneEntryPerBar==true)

{

if(CheckEntryTime==iTime(NULL,PERIOD_H1,0)) return(0); else CheckEntryTime = iTime(NULL,PERIOD_H1,0);

}

Alles in Ordnung. Aber wenn er jetzt während eines offenen Kaufgeschäfts eine Verkaufsbedingung feststellt, schließt er das Kaufgeschäft, was in Ordnung ist. Aber er öffnet den Verkauf nicht, da der obige Code dies verhindert.

Irgendeine Idee, wie ich ihn dazu bringen kann, innerhalb von 1 Bar zu schließen und zu öffnen... aber nur einmal pro Bar?

Ich hoffe, ich habe mich verständlich ausgedrückt.

Danke

 

Schließen und Stornieren zu einer bestimmten Zeit?

Kann mir jemand dabei helfen, einen EA einzurichten, der zu einer bestimmten Uhrzeit, z.B. 5:15 Uhr UTC+1, alle offenen Aufträge schließt und alle schwebenden Aufträge storniert?

Ist es auch möglich, nicht nur die Uhrzeit, sondern auch das Datum anzugeben?

 
dxtrade:
Ich habe hier ein kleines Problem:

In meinem EA habe ich eine BuyCondition und Sell Condition und einen Close Order für inverse Signale. Um das Öffnen und Schließen von Trades innerhalb desselben Balkens zu verhindern, habe ich den folgenden Code:

if(OneEntryPerBar==true)

{

if(CheckEntryTime==iTime(NULL,PERIOD_H1,0)) return(0); else CheckEntryTime = iTime(NULL,PERIOD_H1,0);

}

Alles in Ordnung. Wenn er nun aber während eines offenen Kaufgeschäfts eine Verkaufsbedingung feststellt, schließt er das Kaufgeschäft, was in Ordnung ist. Aber er öffnet den Verkauf nicht, da der obige Code dies verhindert.

Irgendeine Idee, wie ich ihn dazu bringen kann, innerhalb von 1 Bar zu schließen und zu öffnen... aber nur einmal pro Bar?

Ich hoffe, ich habe mich verständlich ausgedrückt.

Danke

er öffnet sich nicht wegen des Codes, den Sie oben verwenden... bis zur nächsten Stunde...

Sie können dies versuchen..

if (OrderOpenTime() >= iTime(NULL, PERIOD_H1, 0)) order++;

wenn (Bestellung < 1)

{

Auftragsbedingungen

}

hoffe das hilft.. bin kein Experte.. aber dieser Code hält nicht davon ab es mehr als einmal zu tun..

 

Hilfe Ich Ea

Ich spreche kein Englisch, ich möchte Maxtrade und Risk hinzufügen. Können Sie mir helfen?

Dankeschön

Dateien:
zero.mq4  10 kb
 
wasanmyza:
I Don't Speak English, I want to add Maxtrade And Risk Do you help me Thankyou

Hallo,

Sie haben andere Probleme mit diesem EA. Sie geben an, dass Sie einen Kauf oder Verkauf tätigen möchten, wenn VAR1, VAR2 oder VAR3 bestimmte Werte erreicht oder überschritten hat.

Sie müssen zuerst definieren, was VAR1, 2 und 3 ist? Ein Indikator mit spezifischen Einstellungen?

Vielen Dank!

StrangeGuy

 

Gewinn mitnehmen, alle anderen Aufträge löschen

Weiß jemand, wie man codiert, dass, sobald die offene Order das Gewinnziel erreicht hat, der Rest der schwebenden Orders gelöscht wird? Es ist anders als bei oco. Ich habe im Elite-Bereich nachgesehen, aber nichts gefunden.

 

Frage

Ich verstehe den Unterschied von zwei Programmen nicht, aber würde es lehren?

int limit = Bar-IndicatorCounted();

int i ;

for( i=limit-1; i>=0; i--)

int gezählte_Balken=IndicatorCounted();

//---- Prüfung auf mögliche Fehler

if(gezählte_Balken<0) return(-1);

//---- zuletzt gezählte Balken werden neu gezählt

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-gezählt_Balken;

for(i = 0; i <= limit; i++)

 
nakata79087:
Ich verstehe den Unterschied der beiden Programme nicht, aber würde es lehren?

int limit = Bar-IndicatorCounted();

int i ;

for( i=Limit-1; i>=0; i--)

int gezählte_Balken=IndicatorCounted();

//---- Prüfung auf mögliche Fehler

if(gezählte_Balken<0) return(-1);

//---- zuletzt gezählte Balken werden neu gezählt

if(gezählte_Balken>0) gezählte_Balken--;

limit=Balken-gezählte_Balken;

for(i = 0; i <= limit; i++)

Der wichtigste Unterschied ist die Richtung der "for"-Schleife:

Die erste Schleife scannt die Balken nach der natürlichen Zeit, d.h. vom ältesten zum neuesten Balken.

Die zweite scannt die Balken in der entgegengesetzten Richtung: Das kann funktionieren, wenn die Berechnung eines Balkens nicht das Ergebnis des vorherigen Balkens beinhaltet;

Im Allgemeinen ist es besser, die gleiche Richtung wie die Zeit zu verwenden: Es funktioniert immer und es gibt keine Verwechslungsmöglichkeiten.

 

Ich danke Ihnen

vielen Dank für die netten Worte, Michel!!!

Ich war lange Zeit beunruhigt, warum es eine andere Signatur anfängt, obwohl das zwei kleine Unterschiede sind.