Fragen Sie! - Seite 115

 
TheRumpledOne:
Gibt es einen einfacheren Weg, um die Bar-Nummer des heutigen Hochs und Tiefs zu finden?

today_high = High[0];

heute_tief_ = Tief[0];

Finde die Bar-Nummer für den heutigen Tag. Die 0 bedeutet heute. Auf D1 natürlich.

Wenn Sie auf anderen TF sind:

today_high = iHigh(Symbol(),PERIOD_D1,0);

heute_tief = iTief(Symbol(),PERIOD_D1,0);

FerruFx

 
TheRumpledOne:
Ich möchte wissen, welche Bar das höchste Hoch und niedrigste Tief für heute auf H1 oder weniger Zeiträume aufgetreten.

Ich weiß, dass ich eine for-Schleife verwenden und prüfen kann.

Gibt es einen eleganteren Weg, dies zu tun?

Gibt es eine Funktion für den ersten Balken des heutigen Tages?

Danke.

datetime some_time_start_day=D'0000.00.00 00:00';

datetime some_time_end_day=D'0000.00.00 00:00';

int shiftStart=iBarShift(NULL,PERIOD_M1,some_time_start_day);

int shiftEnd=iBarShift(NULL,PERIOD_M1,some_time_end_day);

double valH=High;

double valL=Low;

nichts einfacher als das... ps. Ich dachte, die Frage war, finden Sie die Bars auf einem niedrigeren Zeitrahmen, sonst einfach tun, was FerruFx erklärt nehmen von D1

.

 

Lieber Codersguru,

Ich brauche ea, die ein Kinderspiel für Sie sein sollte,

es schließen alle offenen Positionen (für bestimmte Paar), wenn 2 MA gekreuzt.

Natürlich, wenn schnellere MA gekreuzt unten langsamer MA es schließen lange Position,

Umgekehrt.

Variabeln :

- Schneller MA-Typ

- Schnellerer MA-Wert

- Langsamer MA-Typ

- Langsamer MA-Wert

- TimeFrame (wir können den Zeitrahmen festlegen, ohne dass es zu Störungen kommt

wenn wir zwischen Zeitrahmen-Grafikfenstern wechseln)

Ich habe versucht, MA gekreuzt EA geändert, aber immer fehlgeschlagen.

Vielen Dank für Ihre Freundlichkeit.

 
IN10TION:
datetime some_time_start_day=D'0000.00.00 00:00';

datetime some_time_end_day=D'0000.00.00 00:00';

int shiftStart=iBarShift(NULL,PERIOD_M1,some_time_start_day);

int shiftEnd=iBarShift(NULL,PERIOD_M1,some_time_end_day);

double valH=High;

double valL=Low;

nichts einfacher als das... ps. Ich dachte, die Frage war, die Bars auf einem niedrigeren Zeitrahmen zu finden, sonst einfach tun, was FerruFx erklärt nehmen von D1

.

Danke!

Ich denke, es gibt keinen einfacheren Weg.

Ich dachte, es gäbe vielleicht ein Schlüsselwort/Reservewort für BarStartOfDay oder so.

 
IN10TION:
iBarShift findet für Sie den Bar, der an diesem Tag beginnt oder auch den Endbar für diesen Tag.

int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)

weiter...

diese Balkenpositionen verwenden, um die Ergebnisse von iHighest und iLowest zu ermitteln

int iHighest( string symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)

int iLowest( string symbol, int timeframe, int type, int count=WHOLE_ARRAY, int start=0)

ergebnisse & fertig

Hier ist, warum ich das wissen wollte:

https://www.mql5.com/en/forum/178406/page8

 

Hallo!

Zunächst einmal vielen Dank im Voraus für Ihre Hilfe!

Ich versuche zu sehen, ob es eine Möglichkeit gibt, mehrere Threads in einem Expert Advisor zu verwenden, wie Sie in C++ können.

Der Grund dafür ist, dass ich Nachrichtenhandel betreibe und mehrere Aufträge zur gleichen Zeit senden muss. Zum Beispiel muss ich 3 Aufträge GBP/USD, USD/CAD, EUR/USD platzieren, sobald die Daten eintreffen. Mein Problem ist nun, dass ich die reguläre OrderSend-Funktion dreimal verwenden muss, da sie die Aufträge nicht gleichzeitig, sondern schrittweise sendet.

