Ist es möglich, drei Charts mit unterschiedlichen Zeitrahmen im EA zu verknüpfen? Auf der Grundlage der Indikatorwerte in zwei Charts wird ein Ort und ein Währungspaar für den Einstieg gefunden, und auf der Grundlage des letzten dritten Charts werden Einstieg, Stopp und Gewinn berechnet und eine Position zum Einstieg eröffnet. Ist dies technisch möglich? Oder müssen Sie einen Expert Advisor speziell für einen bestimmten Zeitrahmen erstellen, damit er in einem Chart funktioniert? Dazu müssen nicht nur die Werte von Balken, Ticks oder Candlesticks aus Charts verschiedener Zeitrahmen gezählt werden, sondern auch die Werte von mindestens zwei Indikatoren analysiert und auf der Grundlage dieser Daten eine Order eröffnet werden.
Ich war das Schreiben einer Funktion für die Erkennung von Flytrap und blieb in etwas, das ich nicht verstehe. if-Anweisung funktioniert nicht. vielleicht habe ich etwas falsch irgendwo geschrieben, ich möchte, dass Sie einen neuen Blick zu nehmen, weil ich nicht verstehe, warum. Ich habe sogar ein Video aus dem Debugger, der zeigt, dass die Werte gleich sind, aber es funktioniert nicht. bitte setzen Sie mein Gehirn wieder in place))))
{
int size = ArrayRange(arrayMinLow,0);
int digits = MarketInfo (symbol,MODE_DIGITS);
double spreadFlat = highLine - lowLine;
int directionFlat = -1;
int slew = 0;
for (int i = 0; i<size; i++){
double hl =arrayMinLow[i][0];
double ol = arrayMinLow[i][1];
double cl = arrayMinLow[i][2];
double ll = arrayMinLow[i][3];
if (hl == highLine || ol == highLine){ //вот тут не срабатываетif( directionFlat == -1 || directionFlat == 0)
slew++;
directionFlat = 1;
}elseif (cl == lowLine|| ll ==lowLine){
if( directionFlat == -1 || directionFlat == 1)
slew++;
directionFlat = 0;
}
}
if(slew >=4 )
returntrue;
returnfalse;
}
Deniskaaa: Ist es möglich, drei Charts mit unterschiedlichen Zeitrahmen im EA zu verknüpfen? Auf der Grundlage der Indikatorwerte in zwei Charts wird ein Ort und ein Währungspaar für den Einstieg gefunden, und auf der Grundlage des letzten dritten Charts werden ein Einstiegspunkt, ein Stopp und ein Gewinn berechnet und eine Position für den Einstieg eröffnet. Ist dies technisch möglich? Oder müssen Sie einen EA speziell für einen bestimmten Zeitrahmen erstellen, um in einem Chart zu arbeiten? Wir sollten nicht nur die Werte von Balken, Ticks oder Candlesticks aus Charts verschiedener Zeitrahmen zählen, sondern die Werte von mindestens zwei Indikatoren analysieren und eine Order auf der Grundlage des dritten Indikators eröffnen.
Alles ist möglich! Siehe Dokumentation oder Hilfe in MetaEditor!
Hallo, ich war das Schreiben einer Funktion für die Erkennung von flytags und blieb in etwas, das ich nicht verstehe. if-Anweisung funktioniert nicht. vielleicht schrieb ich etwas falsch irgendwo, ich möchte, dass Sie einen neuen Blick zu nehmen, weil ich nicht verstehe, warum. Ich habe sogar ein Video aus dem Debugger, zeigt, dass die Werte gleich sind, aber es funktioniert nicht. bitte setzen Sie mein Gehirn in den Ort der))))
Code:
bool checkLine(double highLine , double lowLine, double &arrayMinLow[][5] ) { int size = ArrayRange(arrayMinLow,0); int digits = MarketInfo (symbol,MODE_DIGITS);
double spreadFlat = highLine - lowLine;
int directionFlat = -1; int slew = 0; for (int i = 0; i<size; i++){ double hl =arrayMinLow[i][0]; double ol = arrayMinLow[i][1]; double cl = arrayMinLow[i][2]; double ll = arrayMinLow[i][3];
if (hl == highLine || ol == highLine){ //вот тут не срабатывает
Ich werde es ausprobieren. Aber ich fürchte, dass es zum Beispiel bei Wochenstäben nicht funktioniert.
Können Sie mir bitte sagen, wo ich ein Codebeispiel finden kann, das die Indikatorlinie in verschiedenen Farben malt?
So viele Farben, so viele Puffer! Solange sich die Farbe ändert, ändern Sie den Puffer! Jede Menge Beispiele in CodeBase!
{ int size = ArrayRange(arrayMinLow,0); int digits = MarketInfo (symbol,MODE_DIGITS); double spreadFlat = highLine - lowLine; int directionFlat = -1; int slew = 0; for (int i = 0; i<size; i++){ double hl =arrayMinLow[i][0]; double ol = arrayMinLow[i][1]; double cl = arrayMinLow[i][2]; double ll = arrayMinLow[i][3]; if (hl == highLine || ol == highLine){ //вот тут не срабатывает if( directionFlat == -1 || directionFlat == 0) slew++; directionFlat = 1; }else if (cl == lowLine|| ll ==lowLine){ if( directionFlat == -1 || directionFlat == 1) slew++; directionFlat = 0; } } if(slew >=4 ) return true; return false; }Videolink https://www.youtube.com/watch?v=k9Zo0SgrMCA
Ist es möglich, drei Charts mit unterschiedlichen Zeitrahmen im EA zu verknüpfen? Auf der Grundlage der Indikatorwerte in zwei Charts wird ein Ort und ein Währungspaar für den Einstieg gefunden, und auf der Grundlage des letzten dritten Charts werden ein Einstiegspunkt, ein Stopp und ein Gewinn berechnet und eine Position für den Einstieg eröffnet. Ist dies technisch möglich? Oder müssen Sie einen EA speziell für einen bestimmten Zeitrahmen erstellen, um in einem Chart zu arbeiten? Wir sollten nicht nur die Werte von Balken, Ticks oder Candlesticks aus Charts verschiedener Zeitrahmen zählen, sondern die Werte von mindestens zwei Indikatoren analysieren und eine Order auf der Grundlage des dritten Indikators eröffnen.
Hallo, ich war das Schreiben einer Funktion für die Erkennung von flytags und blieb in etwas, das ich nicht verstehe. if-Anweisung funktioniert nicht. vielleicht schrieb ich etwas falsch irgendwo, ich möchte, dass Sie einen neuen Blick zu nehmen, weil ich nicht verstehe, warum. Ich habe sogar ein Video aus dem Debugger, zeigt, dass die Werte gleich sind, aber es funktioniert nicht. bitte setzen Sie mein Gehirn in den Ort der))))
Code:
{
int size = ArrayRange(arrayMinLow,0);
int digits = MarketInfo (symbol,MODE_DIGITS);
double spreadFlat = highLine - lowLine;
int directionFlat = -1;
int slew = 0;
for (int i = 0; i<size; i++){
double hl =arrayMinLow[i][0];
double ol = arrayMinLow[i][1];
double cl = arrayMinLow[i][2];
double ll = arrayMinLow[i][3];
if (hl == highLine || ol == highLine){ //вот тут не срабатывает
if( directionFlat == -1 || directionFlat == 0)
slew++;
directionFlat = 1;
}else if (cl == lowLine|| ll ==lowLine){
if( directionFlat == -1 || directionFlat == 1)
slew++;
directionFlat = 0;
}
}
if(slew >=4 )
return true;
return false;
}