OrderSend("GBPUSD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

OrderSend("USDCAD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

OrderSend("EURUSD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

Ich bin mir sicher, dass dies irgendwie möglich ist, denn wenn ich 3 separate MT4-Kauf-/Verkaufsfenster öffne und sie alle gleichzeitig anklicke (unter Verwendung eines Nachrichtenhandelsprogramms), werden die Aufträge alle im gleichen Moment gesendet und kommen viel schneller an. Wenn Sie es so machen, erscheinen die Aufträge alle auf einmal, im Gegensatz zu meinem EA mit 3 OrderSend-Aufrufen, sie erscheinen nacheinander.

Gibt es eine Möglichkeit, mehrere laufende Threads in einem EA einzurichten, oder gibt es vielleicht eine Art von Batch OrderSend?

Vielen Dank!

Cole

 
ColeFlournoy:
Hallo!

Zuerst einmal vielen Dank im Voraus für Ihre Hilfe!

Ich versuche zu sehen, ob es eine Möglichkeit gibt, mehrere Threads in einem Expert Advisor zu verwenden, wie Sie in C++ können.

Der Grund dafür ist, dass ich Nachrichtenhandel betreibe und mehrere Aufträge zur gleichen Zeit senden muss. Zum Beispiel muss ich 3 Aufträge GBP/USD, USD/CAD, EUR/USD platzieren, sobald die Daten eintreffen. Mein Problem ist nun, dass ich die reguläre OrderSend-Funktion dreimal verwenden muss, da sie die Aufträge nicht gleichzeitig, sondern schrittweise sendet.

OrderSend("GBPUSD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

OrderSend("USDCAD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

OrderSend("EURUSD",OP_BUY,0.01,ask,5,ask-25*point,ask+25*point, "Cole",11111,0,Red);

Ich bin mir sicher, dass dies irgendwie möglich ist, denn wenn ich 3 separate MT4-Kauf-/Verkaufsfenster öffne und sie alle gleichzeitig anklicke (unter Verwendung eines Nachrichtenhandelsprogramms), werden die Aufträge alle im gleichen Moment gesendet und kommen viel schneller an. Wenn Sie es so machen, erscheinen die Aufträge alle auf einmal, im Gegensatz zu meinem EA mit 3 OrderSend-Aufrufen, sie erscheinen nacheinander.

Gibt es eine Möglichkeit, mehrere laufende Threads in einem EA einzurichten, oder gibt es vielleicht eine Art von Batch OrderSend?

Vielen Dank!

Cole

Auf jeden Fall wird Ihre Plattform nicht mehrere Aufträge zur gleichen Zeit senden.

FerruFx

 

FerruFX - Ich bin nicht sicher, ob ich verstehe, was Sie sagen wollen?

Danke!

Cole

 
IN10TION:
Haben Sie bereits einen Code für diesen Zweck, den Sie begonnen haben?

in einer mq4-Datei?

Das erste, was Sie brauchen, ist die Bestätigung doji/inside = ja oder nein

je nach Ihren Einstellungen wird vor dem Doji/Inside gesucht oder gewartet

wenn es 2 Bars wartet, muss es die Orders entscheiden, abhängig vom Hoch oder Tief der vorherigen Bar...

Nun können Sie mit der Programmierung beginnen

haben Sie einen Code, um die Doji's oder Insider zu finden?

...

Hallo IN10TION,

Hier ist der Code, den ich verwende (nicht mein Code), um den Inside Bar zu finden.

}

int IsInsideBar(int shift) {

//Inside Bar, Der Close des Inside Bar sollte höher sein als der Close und der Bar Midpoint Der aktuelle Bar muss öffnen

//gleich oder höher als der Schluss des inneren Balkens sein, eine BuyStop-Order muss beim Höchststand des inneren Balkens platziert werden, wenn die Order

//nicht innerhalb der nächsten 4 Takte erreicht wird, wird die Order storniert. Siehe Abbildung unten

if (High[shift]>High[shift+1]) return(0);

if (Low[shift]<Low[shift+1]) return(0);

if (Close[shift]>Open[shift] && Close[shift]>(High[shift]+Low[shift])/2 && Open[shift-1]>=Close[shift]) return(1);

if (Close[shift]<Open[shift] && Close[shift]<(High[shift]+Low[shift])/2 && Open[shift-1]<=Close[shift]) return(-1);

return(false);

}

Meine Frage ist nun:

Wenn ich einen Kauf-Stopp und einen Verkauf-Stopp beim Hoch und Tief des nächsten Balkens platzieren möchte, dem Balken, der auf den Inside Bar folgt... wie würde der Code lauten?

Vielen Dank für die Hilfe...

forexcel

 
IN10TION:
Ich bin ganz Ohr, können Sie mir eine private Nachricht senden oder bringen Sie es in der Öffentlichkeit... wenn Ihre Indikatoren sind gut codiert Ihre Fertigstellung EA ist nicht so weit weg.

Gidday In10tion

Beigefügt ist das Bild von dem, was ich bin Handel.

Ich verwende diese 4 Indikatoren

Verkaufssignal

1: Slow Stochastic K% Crossed D% über 80 und umgekehrt für Buy unter 20

2: QQE RSI gekreuzt unter ATR und umgekehrt für Buy

3: CCI Crosses unter 0 und umgekehrt für Buy

4: MACD ma's gekreuzt und 1 bar gebildet unter 0 und umgekehrt für Buy

Wenn 3 dieser Bedingungen erfüllt sind, dann eröffnen Sie eine Position, z.B. Stoch Feuersignal 5 Minuten später MACD dann 20 Minuten CCI Feuersignal = Position eröffnen.

oder beliebige Kombinationen der oben genannten Bedingungen, solange sie in dieselbe Richtung wie der Slope-Indikator gehen.

Bildschirmfoto beigefügt

Mit freundlichen Grüßen

Dateien:
bones.gif  54 kb